Example #1
0
 public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon)
 {
     DomCecilCompilationUnit.Module module = (DomCecilCompilationUnit.Module)dataObject;
     label      = module.ModuleDefinition.Name;
     icon       = Context.GetIcon(Stock.OpenFolder);
     closedIcon = Context.GetIcon(Stock.ClosedFolder);
 }
Example #2
0
        public override void BuildChildNodes(ITreeBuilder ctx, object dataObject)
        {
            DomCecilCompilationUnit.Module module     = (DomCecilCompilationUnit.Module)dataObject;
            Dictionary <string, Namespace> namespaces = new Dictionary <string, Namespace> ();
            bool publicOnly = ctx.Options ["PublicApiOnly"];

            foreach (IType type in module.Types)
            {
                if (publicOnly && !type.IsPublic)
                {
                    continue;
                }
                if (!namespaces.ContainsKey(type.Namespace))
                {
                    namespaces [type.Namespace] = new Namespace(type.Namespace);
                }
                namespaces [type.Namespace].Types.Add(type);
            }
            ctx.AddChild(new ReferenceFolder(module.ModuleDefinition));
            if (module.ModuleDefinition.Resources.Count > 0)
            {
                ctx.AddChild(new ResourceFolder(module.ModuleDefinition));
            }
            foreach (Namespace ns in namespaces.Values)
            {
                ctx.AddChild(ns);
            }
        }
Example #3
0
        public string GetDisassembly(ITreeNavigator navigator)
        {
            DomCecilCompilationUnit.Module module = (DomCecilCompilationUnit.Module)navigator.DataItem;
            StringBuilder result = new StringBuilder();

            PrintModuleHeader(result, module);

            HashSet <string> namespaces = new HashSet <string> ();

            foreach (IType type in module.Types)
            {
/*				if ((type.Attributes & TypeAttributes.NestedPrivate) == TypeAttributes.NestedPrivate)
 *                                      continue;*/
                if (String.IsNullOrEmpty(type.Namespace))
                {
                    continue;
                }
                namespaces.Add(type.Namespace);
            }

            foreach (string ns in namespaces)
            {
                result.Append("<span style=\"keyword.namespace\">namespace</span> ");
                result.Append("<span style=\"text\">");
                result.Append(ns);
                result.Append("</span>");
                result.AppendLine();
            }

            return(result.ToString());
        }
Example #4
0
 void PrintModuleHeader(StringBuilder result, DomCecilCompilationUnit.Module module)
 {
     result.Append(Ambience.SingleLineComment(
                       String.Format(GettextCatalog.GetString("Module <b>{0}</b>"),
                                     module.ModuleDefinition.Name)));
     result.AppendLine();
 }
Example #5
0
        public List <ReferenceSegment> Disassemble(TextEditorData data, ITreeNavigator navigator)
        {
            DomCecilCompilationUnit.Module module = (DomCecilCompilationUnit.Module)navigator.DataItem;
            StringBuilder result = new StringBuilder();

            PrintModuleHeader(result, module);

            HashSet <string> namespaces = new HashSet <string> ();

            foreach (IType type in module.Types)
            {
/*				if ((type.Attributes & TypeAttributes.NestedPrivate) == TypeAttributes.NestedPrivate)
 *                                      continue;*/
                if (String.IsNullOrEmpty(type.Namespace))
                {
                    continue;
                }
                namespaces.Add(type.Namespace);
            }

            foreach (string ns in namespaces)
            {
                result.Append("namespace ");
                result.Append(ns);
                result.AppendLine();
            }

            data.Text = result.ToString();
            return(null);
        }
Example #6
0
        string IAssemblyBrowserNodeBuilder.GetDescription(ITreeNavigator navigator)
        {
            DomCecilCompilationUnit.Module module = (DomCecilCompilationUnit.Module)navigator.DataItem;
            StringBuilder result = new StringBuilder();

            PrintModuleHeader(result, module);

            result.Append(String.Format(GettextCatalog.GetString("<b>Version:</b>\t{0}"),
                                        module.ModuleDefinition.Mvid));
            result.AppendLine();

            return(result.ToString());
        }
Example #7
0
 public string GetDocumentationMarkup(ITreeNavigator navigator)
 {
     DomCecilCompilationUnit.Module module = (DomCecilCompilationUnit.Module)navigator.DataItem;
     return("<big>" + String.Format(GettextCatalog.GetString("Module <b>{0}</b>"), module.ModuleDefinition.Name) + "</big>");
 }