예제 #1
0
        public ModuleNode(IOldToNewTupleMap <ModuleMetadata> modulesMap, ItemNodeBase parent, APIDiffInfo apiDiffInfo, bool shouldBeExpanded, FilterSettings filterSettings)
            : base(GetName(modulesMap), parent, apiDiffInfo, filterSettings)
        {
            this.ModulesMap = modulesMap;

            this.differenceDecoration = GetDifferenceDecoration();

            this.IsExpanded = shouldBeExpanded;
        }
예제 #2
0
        public NamespaceNode(string name, IList <IOldToNewTupleMap <TypeMetadata> > typesMap, IList <IMetadataDiffItem> diffItems, ItemNodeBase parent, FilterSettings filterSettings)
            : base(name, parent, filterSettings)
        {
            this.typesMap  = typesMap;
            this.diffItems = diffItems;

            this.IsExpanded = true;
        }
예제 #3
0
        public DecompiledMemberNodeBase(string name, ItemNodeBase parent, APIDiffInfo apiDiffInfo, FilterSettings filterSettings)
            : base(name, parent, apiDiffInfo, filterSettings)
        {
            DecompiledMemberNodeBase parentMember = parent as DecompiledMemberNodeBase;

            if (parentMember != null)
            {
                this.OldDecompileResult = parentMember.OldDecompileResult;
                this.NewDecompileResult = parentMember.NewDecompileResult;
            }
        }
예제 #4
0
        public TypeNode(IOldToNewTupleMap <TypeMetadata> typesMap, ItemNodeBase parent, APIDiffInfo apiDiffInfo, FilterSettings filterSettings)
            : base(GetMemberName(typesMap), parent, apiDiffInfo, filterSettings)
        {
            this.TypesMap = typesMap;

            TypeMetadata oldTypeMetadata = TypesMap.OldType;
            TypeMetadata newTypeMetadata = TypesMap.NewType;

            IDecompilationResults oldResult;
            IDecompilationResults newResult;

            if (oldTypeMetadata != null &&
                GlobalDecompilationResultsRepository.Instance.TryGetDecompilationResult(oldTypeMetadata.AssemblyPath, oldTypeMetadata.Module.TokenId, oldTypeMetadata.TokenId, out oldResult))
            {
                this.OldDecompileResult = oldResult;
            }
            if (newTypeMetadata != null &&
                GlobalDecompilationResultsRepository.Instance.TryGetDecompilationResult(newTypeMetadata.AssemblyPath, newTypeMetadata.Module.TokenId, newTypeMetadata.TokenId, out newResult))
            {
                this.NewDecompileResult = newResult;
            }
            this.differenceDecoration = GetDifferenceDecoration();
        }
예제 #5
0
        public AssemblyNode(IOldToNewTupleMap <string> typesMap, ItemNodeBase parent, APIDiffInfo apiDiffInfo, IProgressNotifier progressNotifier, FilterSettings filterSettings)
            : base(Path.GetFileName(typesMap.GetFirstNotNullItem()), parent, apiDiffInfo, filterSettings)
        {
            this.TypesMap = typesMap;

            this.progressNotifier = progressNotifier;

            this.areChildrenLoaded = false;
        }
예제 #6
0
 public TypeNode(string name, ItemNodeBase parent, APIDiffInfo apiDiffInfo, FilterSettings filterSettings)
     : base(name, parent, apiDiffInfo, filterSettings)
 {
 }
예제 #7
0
 public NestedTypeNode(IOldToNewTupleMap <TypeMetadata> typesMap, ItemNodeBase parent, APIDiffInfo apiDiffInfo, FilterSettings filterSettings)
     : base(GetMemberName(typesMap), parent, apiDiffInfo, filterSettings)
 {
     this.TypesMap = typesMap;
 }
예제 #8
0
        public ResourceNode(IOldToNewTupleMap <string> resourceMap, ItemNodeBase parent, FilterSettings filterSettings)
            : base(GetResourceName(resourceMap.GetFirstNotNullItem()), parent, filterSettings)
        {
            this.ResourceMap = resourceMap;

            this.differenceDecoration = GetDifferenceDecoration();

            // This node has no child items, so this removes the expander.
            this.LazyLoading = false;
        }
예제 #9
0
        public MemberNode(IOldToNewTupleMap <MemberMetadata> membersMap, ItemNodeBase parent, APIDiffInfo apiDiffInfo, FilterSettings filterSettings)
            : base(membersMap.GetFirstNotNullItem().GetSignature(), parent, apiDiffInfo, filterSettings)
        {
            this.membersMap = membersMap;

            this.differenceDecoration = GetDifferenceDecoration();

            // This node has no child items, so this removes the expander.
            this.LazyLoading = false;
        }
예제 #10
0
 public ItemNodeBase(string name, ItemNodeBase parentNode, APIDiffInfo apiDiffInfo, FilterSettings filterSettings)
     : this(name, parentNode, filterSettings)
 {
     this.apiDiffInfo = apiDiffInfo;
 }
예제 #11
0
 public ItemNodeBase(string name, ItemNodeBase parentNode, FilterSettings filterSettings)
     : this(name, filterSettings)
 {
     this.ParentNode = parentNode;
 }
예제 #12
0
        public DefaultResourceNode(IOldToNewTupleMap <string> typesMap, ItemNodeBase parent, IOldToNewTupleMap <GeneratedProjectOutputInfo> generationProjectInfoMap, FilterSettings filterSettings)
            : base("Resources", parent, filterSettings)
        {
            this.typesMap = typesMap;
            this.GenerationProjectInfoMap = generationProjectInfoMap;

            this.IsExpanded = true;
        }
예제 #13
0
        public XamlResourceNode(IOldToNewTupleMap <string> resourceMap, string name, ItemNodeBase parent, FilterSettings filterSettings)
            : base(name, parent, null, filterSettings)
        {
            this.ResourceMap = resourceMap;

            this.differenceDecoration = this.GetDifferenceDecoration();

            // This node has no child items, so this removes the expander.
            this.LazyLoading = false;
        }
예제 #14
0
        public FolderNode(IOldToNewTupleMap <string> folderMap, ItemNodeBase parent, APIDiffInfo apiDiffInfo, IProgressNotifier progressNotifier, FilterSettings filterSettings, bool loadChildrenAsync)
            : base(GetName(folderMap), parent, apiDiffInfo, filterSettings)
        {
            this.folderMap = folderMap;

            this.progressNotifier = progressNotifier;

            // This line needs to be before this.IsExpanded = true; in any case.
            this.loadChildrenAsync = loadChildrenAsync;

            this.IsExpanded = true;
        }