Browse Source

NavigationText for metadata nodes

pull/3591/head
Jan Kučera 3 months ago
parent
commit
7f75589319
  1. 9
      ICSharpCode.Decompiler/Metadata/MetadataFile.cs
  2. 2
      ILSpy/Metadata/CoffHeaderTreeNode.cs
  3. 2
      ILSpy/Metadata/DataDirectoriesTreeNode.cs
  4. 2
      ILSpy/Metadata/DebugDirectory/DebugDirectoryEntryTreeNode.cs
  5. 2
      ILSpy/Metadata/DebugDirectoryTreeNode.cs
  6. 2
      ILSpy/Metadata/DebugMetadataTablesTreeNode.cs
  7. 2
      ILSpy/Metadata/DosHeaderTreeNode.cs
  8. 2
      ILSpy/Metadata/MetadataHeapTreeNode.cs
  9. 2
      ILSpy/Metadata/MetadataTableTreeNode.cs
  10. 2
      ILSpy/Metadata/MetadataTablesTreeNode.cs
  11. 2
      ILSpy/Metadata/OptionalHeaderTreeNode.cs

9
ICSharpCode.Decompiler/Metadata/MetadataFile.cs

@ -73,9 +73,12 @@ namespace ICSharpCode.Decompiler.Metadata
if (value == null) if (value == null)
{ {
var metadata = Metadata; var metadata = Metadata;
value = metadata.IsAssembly if (metadata.IsAssembly)
? metadata.GetString(metadata.GetAssemblyDefinition().Name) value = metadata.GetString(metadata.GetAssemblyDefinition().Name);
: metadata.GetString(metadata.GetModuleDefinition().Name); else if (metadata.DebugMetadataHeader == null) // standalone debug metadata does not contain module table
value = metadata.GetString(metadata.GetModuleDefinition().Name);
else
value = "debug metadata";
value = LazyInit.GetOrSet(ref name, value); value = LazyInit.GetOrSet(ref name, value);
} }
return value; return value;

2
ILSpy/Metadata/CoffHeaderTreeNode.cs

@ -43,6 +43,8 @@ namespace ICSharpCode.ILSpy.Metadata
public override object Text => "COFF Header"; public override object Text => "COFF Header";
public override object NavigationText => $"{Text} ({module.Name})";
public override object Icon => Images.Header; public override object Icon => Images.Header;
public override bool View(TabPageModel tabPage) public override bool View(TabPageModel tabPage)

2
ILSpy/Metadata/DataDirectoriesTreeNode.cs

@ -35,6 +35,8 @@ namespace ICSharpCode.ILSpy.Metadata
public override object Text => "Data Directories"; public override object Text => "Data Directories";
public override object NavigationText => $"{Text} ({module.Name})";
public override object Icon => Images.ListFolder; public override object Icon => Images.ListFolder;
public override object ExpandedIcon => Images.ListFolderOpen; public override object ExpandedIcon => Images.ListFolderOpen;

2
ILSpy/Metadata/DebugDirectory/DebugDirectoryEntryTreeNode.cs

@ -40,6 +40,8 @@ namespace ICSharpCode.ILSpy.Metadata
override public object Text => entry.Type.ToString(); override public object Text => entry.Type.ToString();
public override object NavigationText => $"{Text} ({module.Name})";
public override object Icon => Images.MetadataTable; public override object Icon => Images.MetadataTable;
public override void Decompile(Language language, ITextOutput output, DecompilationOptions options) public override void Decompile(Language language, ITextOutput output, DecompilationOptions options)

2
ILSpy/Metadata/DebugDirectoryTreeNode.cs

@ -40,6 +40,8 @@ namespace ICSharpCode.ILSpy.Metadata
public override object Text => "Debug Directory"; public override object Text => "Debug Directory";
public override object NavigationText => $"{Text} ({module.Name})";
public override object Icon => Images.ListFolder; public override object Icon => Images.ListFolder;
public override object ExpandedIcon => Images.ListFolderOpen; public override object ExpandedIcon => Images.ListFolderOpen;

2
ILSpy/Metadata/DebugMetadataTablesTreeNode.cs

@ -37,6 +37,8 @@ namespace ICSharpCode.ILSpy.Metadata
public override object Text => "Tables"; public override object Text => "Tables";
public override object NavigationText => $"{Text} ({metadataFile.Name})";
public override object Icon => Images.MetadataTableGroup; public override object Icon => Images.MetadataTableGroup;
protected override void LoadChildren() protected override void LoadChildren()

2
ILSpy/Metadata/DosHeaderTreeNode.cs

@ -36,6 +36,8 @@ namespace ICSharpCode.ILSpy.Metadata
public override object Text => "DOS Header"; public override object Text => "DOS Header";
public override object NavigationText => $"{Text} ({module.Name})";
public override object Icon => Images.Header; public override object Icon => Images.Header;
public override bool View(TabPageModel tabPage) public override bool View(TabPageModel tabPage)

2
ILSpy/Metadata/MetadataHeapTreeNode.cs

@ -33,6 +33,8 @@ namespace ICSharpCode.ILSpy.Metadata
public HandleKind Kind { get; } public HandleKind Kind { get; }
public override object NavigationText => $"{Text} ({metadataFile.Name})";
public override object Icon => Images.Heap; public override object Icon => Images.Heap;
public MetadataHeapTreeNode(HandleKind kind, MetadataFile metadataFile) public MetadataHeapTreeNode(HandleKind kind, MetadataFile metadataFile)

2
ILSpy/Metadata/MetadataTableTreeNode.cs

@ -39,6 +39,8 @@ namespace ICSharpCode.ILSpy.Metadata
public override object Text => $"{(int)Kind:X2} {Kind} ({metadataFile.Metadata.GetTableRowCount(Kind)})"; public override object Text => $"{(int)Kind:X2} {Kind} ({metadataFile.Metadata.GetTableRowCount(Kind)})";
public override object NavigationText => $"{(int)Kind:X2} {Kind} ({metadataFile.Name})";
public override object Icon => Images.MetadataTable; public override object Icon => Images.MetadataTable;
public MetadataTableTreeNode(TableIndex table, MetadataFile metadataFile) public MetadataTableTreeNode(TableIndex table, MetadataFile metadataFile)

2
ILSpy/Metadata/MetadataTablesTreeNode.cs

@ -39,6 +39,8 @@ namespace ICSharpCode.ILSpy.Metadata
public override object Text => "Tables"; public override object Text => "Tables";
public override object NavigationText => $"{Text} ({metadataFile.Name})";
public override object Icon => Images.MetadataTableGroup; public override object Icon => Images.MetadataTableGroup;
protected override void LoadChildren() protected override void LoadChildren()

2
ILSpy/Metadata/OptionalHeaderTreeNode.cs

@ -42,6 +42,8 @@ namespace ICSharpCode.ILSpy.Metadata
public override object Text => "Optional Header"; public override object Text => "Optional Header";
public override object NavigationText => $"{Text} ({module.Name})";
public override object Icon => Images.Header; public override object Icon => Images.Header;
public override bool View(ViewModels.TabPageModel tabPage) public override bool View(ViewModels.TabPageModel tabPage)

Loading…
Cancel
Save