Browse Source

ReportViewModel.cs DependencyReport

pull/18/head
PeterForstmeier 14 years ago
parent
commit
d9521390bf
  1. 3
      src/AddIns/Analysis/CodeQuality/CodeQuality.csproj
  2. 42
      src/AddIns/Analysis/CodeQuality/Reporting/DependencyReport.cs
  3. 47
      src/AddIns/Analysis/CodeQuality/Reporting/DependencyReport.srd
  4. 30
      src/AddIns/Analysis/CodeQuality/Reporting/OverviewReport.cs
  5. 2
      src/AddIns/Analysis/CodeQuality/Reporting/Overviewreport.srd
  6. 33
      src/AddIns/Analysis/CodeQuality/Reporting/ReportViewModel.cs

3
src/AddIns/Analysis/CodeQuality/CodeQuality.csproj

@ -94,6 +94,7 @@
<Compile Include="Reporting\BaseReport.cs" /> <Compile Include="Reporting\BaseReport.cs" />
<Compile Include="Reporting\DependencyReport.cs" /> <Compile Include="Reporting\DependencyReport.cs" />
<Compile Include="Reporting\OverviewReport.cs" /> <Compile Include="Reporting\OverviewReport.cs" />
<Compile Include="Reporting\ReportViewModel.cs" />
<Compile Include="Utils\DependencyColorizer.cs" /> <Compile Include="Utils\DependencyColorizer.cs" />
<Compile Include="Utils\Extensions.cs" /> <Compile Include="Utils\Extensions.cs" />
<Compile Include="Utils\IColorizer.cs" /> <Compile Include="Utils\IColorizer.cs" />
@ -106,7 +107,7 @@
<None Include="Reporting\DependencyReport.srd"> <None Include="Reporting\DependencyReport.srd">
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None> </None>
<None Include="Reporting\ReportingOverview.srd"> <None Include="Reporting\Overviewreport.srd">
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None> </None>
</ItemGroup> </ItemGroup>

42
src/AddIns/Analysis/CodeQuality/Reporting/DependencyReport.cs

@ -21,6 +21,7 @@ namespace ICSharpCode.CodeQuality.Reporting
public class DependencyReport:BaseReport public class DependencyReport:BaseReport
{ {
private const string overviewReport = "DependencyReport.srd"; private const string overviewReport = "DependencyReport.srd";
public DependencyReport(List<string> fileNames):base(fileNames) public DependencyReport(List<string> fileNames):base(fileNames)
{ {
} }
@ -37,19 +38,25 @@ namespace ICSharpCode.CodeQuality.Reporting
return creator; return creator;
} }
List <DependencyViewModel> MakeList (ReadOnlyCollection<AssemblyNode> list)
private List <DependencyViewModel> MakeList (ReadOnlyCollection<AssemblyNode> list)
{ {
AssemblyNode baseNode = list[0];
var newList = new List<DependencyViewModel>(); var newList = new List<DependencyViewModel>();
foreach (var element in list) { foreach (var baseNode in list) {
var i = baseNode.GetUses(element); foreach (var element in list) {
if (i > 0) { if (baseNode.Name != element.Name) {
Console.WriteLine("{0} ref {1} times {2}",baseNode.Name,element.Name,i);
newList.Add(new DependencyViewModel()
{ var referenceCount = baseNode.GetUses(element);
Node = baseNode, if (referenceCount > 0) {
References = element.Name newList.Add(new DependencyViewModel()
}); {
Node = baseNode,
References = element.Name,
ReferenceCount = referenceCount
});
}
}
} }
} }
return newList; return newList;
@ -57,22 +64,15 @@ namespace ICSharpCode.CodeQuality.Reporting
} }
internal class DependencyViewModel internal class DependencyViewModel:ReportViewModel
{ {
public DependencyViewModel() public DependencyViewModel()
{ {
} }
public AssemblyNode Node {get;set;}
public string Name
{
get {return Node.Name;}
}
public string References {get;set;} public string References {get;set;}
}
public int ReferenceCount {get;set;}
}
} }

47
src/AddIns/Analysis/CodeQuality/Reporting/DependencyReport.srd

