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(); } }
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; }