Beispiel #1
0
        }        // Reset

        string GetString(Ambience amb, IMember x)
        {
            if (tag is ICompilationUnit)
            {
                return(amb.GetString(x, OutputFlags.IncludeGenerics | OutputFlags.IncludeParameters | OutputFlags.UseFullInnerTypeName | OutputFlags.ReformatDelegates));
            }
            return(amb.GetString(x, OutputFlags.IncludeGenerics | OutputFlags.IncludeParameters | OutputFlags.ReformatDelegates));
        }        // GetString
Beispiel #2
0
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon)
        {
            IMethod data = dataObject as IMethod;

            label = Ambience.GetString(data, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup);
            icon  = Context.GetIcon(data.GetStockIcon());
        }
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon)
        {
            IReturnType returnType = (IReturnType)dataObject;

            label = Ambience.GetString(returnType, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup);
            icon  = Context.GetIcon(MonoDevelop.Ide.Gui.Stock.Class);
        }
Beispiel #4
0
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, NodeInfo nodeInfo)
        {
            IEvent data = dataObject as IEvent;

            nodeInfo.Label = Ambience.GetString(data, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup);
            nodeInfo.Icon  = Context.GetIcon(data.GetStockIcon());
        }
Beispiel #5
0
        public string GetComponentTypeOf(Func <string, string> callback, string varName)
        {
            if (callback == null)
            {
                return("var");
            }

            string var = callback(varName);
            ITextEditorResolver textEditorResolver = CurrentContext.Document.GetContent <ITextEditorResolver> ();

            if (textEditorResolver != null)
            {
                ResolveResult result = textEditorResolver.GetLanguageItem(CurrentContext.Document.TextEditor.CursorPosition, var);
                if (result != null)
                {
                    IReturnType componentType = DomType.GetComponentType(CurrentContext.ProjectDom, result.ResolvedType);
                    if (componentType != null)
                    {
                        Ambience ambience = AmbienceService.GetAmbience(CurrentContext.Template.MimeType);
                        return(ambience != null?ambience.GetString(componentType, OutputFlags.IncludeGenerics) :  componentType.ToInvariantString());
                    }
                }
            }

            return("var");
        }
Beispiel #6
0
        /// <summary>
        /// Returns the name of the node that should be used as a secondary sort key.
        /// </summary>
        /// <param name="node">
        /// A node in the tree. Expected to be either an IMember or a FoldingRegion.
        /// </param>
        /// <returns>
        /// A string representing the secondary sort key.
        /// The empty string if node is neither an IMember nor a FoldingRegion.
        /// </returns>
        string GetSortName(object node)
        {
            if (node is IEntity)
            {
                // Return the name without type or parameters
                return(ambience.GetString((IEntity)node, 0));
            }

            if (node is FoldingRegion)
            {
                // Return trimmed region name or fallback
                string name = ((FoldingRegion)node).Name.Trim();

                // ClassOutlineTextEditorExtension uses a fallback name for regions
                // so we do the same here with a slighty different name.
                if (name.Length == 0)
                {
                    name = DEFAULT_REGION_NAME;
                }

                return(name);
            }

            return(string.Empty);
        }
Beispiel #7
0
        string GetString(Ambience amb, IUnresolvedEntity x)
        {
            var     ctx = Document.ParsedDocument.ParsedFile.GetTypeResolveContext(Document.Compilation, x.Region.Begin);
            IEntity rx  = null;

            if (x is IUnresolvedMember)
            {
                rx = ((IUnresolvedMember)x).CreateResolved(ctx);
            }

            if (tag is IParsedFile)
            {
                return(amb.GetString(rx, OutputFlags.IncludeGenerics | OutputFlags.IncludeParameters | OutputFlags.UseFullInnerTypeName | OutputFlags.ReformatDelegates));
            }
            return(amb.GetString(rx, OutputFlags.IncludeGenerics | OutputFlags.IncludeParameters | OutputFlags.ReformatDelegates));
        }
        string IAssemblyBrowserNodeBuilder.GetDocumentationMarkup(ITreeNavigator navigator)
        {
            var method   = (IUnresolvedMethod)navigator.DataItem;
            var resolved = Resolve(navigator, method);

            if (GetMainAssembly(navigator) == null)
            {
                return(Mono.TextEditor.Utils.TextFileUtility.ReadAllText(method.Region.FileName));
            }
            StringBuilder result = new StringBuilder();

            result.Append("<big>");
            result.Append(Ambience.GetString(resolved, OutputFlags.AssemblyBrowserDescription | OutputFlags.IncludeConstraints));
            result.Append("</big>");
            result.AppendLine();

            AmbienceService.DocumentationFormatOptions options = new AmbienceService.DocumentationFormatOptions();
            options.MaxLineLength = -1;
            options.BigHeadings   = true;
            options.Ambience      = Ambience;
            result.AppendLine();

            result.Append(AmbienceService.GetDocumentationMarkup(resolved, AmbienceService.GetDocumentation(resolved), options));

            return(result.ToString());
        }
