1
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
2
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
5
using System.Collections.Generic;
7
namespace ICSharpCode.CodeCoverage
9
public class CodeCoverageNamespaceTreeNode : CodeCoverageMethodsTreeNode
11
string namespacePrefix = String.Empty;
13
public CodeCoverageNamespaceTreeNode(string name, List<CodeCoverageMethod> methods)
14
: this(String.Empty, name, methods)
18
public CodeCoverageNamespaceTreeNode(string namespacePrefix, string name, List<CodeCoverageMethod> methods) : base(name, methods, CodeCoverageImageListIndex.Namespace)
21
this.namespacePrefix = namespacePrefix;
24
protected override void Initialize()
28
// Add namespace nodes.
29
string fullNamespace = CodeCoverageMethod.GetFullNamespace(namespacePrefix, Name);
30
foreach (string namespaceName in CodeCoverageMethod.GetChildNamespaces(Methods, fullNamespace)) {
31
string childFullNamespace = CodeCoverageMethod.GetFullNamespace(fullNamespace, namespaceName);
32
CodeCoverageNamespaceTreeNode node = new CodeCoverageNamespaceTreeNode(fullNamespace, namespaceName, CodeCoverageMethod.GetAllMethods(Methods, childFullNamespace));
36
// Add class nodes for this namespace.
37
foreach (string className in CodeCoverageMethod.GetClassNames(Methods, fullNamespace)) {
38
CodeCoverageClassTreeNode classNode = new CodeCoverageClassTreeNode(className, CodeCoverageMethod.GetMethods(Methods, fullNamespace, className));
39
classNode.AddTo(this);