Browse Source

Merge

pull/19/head
Tomas Linhart 15 years ago
parent
commit
5dbea718b7
  1. 5
      src/AddIns/Analysis/CodeQuality/CodeQualityAnalysis.csproj
  2. 10
      src/AddIns/Analysis/CodeQuality/CodeQualityAnalysis.sln
  3. 34
      src/AddIns/Analysis/CodeQuality/Src/Controls/DependecyTreeNode.cs
  4. 81
      src/AddIns/Analysis/CodeQuality/Src/Controls/TreeMatrixControl.xaml
  5. 54
      src/AddIns/Analysis/CodeQuality/Src/Controls/TreeMatrixControl.xaml.cs
  6. 1
      src/AddIns/Analysis/CodeQuality/Src/MainWindow.xaml.cs

5
src/AddIns/Analysis/CodeQuality/CodeQualityAnalysis.csproj

@ -113,6 +113,7 @@ @@ -113,6 +113,7 @@
<Compile Include="..\..\..\Main\GlobalAssemblyInfo.cs">
<Link>Properties\GlobalAssemblyInfo.cs</Link>
</Compile>
<Compile Include="Src\Controls\DependecyTreeNode.cs" />
<Compile Include="Src\Controls\DependencyEdge.cs" />
<Compile Include="Src\Controls\DependencyGraph.cs" />
<Compile Include="Src\Controls\DependencyGraphLayout.cs" />
@ -212,6 +213,10 @@ @@ -212,6 +213,10 @@
<Project>{D68133BD-1E63-496E-9EDE-4FBDBF77B486}</Project>
<Name>Mono.Cecil</Name>
</ProjectReference>
<ProjectReference Include="..\..\..\Libraries\SharpTreeView\ICSharpCode.TreeView\ICSharpCode.TreeView.csproj">
<Project>{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}</Project>
<Name>ICSharpCode.TreeView</Name>
</ProjectReference>
<ProjectReference Include="..\..\..\Main\Base\Project\ICSharpCode.SharpDevelop.csproj">
<Project>{2748AD25-9C63-4E12-877B-4DCE96FBED54}</Project>
<Name>ICSharpCode.SharpDevelop</Name>

10
src/AddIns/Analysis/CodeQuality/CodeQualityAnalysis.sln