Beispiel #9
0
        string IAssemblyBrowserNodeBuilder.GetDisassembly(ITreeNavigator navigator)
        {
            IField        field  = (IField)navigator.DataItem;
            StringBuilder result = new StringBuilder();

            result.Append(Ambience.GetString(field, DomTypeNodeBuilder.settings));
            return(result.ToString());
        }
Beispiel #10
0
 public override string GetMarkupText(Widget widget)
 {
     if (useFullName)
     {
         return(HighlightMatch(widget, Ambience.GetString(type, Flags), match));
     }
     return(HighlightMatch(widget, type.Name, match));
 }
Beispiel #11
0
        string IAssemblyBrowserNodeBuilder.GetDecompiledCode(ITreeNavigator navigator)
        {
            IField        field  = (IField)navigator.DataItem;
            StringBuilder result = new StringBuilder();

            result.Append(DomMethodNodeBuilder.GetAttributes(Ambience, field.Attributes));
            result.Append(Ambience.GetString(field, DomTypeNodeBuilder.settings));
            result.Append(";");
            return(result.ToString());
        }
Beispiel #12
0
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon)
        {
            IField field = (IField)dataObject;

            label = Ambience.GetString(field, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup);
            if (field.IsPrivate || field.IsInternal)
            {
                label = DomMethodNodeBuilder.FormatPrivate(label);
            }
            icon = ImageService.GetPixbuf(field.StockIcon, Gtk.IconSize.Menu);
        }
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon)
        {
            IProperty property = (IProperty)dataObject;

            label = Ambience.GetString(property, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup | OutputFlags.ReturnTypesLast);
            if (property.IsPrivate || property.IsInternal)
            {
                label = DomMethodNodeBuilder.FormatPrivate(label);
            }
            icon = ImageService.GetPixbuf(property.StockIcon, Gtk.IconSize.Menu);
        }
        public ProtocolCompletionData(MonoCSharpCompletionEngine engine, int declarationBegin, IMember member) : base(null)
        {
            this.engine = engine;
            this.member = member;

            this.declarationBegin = declarationBegin;
            this.GenerateBody     = true;
            this.Icon             = member.GetStockIcon();
            this.DisplayText      = ambience.GetString(member, OutputFlags.IncludeParameters | OutputFlags.IncludeParameterName | OutputFlags.IncludeGenerics | OutputFlags.HideExtensionsParameter | OutputFlags.IncludeAccessor);
            this.CompletionText   = member.SymbolKind == SymbolKind.Indexer ? "this" : member.Name;
        }
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon)
        {
            var evt      = (IUnresolvedEvent)dataObject;
            var resolved = Resolve(treeBuilder, evt);

            label = Ambience.GetString(resolved, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup | OutputFlags.CompletionListFomat);
            if (evt.IsPrivate || evt.IsInternal)
            {
                label = DomMethodNodeBuilder.FormatPrivate(label);
            }
            icon = ImageService.GetPixbuf(evt.GetStockIcon(), Gtk.IconSize.Menu);
        }
Beispiel #16
0
        public NewOverrideCompletionData(CSharpCompletionTextEditorExtension ext, int declarationBegin, IUnresolvedTypeDefinition type, IMember member) : base(null)
        {
            this.ext    = ext;
            this.type   = type;
            this.member = member;

            this.declarationBegin = declarationBegin;
            this.GenerateBody     = true;
            this.Icon             = member.GetStockIcon();
            this.DisplayText      = ambience.GetString(member, OutputFlags.IncludeParameters | OutputFlags.IncludeParameterName | OutputFlags.IncludeGenerics | OutputFlags.HideExtensionsParameter | OutputFlags.IncludeAccessor);
            this.CompletionText   = member.EntityType == EntityType.Indexer ? "this" : member.Name;
        }
