private void ListViewMouseDoubleClickEventManager(ListView senderListView)
        {
            if (senderListView.SelectedItems.Count > 0)
            {
                MetricProperties metricProperties;

                DataGridView        sourceDataGridView    = (DataGridView)senderListView.Tag;
                string              codeElementName       = sourceDataGridView.SelectedRows[0].Cells[0].Value.ToString();
                DataTable           metricsDataTable      = (DataTable)sourceDataGridView.DataSource;
                DataGridViewTagInfo dataGridViewTagInfo   = ((DataGridViewTagInfo)sourceDataGridView.Tag);
                DataGridView        assembliesDatagrid    = GetAssebliesDataGridView(sourceDataGridView);
                string              assemblyName          = assembliesDatagrid.SelectedRows[0].Cells[0].Value.ToString();
                string              parentCodeElementName = dataGridViewTagInfo.LinkedDataGrids.ParentDataGridView == null ?
                                                            ((IAssembly)codeElementsManager.CodeBase.Assemblies.WithName(assemblyName).First()).VisualStudioProjectFilePath.FileName :
                                                            dataGridViewTagInfo.LinkedDataGrids.ParentDataGridView.SelectedRows[0].Cells[0].Value.ToString();

                ListViewItem lvi = senderListView.SelectedItems[0];
                if (lvi.Tag.GetType() == typeof(NDependMetricDefinition))
                {
                    NDependMetricDefinition nDependMetricDefinition = (NDependMetricDefinition)lvi.Tag;
                    metricProperties = new MetricProperties(
                        nDependMetricDefinition,
                        codeElementName,
                        metricsDataTable,
                        parentCodeElementName,
                        assemblyName,
                        nDependProject);
                }
                else
                {
                    UserDefinedMetricDefinition userDefinedMetricDefinition = (UserDefinedMetricDefinition)lvi.Tag;
                    metricProperties = new MetricProperties(
                        userDefinedMetricDefinition,
                        codeElementName,
                        metricsDataTable,
                        parentCodeElementName,
                        assemblyName,
                        nDependProject);
                }

                metricProperties.Show();
            }
        }
Ejemplo n.º 2
0
        public MetricProperties(
            UserDefinedMetricDefinition userDefinedMetricDefinition,
            string codeElementName,
            DataTable selectedCodeElementMatricsDataTable,
            string parentCodeElementName,
            string assemblyName,
            IProject nDependProject)
            : this(codeElementName, selectedCodeElementMatricsDataTable, parentCodeElementName, assemblyName, nDependProject)
        {
            this.metricDefinitionType        = MetricDefinitionType.UserDefinedMetric;
            this.userDefinedMetricDefinition = userDefinedMetricDefinition;
            this.codeElementType             = userDefinedMetricDefinition.NDependCodeElementType.Split('.').Last <string>().Substring(1);
            this.metricResumedName           = userDefinedMetricDefinition.ResumedMetricName;
            this.metricFullName    = userDefinedMetricDefinition.MetricName;
            this.metricDescription = userDefinedMetricDefinition.Description;
            this.metricType        = userDefinedMetricDefinition.MetricType;

            FillControls();
        }
        public List <double> GetUserDefinedMetricFromAllCodeElementsInAssembly(UserDefinedMetricDefinition userDefinedMetricDefinition, string assemblyName)
        {
            string codeElementType = userDefinedMetricDefinition.NDependCodeElementType;

            switch (codeElementType)
            {
            case "NDepend.CodeModel.IAssembly":
                return(null);

            case "NDepend.CodeModel.INamespace":
                return((from m in codeBaseToStudy.Assemblies.WithName(assemblyName).ChildNamespaces()
                        select InvokeUserDefinedMetric(m.Name, userDefinedMetricDefinition.MethodNameToInvoke)).ToList());

            case "NDepend.CodeModel.IType":
                return((from m in codeBaseToStudy.Assemblies.WithName(assemblyName).ChildTypes()
                        select InvokeUserDefinedMetric(m.Name, userDefinedMetricDefinition.MethodNameToInvoke)).ToList());

            case "NDepend.CodeModel.IMethod":
                return((from m in codeBaseToStudy.Assemblies.WithName(assemblyName).ChildMethods()
                        select InvokeUserDefinedMetric(m.Name, userDefinedMetricDefinition.MethodNameToInvoke)).ToList());
            }
            return(null);
        }
 public List<double> GetUserDefinedMetricFromAllCodeElementsInAssembly(UserDefinedMetricDefinition userDefinedMetricDefinition, string assemblyName)
 {
     string codeElementType = userDefinedMetricDefinition.NDependCodeElementType;
     switch (codeElementType)
     {
         case "NDepend.CodeModel.IAssembly":
             return null;
         case "NDepend.CodeModel.INamespace":
             return (from m in codeBaseToStudy.Assemblies.WithName(assemblyName).ChildNamespaces()
                     select InvokeUserDefinedMetric(m.Name, userDefinedMetricDefinition.MethodNameToInvoke)).ToList();
         case "NDepend.CodeModel.IType":
             return (from m in codeBaseToStudy.Assemblies.WithName(assemblyName).ChildTypes()
                     select InvokeUserDefinedMetric(m.Name, userDefinedMetricDefinition.MethodNameToInvoke)).ToList();
         case "NDepend.CodeModel.IMethod":
             return (from m in codeBaseToStudy.Assemblies.WithName(assemblyName).ChildMethods()
                     select InvokeUserDefinedMetric(m.Name, userDefinedMetricDefinition.MethodNameToInvoke)).ToList();
     }
     return null;
 }