public DocumentTabReferenceResult Create(IDocumentTabService documentTabService, IDocumentTabContent sourceContent, object @ref)
        {
            var addrRef = @ref as AddressReference;

            if (addrRef == null)
            {
                addrRef = (@ref as TextReference)?.Reference as AddressReference;
            }
            if (addrRef != null)
            {
                return(Create(addrRef, documentTabService.DocumentTreeView));
            }
            return(null);
        }
        public DocumentTabReferenceResult Create(IDocumentTabService documentTabService, IDocumentTabContent sourceContent, object @ref)
        {
            var textRef = @ref as TextReference;

            if (textRef != null)
            {
                if (textRef.Reference is IAssembly || textRef.Reference is ModuleDef || textRef.Reference is ModuleRef || textRef.Reference is NamespaceReference)
                {
                    return(null);
                }
                var result = CreateMemberRefResult(documentTabService, textRef.Reference);
                if (result != null)
                {
                    return(result);
                }

                return(CreateLocalRefResult(sourceContent, textRef));
            }

            return(CreateMemberRefResult(documentTabService, @ref));
        }
Пример #3
0
 public TabContentState(IDocumentTabContent documentTabContent, object serializedData)
 {
     this.DocumentTabContent = documentTabContent;
     this.SerializedData     = serializedData;
 }