Beispiel #17
0
        public NewOverrideCompletionData(ProjectDom dom, TextEditorData editor, int declarationBegin, IType type, IMember member) : base(null)
        {
            this.editor = editor;
            this.type   = type;
            this.member = member;

            this.declarationBegin = declarationBegin;
            this.GenerateBody     = true;
            this.Icon             = member.StockIcon;
            this.DisplayText      = ambience.GetString(member, OutputFlags.IncludeParameters | OutputFlags.IncludeGenerics | OutputFlags.HideExtensionsParameter);
            this.CompletionText   = member.Name;
        }
Beispiel #18
0
            public TypeDataProvider(MonoDevelop.Projects.DotNetProject project)
            {
                TypeNamesList = new List <string> ();
                var ctx = TypeSystemService.GetCompilation(project);

                TypesList     = new List <ITypeDefinition> (ctx.MainAssembly.GetAllTypeDefinitions());
                this.ambience = AmbienceService.GetAmbience(project.LanguageName);
                foreach (var typeDef in TypesList)
                {
                    TypeNamesList.Add(ambience.GetString((IEntity)typeDef, OutputFlags.IncludeGenerics | OutputFlags.UseFullName | OutputFlags.IncludeMarkup));
                }
            }
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon)
        {
            var type     = (IUnresolvedTypeDefinition)dataObject;
            var resolved = Resolve(treeBuilder, type);

            label = Ambience.GetString(resolved, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup | OutputFlags.UseNETTypeNames);
            if (type.IsPrivate)
            {
                label = DomMethodNodeBuilder.FormatPrivate(label);
            }
            icon = ImageService.GetPixbuf(type.GetStockIcon(), Gtk.IconSize.Menu);
        }
        string IAssemblyBrowserNodeBuilder.GetDescription(ITreeNavigator navigator)
        {
            IProperty     property = (IProperty)navigator.DataItem;
            StringBuilder result   = new StringBuilder();

            result.Append("<span font_family=\"monospace\">");
            result.Append(Ambience.GetString(property, OutputFlags.AssemblyBrowserDescription));
            result.Append("</span>");
            result.AppendLine();
            DomMethodNodeBuilder.PrintDeclaringType(result, navigator);
            DomTypeNodeBuilder.PrintAssembly(result, navigator);
            return(result.ToString());
        }
Beispiel #21
0
        public string GetDisassembly(ITreeNavigator navigator)
        {
            DomCecilCompilationUnit compilationUnit = (DomCecilCompilationUnit)navigator.DataItem;
            StringBuilder           result          = new StringBuilder();

            PrintAssemblyHeader(result, compilationUnit.AssemblyDefinition);
            foreach (IAttribute attr in compilationUnit.Attributes)
            {
                result.Append(Ambience.GetString(attr, OutputFlags.AssemblyBrowserDescription));
                result.AppendLine();
            }
            return(result.ToString());
        }
Beispiel #22
0
        public string GetDecompiledCode(ITreeNavigator navigator)
        {
            IType type = (IType)navigator.DataItem;

            if (type.ClassType == ClassType.Delegate)
            {
                settings.OutputFlags |= OutputFlags.ReformatDelegates | OutputFlags.IncludeConstraints;
                string result = Ambience.GetString(type, settings);
                settings.OutputFlags &= ~(OutputFlags.ReformatDelegates | OutputFlags.IncludeConstraints);
                return(result);
            }
            return(GetDisassembly(navigator));
        }
        string IAssemblyBrowserNodeBuilder.GetDescription(ITreeNavigator navigator)
        {
            var           evt      = (IUnresolvedEvent)navigator.DataItem;
            var           resolved = Resolve(navigator, evt);
            StringBuilder result   = new StringBuilder();

            result.Append("<span font_family=\"monospace\">");
            result.Append(Ambience.GetString(resolved, OutputFlags.AssemblyBrowserDescription));
            result.Append("</span>");
            result.AppendLine();
            DomMethodNodeBuilder.PrintDeclaringType(result, navigator);
            DomTypeNodeBuilder.PrintAssembly(result, navigator);
            return(result.ToString());
        }