@ -18,6 +18,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Do @@ -18,6 +18,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Do
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil", "..\..\..\Libraries\Mono.Cecil\Mono.Cecil.csproj", "{D68133BD-1E63-496E-9EDE-4FBDBF77B486}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TreeView", "..\..\..\Libraries\SharpTreeView\ICSharpCode.TreeView\ICSharpCode.TreeView.csproj", "{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -80,6 +82,14 @@ Global @@ -80,6 +82,14 @@ Global
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.ActiveCfg = net_2_0_Debug|Any CPU
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|x86.Build.0 = net_2_0_Debug|Any CPU
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|x86.ActiveCfg = net_2_0_Debug|Any CPU
{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|x86.Build.0 = Debug|Any CPU
{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|x86.ActiveCfg = Debug|Any CPU
{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|Any CPU.Build.0 = Release|Any CPU
{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|x86.Build.0 = Release|Any CPU
{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|x86.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

34
src/AddIns/Analysis/CodeQuality/Src/Controls/DependecyTreeNode.cs

@ -0,0 +1,34 @@ @@ -0,0 +1,34 @@
/*
* Created by SharpDevelop.
* User: Peter Forstmeier
* Date: 02.09.2011
* Time: 15:10
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using ICSharpCode.TreeView;
namespace ICSharpCode.CodeQualityAnalysis.Controls
{
/// <summary>
/// Description of DependecyTreeNode.
/// </summary>
public class DependecyTreeNode:SharpTreeNode
{
private INode node;
public DependecyTreeNode(INode node)
{
this.node = node;
}
public override object Text
{
get { return node.Name; }
}
public override object ToolTip {
get { return node.Name; }
}
}
}

81
src/AddIns/Analysis/CodeQuality/Src/Controls/TreeMatrixControl.xaml

@ -1,38 +1,73 @@ @@ -1,38 +1,73 @@
<UserControl x:Class="ICSharpCode.CodeQualityAnalysis.Controls.TreeMatrixControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Controls="clr-namespace:ICSharpCode.CodeQualityAnalysis.Controls">
<?xml version="1.0" encoding="utf-8"?>
<UserControl
x:Class="ICSharpCode.CodeQualityAnalysis.Controls.TreeMatrixControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Controls="clr-namespace:ICSharpCode.CodeQualityAnalysis.Controls"
xmlns:tree="http://icsharpcode.net/sharpdevelop/treeview">
<UserControl.Resources>
<Style TargetType="{x:Type TreeViewItem}">
<Setter Property="BorderBrush" Value="Red" />
<Setter Property="Header" Value="test" />
<Style
TargetType="{x:Type tree:SharpTreeNodeView}"
>
<Setter Property="Height" Value="36" />
</Style>
</UserControl.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition
Height="70" />
<RowDefinition
Height="3" />
<RowDefinition
Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition
Width="70" />
<ColumnDefinition
Width="3" />
<ColumnDefinition
Width="*" />
</Grid.ColumnDefinitions>
<TreeView Name="leftTree" Grid.Row="1" Grid.Column="0">
<TreeView.Resources>
</TreeView.Resources>
</TreeView>
<tree:SharpTreeView
Name="leftTree"
Grid.Row="2"
Grid.Column="0">
</tree:SharpTreeView>
<GridSplitter Grid.Column="1" Width="3"
Grid.RowSpan="3"
ResizeDirection="Columns"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"></GridSplitter>
<tree:SharpTreeView
Name="topTree"
Grid.Row="0"
Grid.Column="2">
<tree:SharpTreeView.LayoutTransform>
<RotateTransform
Angle="-90" />
</tree:SharpTreeView.LayoutTransform>
</tree:SharpTreeView>
<TreeView Name="topTree" Grid.Row="0" Grid.Column="1">
<TreeView.LayoutTransform>
<RotateTransform Angle="-90" />
</TreeView.LayoutTransform>
</TreeView>
<GridSplitter Grid.Row="1"
Grid.Column="2"
Height="3"
ResizeDirection="Rows"
HorizontalAlignment="Stretch"></GridSplitter>
<ScrollViewer Grid.Column="1" Grid.Row="1" CanContentScroll="True" VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible">
<Controls:DependencyMatrixControl x:Name="matrixControl" />
<ScrollViewer
Grid.Column="2"
Grid.Row="2"
CanContentScroll="True"
VerticalScrollBarVisibility="Visible"
HorizontalScrollBarVisibility="Visible">
<Controls:DependencyMatrixControl
x:Name="matrixControl" />
</ScrollViewer>
</Grid>
</UserControl>

54
src/AddIns/Analysis/CodeQuality/Src/Controls/TreeMatrixControl.xaml.cs

@ -12,6 +12,7 @@ using System.Windows.Documents; @@ -12,6 +12,7 @@ using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Forms;
using System.Linq;
using ICSharpCode.CodeQualityAnalysis.Utility;
namespace ICSharpCode.CodeQualityAnalysis.Controls
@ -39,52 +40,49 @@ namespace ICSharpCode.CodeQualityAnalysis.Controls @@ -39,52 +40,49 @@ namespace ICSharpCode.CodeQualityAnalysis.Controls
InitializeComponent();
}
public void DrawMatrix()
public void DrawTree(Module module)
{
// matrixControl.DrawMatrix();
FillTree (leftTree,module);
FillTree (topTree,module);
}
public void DrawTree(Module module)
private void FillTree (ICSharpCode.TreeView.SharpTreeView tree,Module module)
{
var root = CreateTreeItem(module);
tree.Root = root;
foreach (var ns in module.Namespaces)
{
var nsType = new TreeViewItem
{
Header = ns.Name
};
leftTree.Items.Add(nsType);
var namespaceNode = CreateTreeItem(ns);
tree.Root.Children.Add(namespaceNode);
foreach (var type in ns.Types)
{
var itemType = new TreeViewItem
{
Header = type.Name
};
nsType.Items.Add(itemType);
var typeNode = CreateTreeItem(type);
namespaceNode.Children.Add(typeNode);
foreach (var method in type.Methods)
{
var itemMethod = new TreeViewItem
{
Header = method.Name
};
itemType.Items.Add(itemMethod);
var methodName = CreateTreeItem(method);
namespaceNode.Children.Add(methodName);
}
foreach (var field in type.Fields)
{
var itemField = new TreeViewItem
{
Header = field.Name
};
itemType.Items.Add(itemField);
var fieldNode = CreateTreeItem(field);
namespaceNode.Children.Add(fieldNode);
}
}
}
}
private DependecyTreeNode CreateTreeItem (INode node)
{
DependecyTreeNode dtn = new DependecyTreeNode(node);
return dtn;
}
}
}

1
src/AddIns/Analysis/CodeQuality/Src/MainWindow.xaml.cs

@ -106,7 +106,6 @@ namespace ICSharpCode.CodeQualityAnalysis @@ -106,7 +106,6 @@ namespace ICSharpCode.CodeQualityAnalysis
}
matrixControl.Matrix = matrix;
matrixControl.DrawMatrix();
matrixControl.DrawTree(metricsReader.MainModule);
}

Loading…
Cancel
Save