Esempio n. 1
0
		public IEnumerable<ITreeNodeData> Create(TreeNodeDataCreatorContext context) {
			var fileNode = context.Owner.Data as IDnSpyFileNode;
			Debug.Assert(fileNode != null);
			if (fileNode == null)
				yield break;

			bool hasPENode = HasPENode(fileNode);
			var peImage = fileNode.DnSpyFile.PEImage;
			Debug.Assert(!hasPENode || peImage != null);
			if (hasPENode && peImage != null)
				yield return new PENode(hexDocumentManager.Value, peImage, fileNode.DnSpyFile.ModuleDef as ModuleDefMD);
		}
Esempio n. 2
0
 internal void AddChildren(TreeNodeImpl impl)
 {
     foreach (var data in impl.Data.CreateChildren())
         AddSorted(impl, Create(data));
     foreach (var creator in treeViewManager.GetCreators(impl.Data.Guid)) {
         var context = new TreeNodeDataCreatorContext(impl);
         foreach (var data in creator.Create(context))
             AddSorted(impl, Create(data));
     }
 }
Esempio n. 3
0
		public IEnumerable<ITreeNodeData> Create(TreeNodeDataCreatorContext context) {
			yield return new ModuleChildNode();
		}