@ -147,6 +147,24 @@
<ForeColor>Black</ForeColor> <ForeColor>Black</ForeColor>
<FrameColor>Black</FrameColor> <FrameColor>Black</FrameColor>
<Items> <Items>
<BaseDataItem>
<Location>443, 4</Location>
<Size>71, 20</Size>
<BackColor>White</BackColor>
<VisibleInReport>True</VisibleInReport>
<Font>Segoe UI, 9pt</Font>
<StringTrimming>None</StringTrimming>
<ContentAlignment>MiddleRight</ContentAlignment>
<CanGrow>False</CanGrow>
<CanShrink>False</CanShrink>
<RTL>No</RTL>
<Text>BaseDataItem2147483646</Text>
<DrawBorder>False</DrawBorder>
<FrameColor>Black</FrameColor>
<ForeColor>Black</ForeColor>
<ColumnName>ReferenceCount</ColumnName>
<Name>BaseDataItem2147483646</Name>
</BaseDataItem>
<BaseDataItem> <BaseDataItem>
<Location>254, 4</Location> <Location>254, 4</Location>
<Size>156, 20</Size> <Size>156, 20</Size>
@ -179,6 +197,23 @@
<ForeColor>Black</ForeColor> <ForeColor>Black</ForeColor>
<FrameColor>Black</FrameColor> <FrameColor>Black</FrameColor>
<Items> <Items>
<BaseTextItem>
<Location>414, 7</Location>
<Size>100, 20</Size>
<BackColor>White</BackColor>
<VisibleInReport>True</VisibleInReport>
<Font>Segoe UI, 9.75pt</Font>
<StringTrimming>None</StringTrimming>
<ContentAlignment>MiddleRight</ContentAlignment>
<CanGrow>False</CanGrow>
<CanShrink>False</CanShrink>
<RTL>No</RTL>
<Text># of References</Text>
<DrawBorder>False</DrawBorder>
<FrameColor>Black</FrameColor>
<ForeColor>Black</ForeColor>
<Name>BaseTextItem2147483646</Name>
</BaseTextItem>
<BaseTextItem> <BaseTextItem>
<Location>254, 2</Location> <Location>254, 2</Location>
<Size>100, 20</Size> <Size>100, 20</Size>
@ -226,7 +261,7 @@
</BaseSection> </BaseSection>
<BaseSection> <BaseSection>
<Location>50, 339</Location> <Location>50, 339</Location>
<Size>727, 60</Size> <Size>727, 36</Size>
<BackColor>White</BackColor> <BackColor>White</BackColor>
<VisibleInReport>False</VisibleInReport> <VisibleInReport>False</VisibleInReport>
<SectionOffset>0</SectionOffset> <SectionOffset>0</SectionOffset>
@ -236,7 +271,7 @@
<Items> <Items>
<BaseTextItem> <BaseTextItem>
<Location>31, 5</Location> <Location>31, 5</Location>
<Size>573, 20</Size> <Size>555, 20</Size>
<BackColor>White</BackColor> <BackColor>White</BackColor>
<VisibleInReport>True</VisibleInReport> <VisibleInReport>True</VisibleInReport>
<Font>Segoe UI, 9.75pt</Font> <Font>Segoe UI, 9.75pt</Font>
@ -245,14 +280,14 @@
<CanGrow>False</CanGrow> <CanGrow>False</CanGrow>
<CanShrink>False</CanShrink> <CanShrink>False</CanShrink>
<RTL>No</RTL> <RTL>No</RTL>
<Text>= Globals!ReportFolder + '\' + Globals!ReportName</Text> <Text>= Globals!ReportFolder + Globals!ReportName</Text>
<DrawBorder>False</DrawBorder> <DrawBorder>False</DrawBorder>
<FrameColor>Black</FrameColor> <FrameColor>Black</FrameColor>
<ForeColor>ControlText</ForeColor> <ForeColor>ControlText</ForeColor>
<Name>BaseTextItem2147483641</Name> <Name>BaseTextItem2147483641</Name>
</BaseTextItem> </BaseTextItem>
<BaseTextItem> <BaseTextItem>
<Location>622, 5</Location> <Location>624, 5</Location>
<Size>100, 20</Size> <Size>100, 20</Size>
<BackColor>White</BackColor> <BackColor>White</BackColor>
<VisibleInReport>True</VisibleInReport> <VisibleInReport>True</VisibleInReport>
@ -263,7 +298,7 @@
<CanShrink>False</CanShrink> <CanShrink>False</CanShrink>
<DataType>System.String</DataType> <DataType>System.String</DataType>
<RTL>No</RTL> <RTL>No</RTL>
<Text>=Globals!PageNumber</Text> <Text>= 'Page : ' + Globals!PageNumber</Text>
<DrawBorder>False</DrawBorder> <DrawBorder>False</DrawBorder>
<FrameColor>Black</FrameColor> <FrameColor>Black</FrameColor>
<ForeColor>Black</ForeColor> <ForeColor>Black</ForeColor>
@ -274,7 +309,7 @@
<Name>ReportPageFooter</Name> <Name>ReportPageFooter</Name>
</BaseSection> </BaseSection>
<BaseSection> <BaseSection>
<Location>50, 414</Location> <Location>50, 390</Location>
<Size>727, 60</Size> <Size>727, 60</Size>
<BackColor>White</BackColor> <BackColor>White</BackColor>
<VisibleInReport>False</VisibleInReport> <VisibleInReport>False</VisibleInReport>