Beispiel #24
0
        string IAssemblyBrowserNodeBuilder.GetDescription(ITreeNavigator navigator)
        {
            Namespace     ns     = (Namespace)navigator.DataItem;
            StringBuilder result = new StringBuilder();

            if (!String.IsNullOrEmpty(ns.Name))
            {
                result.Append("<span font_family=\"monospace\">");
                result.Append(Ambience.GetString(ns.Name, OutputFlags.AssemblyBrowserDescription));
                result.Append("</span>");
                result.AppendLine();
            }
            DomTypeNodeBuilder.PrintAssembly(result, navigator);
            return(result.ToString());
        }
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon)
        {
            var method   = (IUnresolvedMethod)dataObject;
            var dt       = new DefaultResolvedTypeDefinition(GetContext(treeBuilder), method.DeclaringTypeDefinition);
            var resolved = (DefaultResolvedMethod)Resolve(treeBuilder, method, dt);

            label = Ambience.GetString(resolved, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup | OutputFlags.CompletionListFomat);

            if (method.IsPrivate || method.IsInternal)
            {
                label = DomMethodNodeBuilder.FormatPrivate(label);
            }

            icon = ImageService.GetPixbuf(resolved.GetStockIcon(), Gtk.IconSize.Menu);
        }
        public string GetDescription(ITreeNavigator navigator)
        {
            var           type     = (IUnresolvedTypeDefinition)navigator.DataItem;
            var           resolved = Resolve(navigator, type);
            StringBuilder result   = new StringBuilder();

            result.Append("<span font_family=\"monospace\">");
            result.Append(Ambience.GetString(resolved, OutputFlags.AssemblyBrowserDescription));
            result.Append("</span>");
            result.AppendLine();
            result.Append(String.Format(GettextCatalog.GetString("<b>Name:</b>\t{0}"), type.FullName));
            result.AppendLine();
            PrintAssembly(result, navigator);
            return(result.ToString());
        }
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, NodeInfo nodeInfo)
        {
            var property = (IUnresolvedProperty)dataObject;

            try {
                var resolved = Resolve(treeBuilder, property);
                nodeInfo.Label = Ambience.GetString(resolved, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup | OutputFlags.CompletionListFomat);
            } catch (Exception) {
                nodeInfo.Label = property.Name;
            }
            if (property.IsPrivate || property.IsInternal)
            {
                nodeInfo.Label = DomMethodNodeBuilder.FormatPrivate(nodeInfo.Label);
            }
            nodeInfo.Icon = Context.GetIcon(property.GetStockIcon());
        }
Beispiel #28
0
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, NodeInfo nodeInfo)
        {
            var type = (IUnresolvedTypeDefinition)dataObject;

            try {
                var resolved = Resolve(treeBuilder, type);
                nodeInfo.Label = Ambience.GetString(resolved, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup | OutputFlags.UseNETTypeNames);
            } catch (Exception) {
                nodeInfo.Label = type.Name;
            }
            if (type.IsPrivate)
            {
                nodeInfo.Label = DomMethodNodeBuilder.FormatPrivate(nodeInfo.Label);
            }
            nodeInfo.Icon = Context.GetIcon(type.GetStockIcon());
        }
        public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon)
        {
            var property = (IUnresolvedProperty)dataObject;

            try {
                var resolved = Resolve(treeBuilder, property);
                label = Ambience.GetString(resolved, OutputFlags.ClassBrowserEntries | OutputFlags.IncludeMarkup | OutputFlags.CompletionListFomat);
            } catch (Exception) {
                label = property.Name;
            }
            if (property.IsPrivate || property.IsInternal)
            {
                label = DomMethodNodeBuilder.FormatPrivate(label);
            }
            icon = ImageService.GetPixbuf(property.GetStockIcon(), Gtk.IconSize.Menu);
        }
Beispiel #30
0
        public override string GetMarkupText(Widget widget)
        {
            if (useFullName)
            {
                return(HighlightMatch(widget, Ambience.GetString(member, Flags), match));
            }
            OutputSettings settings = new OutputSettings(Flags | OutputFlags.IncludeMarkup);

            settings.EmitNameCallback = delegate(INode domVisitable, ref string outString) {
                if (domVisitable == member)
                {
                    outString = HighlightMatch(widget, outString, match);
                }
            };
            return(Ambience.GetString(member, settings));
        }