Ejemplo n.º 1
0
        protected override bool TryGetProperty(
            uint index,
            _VSOBJLISTELEMPROPID propertyId,
            out object pvar
            )
        {
            pvar = null;

            var listItem = GetListItem(index);

            if (listItem == null)
            {
                return(false);
            }

            switch (propertyId)
            {
            case _VSOBJLISTELEMPROPID.VSOBJLISTELEMPROPID_FULLNAME:
                pvar = listItem.FullNameText;
                return(true);

            case _VSOBJLISTELEMPROPID.VSOBJLISTELEMPROPID_HELPKEYWORD:
                if (listItem is SymbolListItem symbolListItem)
                {
                    var project = this.LibraryManager.Workspace.CurrentSolution.GetProject(
                        symbolListItem.ProjectId
                        );
                    if (project != null)
                    {
                        var compilation = project
                                          .GetCompilationAsync(CancellationToken.None)
                                          .WaitAndGetResult_ObjectBrowser(CancellationToken.None);

                        var symbol = symbolListItem.ResolveSymbol(compilation);
                        if (symbol != null)
                        {
                            var helpContextService =
                                project.LanguageServices.GetService <IHelpContextService>();

                            pvar = helpContextService.FormatSymbol(symbol);
                            return(true);
                        }
                    }
                }

                return(false);
            }

            return(false);
        }
Ejemplo n.º 2
0
        protected override bool TryGetProperty(uint index, _VSOBJLISTELEMPROPID propertyId, out object pvar)
        {
            pvar = null;

            var listItem = GetListItem(index);

            if (listItem == null)
            {
                return(false);
            }

            switch (propertyId)
            {
            case _VSOBJLISTELEMPROPID.VSOBJLISTELEMPROPID_FULLNAME:
                pvar = listItem.FullNameText;
                return(true);
            }

            return(false);
        }
Ejemplo n.º 3
0
 protected virtual bool TryGetProperty(uint index, _VSOBJLISTELEMPROPID propertyId, out object pvar)
 {
     pvar = null;
     return(false);
 }