30
src/AddIns/Analysis/CodeQuality/Reporting/OverviewReport.cs

@ -9,11 +9,9 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.ObjectModel; using System.Collections.ObjectModel;
using System.IO;
using System.Linq; using System.Linq;
using System.Reflection;
using ICSharpCode.CodeQuality.Engine.Dom; using ICSharpCode.CodeQuality.Engine.Dom;
using ICSharpCode.CodeQuality.Reporting;
using ICSharpCode.NRefactory.Utils; using ICSharpCode.NRefactory.Utils;
using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core;
@ -24,7 +22,7 @@ namespace ICSharpCode.CodeQuality.Reporting
/// </summary> /// </summary>
public class OverviewReport:BaseReport public class OverviewReport:BaseReport
{ {
private const string overviewReport = "ReportingOverview.srd"; private const string overviewReport = "OverviewReport.srd";
public OverviewReport(List<string> fileNames):base(fileNames) public OverviewReport(List<string> fileNames):base(fileNames)
{ {
@ -51,30 +49,23 @@ namespace ICSharpCode.CodeQuality.Reporting
} }
internal class OverviewViewModel internal class OverviewViewModel:ReportViewModel
{ {
public OverviewViewModel () public OverviewViewModel ()
{ {
} }
public AssemblyNode Node {get;set;}
public string Name
{
get {return Node.Name;}
}
public int ChildCount public int ChildCount
{ {
get { get {return Node.Children.Count;}
return Node.Children.Count;}
} }
public int MethodCount public int MethodCount
{ {
get { get
{
return TreeTraversal.PreOrder((NodeBase)Node, n => n.Children).OfType<MethodNode>().Count(); return TreeTraversal.PreOrder((NodeBase)Node, n => n.Children).OfType<MethodNode>().Count();
} }
} }
@ -82,7 +73,8 @@ namespace ICSharpCode.CodeQuality.Reporting
public int PropertyCount public int PropertyCount
{ {
get { get
{
return TreeTraversal.PreOrder((NodeBase)Node, n => n.Children).OfType<PropertyNode>().Count(); return TreeTraversal.PreOrder((NodeBase)Node, n => n.Children).OfType<PropertyNode>().Count();
} }
} }
@ -90,7 +82,8 @@ namespace ICSharpCode.CodeQuality.Reporting
public int EventCount public int EventCount
{ {
get { get
{
return TreeTraversal.PreOrder((NodeBase)Node, n => n.Children).OfType<EventNode>().Count(); return TreeTraversal.PreOrder((NodeBase)Node, n => n.Children).OfType<EventNode>().Count();
} }
} }
@ -98,7 +91,8 @@ namespace ICSharpCode.CodeQuality.Reporting
public int TypesCount public int TypesCount
{ {
get { get
{
return TreeTraversal.PreOrder((NodeBase)Node, n => n.Children).OfType<TypeNode>().Count(); return TreeTraversal.PreOrder((NodeBase)Node, n => n.Children).OfType<TypeNode>().Count();
} }
} }

2
src/AddIns/Analysis/CodeQuality/Reporting/ReportingOverview.srd → src/AddIns/Analysis/CodeQuality/Reporting/Overviewreport.srd

@ -473,7 +473,7 @@
<CanGrow>False</CanGrow> <CanGrow>False</CanGrow>
<CanShrink>False</CanShrink> <CanShrink>False</CanShrink>
<RTL>No</RTL> <RTL>No</RTL>
<Text>= Globals!ReportFolder + '\' + Globals!ReportName</Text> <Text>= Globals!ReportFolder + Globals!ReportName</Text>
<DrawBorder>False</DrawBorder> <DrawBorder>False</DrawBorder>
<FrameColor>Black</FrameColor> <FrameColor>Black</FrameColor>
<ForeColor>ControlText</ForeColor> <ForeColor>ControlText</ForeColor>

33
src/AddIns/Analysis/CodeQuality/Reporting/ReportViewModel.cs

@ -0,0 +1,33 @@
/*
* Created by SharpDevelop.
* User: Peter Forstmeier
* Date: 26.02.2012
* Time: 18:10
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using ICSharpCode.CodeQuality.Engine.Dom;
namespace ICSharpCode.CodeQuality.Reporting
{
/// <summary>
/// Description of ReportViewModel.
/// </summary>
internal class ReportViewModel
{
public ReportViewModel()
{
}
public AssemblyNode Node {get;set;}
public string Name
{
get {return Node.Name;}
}
}
}
Loading…
Cancel
Save