Browse Source

Added option to display metadata tokens in the tree

pull/467/head
Yves Goergen 11 years ago
parent
commit
65e30ec0f6
  1. 18
      ILSpy/Options/DisplaySettings.cs
  2. 5
      ILSpy/Options/DisplaySettingsPanel.xaml
  3. 2
      ILSpy/Options/DisplaySettingsPanel.xaml.cs
  4. 9
      ILSpy/TreeNodes/AssemblyReferenceTreeNode.cs
  5. 9
      ILSpy/TreeNodes/BaseTypesEntryNode.cs
  6. 9
      ILSpy/TreeNodes/DerivedTypesEntryNode.cs
  7. 9
      ILSpy/TreeNodes/EventTreeNode.cs
  8. 11
      ILSpy/TreeNodes/FieldTreeNode.cs
  9. 5
      ILSpy/TreeNodes/MethodTreeNode.cs
  10. 9
      ILSpy/TreeNodes/ModuleReferenceTreeNode.cs
  11. 9
      ILSpy/TreeNodes/PropertyTreeNode.cs
  12. 10
      ILSpy/TreeNodes/TypeTreeNode.cs

18
ILSpy/Options/DisplaySettings.cs

@ -82,12 +82,28 @@ namespace ICSharpCode.ILSpy.Options @@ -82,12 +82,28 @@ namespace ICSharpCode.ILSpy.Options
}
}
}
bool showMetadataTokens;
public bool ShowMetadataTokens
{
get { return showMetadataTokens; }
set
{
if (showMetadataTokens != value)
{
showMetadataTokens = value;
OnPropertyChanged("ShowMetadataTokens");
}
}
}
public void CopyValues(DisplaySettings s)
{
this.SelectedFont = s.selectedFont;
this.SelectedFontSize = s.selectedFontSize;
this.ShowLineNumbers = s.showLineNumbers;
this.ShowMetadataTokens = s.showMetadataTokens;
}
}
}

5
ILSpy/Options/DisplaySettingsPanel.xaml

@ -58,7 +58,10 @@ @@ -58,7 +58,10 @@
</Grid>
</GroupBox>
<GroupBox Header="Other options" Grid.Row="1">
<CheckBox Margin="3,3" IsChecked="{Binding ShowLineNumbers}">Show line numbers</CheckBox>
<StackPanel Margin="3">
<CheckBox IsChecked="{Binding ShowLineNumbers}">Show line numbers</CheckBox>
<CheckBox IsChecked="{Binding ShowMetadataTokens}">Show metadata tokens</CheckBox>
</StackPanel>
</GroupBox>
</Grid>
</UserControl>

2
ILSpy/Options/DisplaySettingsPanel.xaml.cs

@ -100,6 +100,7 @@ namespace ICSharpCode.ILSpy.Options @@ -100,6 +100,7 @@ namespace ICSharpCode.ILSpy.Options
s.SelectedFont = new FontFamily((string)e.Attribute("Font") ?? "Consolas");
s.SelectedFontSize = (double?)e.Attribute("FontSize") ?? 10.0 * 4 / 3;
s.ShowLineNumbers = (bool?)e.Attribute("ShowLineNumbers") ?? false;
s.ShowMetadataTokens = (bool?) e.Attribute("ShowMetadataTokens") ?? false;
return s;
}
@ -114,6 +115,7 @@ namespace ICSharpCode.ILSpy.Options @@ -114,6 +115,7 @@ namespace ICSharpCode.ILSpy.Options
section.SetAttributeValue("Font", s.SelectedFont.Source);
section.SetAttributeValue("FontSize", s.SelectedFontSize);
section.SetAttributeValue("ShowLineNumbers", s.ShowLineNumbers);
section.SetAttributeValue("ShowMetadataTokens", s.ShowMetadataTokens);
XElement existingElement = root.Element("DisplaySettings");
if (existingElement != null)

9
ILSpy/TreeNodes/AssemblyReferenceTreeNode.cs

