Esempio n. 1
0
 public override void FillDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 description) {
     description.ClearDescriptionText();
     FunctionScopeNode funcScope = ScopeNode as FunctionScopeNode;
     if (funcScope != null) {
         description.AddDescriptionText3("def ", VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
         var def = funcScope.Definition;
         GetFunctionDescription(def, (text, kind, arg) => {
             description.AddDescriptionText3(text, kind, arg);
         });
         description.AddDescriptionText3(null, VSOBDESCRIPTIONSECTION.OBDS_ENDDECL, null);
         if (def.Body.Documentation != null) {
             description.AddDescriptionText3("    " + def.Body.Documentation, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
         }
     } else {
         var classScope = ScopeNode as ClassScopeNode;
         if (classScope != null) {
             FillClassDescription(description, classScope);
         } else {
             var assign = ScopeNode as AssignmentScopeNode;
             if (assign != null) {
                 description.AddDescriptionText3("field ", VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
                 description.AddDescriptionText3(assign.Name, VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
                 description.AddDescriptionText3("\n", VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
                 description.AddDescriptionText3(null, VSOBDESCRIPTIONSECTION.OBDS_ENDDECL, null);
             }
         }
     }
 }
Esempio n. 2
0
        public override void FillDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 description)
        {
            description.ClearDescriptionText();

/*
 *          FunctionScopeNode funcScope = ScopeNode as FunctionScopeNode;
 *          if (funcScope != null) {
 *              description.AddDescriptionText3("def ", VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
 *              var def = funcScope.Definition;
 *              GetFunctionDescription(def, (text, kind, arg) => {
 *                  description.AddDescriptionText3(text, kind, arg);
 *              });
 *              description.AddDescriptionText3(null, VSOBDESCRIPTIONSECTION.OBDS_ENDDECL, null);
 *              if (def.Body.Documentation != null) {
 *                  description.AddDescriptionText3("    " + def.Body.Documentation, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
 *              }
 *          } else {
 *              var classScope = ScopeNode as ClassScopeNode;
 *              if (classScope != null) {
 *                  FillClassDescription(description, classScope);
 *              } else {
 *                  var assign = ScopeNode as AssignmentScopeNode;
 *                  if (assign != null) {
 *                      description.AddDescriptionText3("field ", VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
 *                      description.AddDescriptionText3(assign.Name, VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
 *                      description.AddDescriptionText3("\n", VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
 *                      description.AddDescriptionText3(null, VSOBDESCRIPTIONSECTION.OBDS_ENDDECL, null);
 *                  }
 *              }
 *          }
 */
        }
Esempio n. 3
0
 protected override void buildDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 obDescription)
 {
     obDescription.ClearDescriptionText();
     foreach (var element in description)
     {
         obDescription.AddDescriptionText3(element.Item1, element.Item2, null);
     }
 }
Esempio n. 4
0
 protected virtual void buildDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 description)
 {
     ThreadHelper.JoinableTaskFactory.Run(async delegate
     {
         await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync();
         description.ClearDescriptionText();
         description.AddDescriptionText3(name, VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
     });
 }
        int IVsSimpleObjectList2.FillDescription2(uint index, uint grfOptions, IVsObjectBrowserDescription3 pobDesc)
        {
            pobDesc.ClearDescriptionText();
            SQObjectLibraryNode node;

            if (GetChild(index, out node) && node._declaration != null)
            {
                pobDesc.AddDescriptionText3(node._declaration.GetDescription(), VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
                return(VSConstants.S_OK);
            }
            else
            {
                return(VSConstants.S_FALSE);
            }
        }
Esempio n. 6
0
        protected override void buildDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 obDescription)
        {
            ThreadHelper.JoinableTaskFactory.Run(async delegate
            {
                await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync();

                obDescription.ClearDescriptionText();
                try
                {
                    foreach (var element in description)
                    {
                        obDescription.AddDescriptionText3(element.Item1, element.Item2, null);
                    }
                }
                catch { }
            });
        }
Esempio n. 7
0
 public override void FillDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 description)
 {
     description.ClearDescriptionText();
     // TODO:
     //FunctionScopeNode funcScope = ScopeNode as FunctionScopeNode;
     //if (funcScope != null) {
     //    description.AddDescriptionText3("def ", VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
     //    var def = funcScope.Definition;
     //    GetFunctionDescription(def, (text, kind, arg) => {
     //        description.AddDescriptionText3(text, kind, arg);
     //    });
     //    description.AddDescriptionText3(null, VSOBDESCRIPTIONSECTION.OBDS_ENDDECL, null);
     //    if (def.Body.Documentation != null) {
     //        description.AddDescriptionText3("    " + def.Body.Documentation, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
     //    }
     //} else {
         description.AddDescriptionText3("class ", VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
         description.AddDescriptionText3(ScopeNode.Name, VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
     // }
 }
Esempio n. 8
0
 public override void FillDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 description)
 {
     description.ClearDescriptionText();
     // TODO:
     //FunctionScopeNode funcScope = ScopeNode as FunctionScopeNode;
     //if (funcScope != null) {
     //    description.AddDescriptionText3("def ", VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
     //    var def = funcScope.Definition;
     //    GetFunctionDescription(def, (text, kind, arg) => {
     //        description.AddDescriptionText3(text, kind, arg);
     //    });
     //    description.AddDescriptionText3(null, VSOBDESCRIPTIONSECTION.OBDS_ENDDECL, null);
     //    if (def.Body.Documentation != null) {
     //        description.AddDescriptionText3("    " + def.Body.Documentation, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
     //    }
     //} else {
     description.AddDescriptionText3("class ", VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
     description.AddDescriptionText3(ScopeNode.Name, VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
     // }
 }
Esempio n. 9
0
        public override void FillDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 description)
        {
            description.ClearDescriptionText();
            foreach (var value in _value.Values)
            {
                foreach (var desc in value.description)
                {
                    VSOBDESCRIPTIONSECTION kind;
                    switch (desc.kind)
                    {
                    case "enddecl": kind = VSOBDESCRIPTIONSECTION.OBDS_ENDDECL; break;

                    case "name": kind = VSOBDESCRIPTIONSECTION.OBDS_NAME; break;

                    case "param": kind = VSOBDESCRIPTIONSECTION.OBDS_PARAM; break;

                    case "comma": kind = VSOBDESCRIPTIONSECTION.OBDS_COMMA; break;

                    default: kind = VSOBDESCRIPTIONSECTION.OBDS_MISC; break;
                    }
                    description.AddDescriptionText3(desc.text, kind, null);
                }
            }
        }
Esempio n. 10
0
 public virtual void FillDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 description)
 {
     description.ClearDescriptionText();
     description.AddDescriptionText3(_name, VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
 }
Esempio n. 11
0
 protected virtual void FillDescription(_VSOBJDESCOPTIONS flagsArg, IVsObjectBrowserDescription3 description)
 {
     description.ClearDescriptionText();
     description.AddDescriptionText3(symbolText, VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
 }
Esempio n. 12
0
 protected virtual void FillDescription(_VSOBJDESCOPTIONS flagsArg, IVsObjectBrowserDescription3 description)
 {
     description.ClearDescriptionText();
     description.AddDescriptionText3(symbolText, VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
 }
Esempio n. 13
0
        public override void FillDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 description) {
            description.ClearDescriptionText();
            foreach (var value in _value.Values) {
                foreach (var desc in value.description) {
                    VSOBDESCRIPTIONSECTION kind;
                    switch (desc.kind) {
                        case "enddecl": kind = VSOBDESCRIPTIONSECTION.OBDS_ENDDECL; break;
                        case "name": kind = VSOBDESCRIPTIONSECTION.OBDS_NAME; break;
                        case "param": kind = VSOBDESCRIPTIONSECTION.OBDS_PARAM; break;
                        case "comma": kind = VSOBDESCRIPTIONSECTION.OBDS_COMMA; break;
                        default: kind = VSOBDESCRIPTIONSECTION.OBDS_MISC; break;

                    }
                    description.AddDescriptionText3(desc.text, kind, null);
                }
            }
        }
Esempio n. 14
0
        protected override void buildDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 description)
        {
            description.ClearDescriptionText();
            //
            string descText = this.Name;
            //
            string namesp    = "";
            string className = "";

            if (member != null)
            {
                if (member.Parent != null)
                {
                    if (member.Parent is IXType)
                    {
                        namesp    = ((IXType)member.Parent).Namespace;
                        className = ((IXType)member.Parent).Name;
                    }
                }
                //
                string modifier = "";
                string access   = "";
                if ((member is XTypeDefinition) && (member.Kind != Kind.Namespace))
                {
                    modifier = getModifierString(((XTypeDefinition)member).Modifiers);
                    access   = getAccessString(((XTypeDefinition)member).Visibility);
                }
                else if ((member is XMemberDefinition) && ((member.Kind != Kind.Function) && (member.Kind != Kind.Procedure)))
                {
                    modifier = getModifierString(((XMemberDefinition)member).Modifiers);
                    access   = getAccessString(((XMemberDefinition)member).Visibility);
                }
                //
                if (!String.IsNullOrEmpty(modifier))
                {
                    description.AddDescriptionText3(modifier, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
                }
                //
                if (!String.IsNullOrEmpty(access))
                {
                    description.AddDescriptionText3(access, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
                }
                //
                descText = member.Kind.DisplayName().ToUpper() + " ";
                description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
                descText = member.Name;
                description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
                // Parameters ?
                if (this.NodeType == LibraryNodeType.Members)
                {
                    if (((XMemberDefinition)member).HasParameters)
                    {
                        descText = "(";
                        description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
                        //
                        int paramNum = 1;
                        foreach (XVariable param in ((XMemberDefinition)member).Parameters)
                        {
                            descText = param.Name + " AS ";
                            description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_PARAM, null);
                            descText = param.TypeName;
                            //
                            IVsNavInfo navInfo = buildNavInfo(member.File, param.TypeName);
                            //
                            description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_TYPE, navInfo);
                            // Need a comma ?
                            if (paramNum < ((XMemberDefinition)member).ParameterCount)
                            {
                                paramNum++;
                                descText = ",";
                                description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_COMMA, null);
                            }
                        }
                        descText = ")";
                        description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
                    }
                }
                if (member.Kind.HasReturnType())
                {
                    descText = " AS ";
                    description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
                    descText = member.TypeName;
                    description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_TYPE, null);
                }

                //
                if ((member.Parent is XTypeDefinition) && (member.Parent.Kind == Kind.Class))
                {
                    descText = " CLASS ";
                    description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_MISC, null);
                    descText = className;
                    description.AddDescriptionText3(descText, VSOBDESCRIPTIONSECTION.OBDS_TYPE, null);
                }
                //
                description.AddDescriptionText3(null, VSOBDESCRIPTIONSECTION.OBDS_ENDDECL, null);
            }
        }
Esempio n. 15
0
 protected virtual void buildDescription(_VSOBJDESCOPTIONS flags, IVsObjectBrowserDescription3 description)
 {
     description.ClearDescriptionText();
     description.AddDescriptionText3(name, VSOBDESCRIPTIONSECTION.OBDS_NAME, null);
 }