diff --git a/src/AddIns/Analysis/CodeQuality/CodeQualityAnalysis.addin b/src/AddIns/Analysis/CodeQuality/CodeQualityAnalysis.addin
index d5c5cfb9d8..4317107352 100644
--- a/src/AddIns/Analysis/CodeQuality/CodeQualityAnalysis.addin
+++ b/src/AddIns/Analysis/CodeQuality/CodeQualityAnalysis.addin
@@ -14,10 +14,15 @@
+
+
diff --git a/src/AddIns/Analysis/CodeQuality/Src/MainWindowModel.cs b/src/AddIns/Analysis/CodeQuality/Src/MainWindowModel.cs
index 4e67ef27d9..2bb8b12462 100644
--- a/src/AddIns/Analysis/CodeQuality/Src/MainWindowModel.cs
+++ b/src/AddIns/Analysis/CodeQuality/Src/MainWindowModel.cs
@@ -251,6 +251,9 @@ namespace ICSharpCode.CodeQualityAnalysis
Nodes = PrepareNodes();
var aa = SelectedNode as INode;
+ var m = aa as Method;
+ var t = aa as Type;
+ var n = aa as Namespace;
switch (selectedMetrics)
{
diff --git a/src/AddIns/Analysis/CodeQuality/Src/Utility/Helper.cs b/src/AddIns/Analysis/CodeQuality/Src/Utility/Helper.cs
index 04eb9b837c..92f771eb54 100644
--- a/src/AddIns/Analysis/CodeQuality/Src/Utility/Helper.cs
+++ b/src/AddIns/Analysis/CodeQuality/Src/Utility/Helper.cs
@@ -2,11 +2,13 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.Collections.Generic;
+using System.Runtime.InteropServices;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
+
using ICSharpCode.TreeView;
-using System.Runtime.InteropServices;
namespace ICSharpCode.CodeQualityAnalysis.Utility
{
@@ -24,23 +26,38 @@ namespace ICSharpCode.CodeQualityAnalysis.Utility
tree.Root = root;
tree.ShowRoot = false;
- foreach (var ns in module.Namespaces)
+ var sortedNameSpaces = new List();
+ sortedNameSpaces.AddRange (module.Namespaces);
+ sortedNameSpaces.Sort((Namespace a,Namespace b) => String.Compare(a.Name, b.Name) );
+
+ foreach (var ns in sortedNameSpaces)
+// foreach (var ns in module.Namespaces)
{
var namespaceNode = CreateTreeItem(ns);
tree.Root.Children.Add(namespaceNode);
- foreach (var type in ns.Types)
+ var sortedTypes = new List();
+ sortedTypes.AddRange(ns.Types);
+ sortedTypes.Sort((Type a,Type b) => String.Compare(a.Name, b.Name) );
+ foreach (var type in sortedTypes)
{
var typeNode = CreateTreeItem(type);
namespaceNode.Children.Add(typeNode);
- foreach (var method in type.Methods)
+ var sortedMethods = new List();
+ sortedMethods.AddRange(type.Methods);
+ sortedMethods.Sort((Method a,Method b) => String.Compare(a.Name, b.Name) );
+ foreach (var method in sortedMethods)
{
var methodName = CreateTreeItem(method);
typeNode.Children.Add(methodName);
}
- foreach (var field in type.Fields)
+
+ var sortedFields = new List();
+ sortedFields.AddRange(type.Fields);
+ sortedFields.Sort((Field a,Field b) => String.Compare(a.Name, b.Name) );
+ foreach (var field in sortedFields)
{
var fieldNode = CreateTreeItem(field);
typeNode.Children.Add(fieldNode);