@ -18,6 +18,7 @@ @@ -18,6 +18,7 @@
using System;
using ICSharpCode.Decompiler;
using ICSharpCode.ILSpy.Options;
using Mono.Cecil;
namespace ICSharpCode.ILSpy.TreeNodes
@ -42,7 +43,13 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -42,7 +43,13 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
public override object Text {
get { return r.Name; }
get
{
return r.Name +
(DisplaySettingsPanel.CurrentDisplaySettings.ShowMetadataTokens ?
" @" + r.MetadataToken.ToInt32().ToString("x8") :
"");
}
}
public override object Icon {

9
ILSpy/TreeNodes/BaseTypesEntryNode.cs

@ -19,6 +19,7 @@ @@ -19,6 +19,7 @@
using System;
using System.Linq;
using ICSharpCode.Decompiler;
using ICSharpCode.ILSpy.Options;
using ICSharpCode.TreeView;
using Mono.Cecil;
@ -47,7 +48,13 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -47,7 +48,13 @@ namespace ICSharpCode.ILSpy.TreeNodes
public override object Text
{
get { return this.Language.TypeToString(tr, true); }
get
{
return this.Language.TypeToString(tr, true) +
(DisplaySettingsPanel.CurrentDisplaySettings.ShowMetadataTokens ?
" @" + tr.MetadataToken.ToInt32().ToString("x8") :
"");
}
}
public override object Icon

9
ILSpy/TreeNodes/DerivedTypesEntryNode.cs

@ -20,6 +20,7 @@ using System; @@ -20,6 +20,7 @@ using System;
using System.Collections.Generic;
using System.Threading;
using ICSharpCode.Decompiler;
using ICSharpCode.ILSpy.Options;
using Mono.Cecil;
namespace ICSharpCode.ILSpy.TreeNodes
@ -45,7 +46,13 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -45,7 +46,13 @@ namespace ICSharpCode.ILSpy.TreeNodes
public override object Text
{
get { return this.Language.TypeToString(type, true); }
get
{
return this.Language.TypeToString(type, true) +
(DisplaySettingsPanel.CurrentDisplaySettings.ShowMetadataTokens ?
" @" + type.MetadataToken.ToInt32().ToString("x8") :
"");
}
}
public override object Icon

9
ILSpy/TreeNodes/EventTreeNode.cs

@ -19,6 +19,7 @@ @@ -19,6 +19,7 @@
using System;
using System.Windows.Media;
using ICSharpCode.Decompiler;
using ICSharpCode.ILSpy.Options;
using Mono.Cecil;
namespace ICSharpCode.ILSpy.TreeNodes
@ -55,7 +56,13 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -55,7 +56,13 @@ namespace ICSharpCode.ILSpy.TreeNodes
public override object Text
{
get { return GetText(ev, this.Language); }
get
{
return GetText(ev, this.Language) +
(DisplaySettingsPanel.CurrentDisplaySettings.ShowMetadataTokens ?
" @" + ev.MetadataToken.ToInt32().ToString("x8") :
"");
}
}
public static object GetText(EventDefinition eventDef, Language language)

11
ILSpy/TreeNodes/FieldTreeNode.cs

@ -19,6 +19,7 @@ @@ -19,6 +19,7 @@
using System;
using System.Windows.Media;
using ICSharpCode.Decompiler;
using ICSharpCode.ILSpy.Options;
using Mono.Cecil;
namespace ICSharpCode.ILSpy.TreeNodes
@ -44,7 +45,15 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -44,7 +45,15 @@ namespace ICSharpCode.ILSpy.TreeNodes
public override object Text
{
get { return HighlightSearchMatch(field.Name, " : " + this.Language.TypeToString(field.FieldType, false, field)); }
get
{
return HighlightSearchMatch(
field.Name,
" : " + this.Language.TypeToString(field.FieldType, false, field) +
(DisplaySettingsPanel.CurrentDisplaySettings.ShowMetadataTokens ?
" @" + field.MetadataToken.ToInt32().ToString("x8") :
""));
}
}
public override object Icon

5
ILSpy/TreeNodes/MethodTreeNode.cs

@ -21,6 +21,7 @@ using System.Text; @@ -21,6 +21,7 @@ using System.Text;
using System.Windows.Media;
using ICSharpCode.Decompiler;
using ICSharpCode.ILSpy.Options;
using Mono.Cecil;
namespace ICSharpCode.ILSpy.TreeNodes
@ -68,6 +69,10 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -68,6 +69,10 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
b.Append(") : ");
b.Append(language.TypeToString(method.ReturnType, false, method.MethodReturnType));
if (DisplaySettingsPanel.CurrentDisplaySettings.ShowMetadataTokens)
{
b.Append(" @" + method.MetadataToken.ToInt32().ToString("x8"));
}
return HighlightSearchMatch(method.Name, b.ToString());
}

9
ILSpy/TreeNodes/ModuleReferenceTreeNode.cs

@ -18,6 +18,7 @@ @@ -18,6 +18,7 @@
using System;
using ICSharpCode.Decompiler;
using ICSharpCode.ILSpy.Options;
using Mono.Cecil;
namespace ICSharpCode.ILSpy.TreeNodes
@ -37,7 +38,13 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -37,7 +38,13 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
public override object Text {
get { return r.Name; }
get
{
return r.Name +
(DisplaySettingsPanel.CurrentDisplaySettings.ShowMetadataTokens ?
" @" + r.MetadataToken.ToInt32().ToString("x8") :
"");
}
}
public override object Icon {

9
ILSpy/TreeNodes/PropertyTreeNode.cs

@ -19,6 +19,7 @@ @@ -19,6 +19,7 @@
using System;
using System.Windows.Media;
using ICSharpCode.Decompiler;
using ICSharpCode.ILSpy.Options;
using Mono.Cecil;
namespace ICSharpCode.ILSpy.TreeNodes
@ -57,7 +58,13 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -57,7 +58,13 @@ namespace ICSharpCode.ILSpy.TreeNodes
public override object Text
{
get { return GetText(property, Language, isIndexer); }
get
{
return GetText(property, Language, isIndexer) +
(DisplaySettingsPanel.CurrentDisplaySettings.ShowMetadataTokens ?
" @" + property.MetadataToken.ToInt32().ToString("x8") :
"");
}
}
public static object GetText(PropertyDefinition property, Language language, bool? isIndexer = null)

10
ILSpy/TreeNodes/TypeTreeNode.cs

@ -22,6 +22,7 @@ using System.Linq; @@ -22,6 +22,7 @@ using System.Linq;
using System.Windows.Media;
using ICSharpCode.Decompiler;
using ICSharpCode.ILSpy.Options;
using Mono.Cecil;
namespace ICSharpCode.ILSpy.TreeNodes
@ -59,7 +60,14 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -59,7 +60,14 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
public override object Text {
get { return HighlightSearchMatch(this.Language.FormatTypeName(type)); }
get
{
return HighlightSearchMatch(
this.Language.FormatTypeName(type),
DisplaySettingsPanel.CurrentDisplaySettings.ShowMetadataTokens ?
" @" + type.MetadataToken.ToInt32().ToString("x8") :
"");
}
}
public override bool IsPublicAPI {

Loading…
Cancel
Save