Browse Source

Preparations for highlighting the search match.

pull/1/head
Daniel Grunwald 15 years ago
parent
commit
b338c41e15
  1. 9
      ILSpy/MainWindow.xaml.cs
  2. 2
      ILSpy/TreeNodes/AssemblyTreeNode.cs
  3. 2
      ILSpy/TreeNodes/EventTreeNode.cs
  4. 2
      ILSpy/TreeNodes/FieldTreeNode.cs
  5. 6
      ILSpy/TreeNodes/ILSpyTreeNode.cs
  6. 3
      ILSpy/TreeNodes/MethodTreeNode.cs
  7. 2
      ILSpy/TreeNodes/NamespaceTreeNode.cs
  8. 2
      ILSpy/TreeNodes/PropertyTreeNode.cs
  9. 2
      ILSpy/TreeNodes/TypeTreeNode.cs

9
ILSpy/MainWindow.xaml.cs

@ -90,7 +90,7 @@ namespace ICSharpCode.ILSpy @@ -90,7 +90,7 @@ namespace ICSharpCode.ILSpy
if (assemblyList.Assemblies.Count == 0)
LoadInitialAssemblies();
SelectNode(FindNodeByPath(sessionSettings.ActiveTreeViewPath));
SelectNode(FindNodeByPath(sessionSettings.ActiveTreeViewPath, true));
}
void LoadInitialAssemblies()
@ -138,17 +138,22 @@ namespace ICSharpCode.ILSpy @@ -138,17 +138,22 @@ namespace ICSharpCode.ILSpy
}
}
SharpTreeNode FindNodeByPath(string[] path)
SharpTreeNode FindNodeByPath(string[] path, bool returnBestMatch)
{
if (path == null)
return null;
SharpTreeNode node = treeView.Root;
SharpTreeNode bestMatch = node;
foreach (var element in path) {
if (node == null)
break;
bestMatch = node;
node.EnsureLazyChildren();
node = node.Children.FirstOrDefault(c => c.ToString() == element);
}
if (returnBestMatch)
return node ?? bestMatch;
else
return node;
}

2
ILSpy/TreeNodes/AssemblyTreeNode.cs

@ -74,7 +74,7 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -74,7 +74,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
public override object Text {
get { return shortName; }
get { return HighlightSearchMatch(shortName); }
}
public override object Icon {

2
ILSpy/TreeNodes/EventTreeNode.cs

@ -42,7 +42,7 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -42,7 +42,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
public override object Text {
get { return ev.Name + " : " + this.Language.TypeToString(ev.EventType); }
get { return HighlightSearchMatch(ev.Name, " : " + this.Language.TypeToString(ev.EventType)); }
}
public override object Icon {

2
ILSpy/TreeNodes/FieldTreeNode.cs

@ -41,7 +41,7 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -41,7 +41,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
public override object Text {
get { return field.Name + " : " + this.Language.TypeToString(field.FieldType); }
get { return HighlightSearchMatch(field.Name, " : " + this.Language.TypeToString(field.FieldType)); }
}
public override object Icon {

6
ILSpy/TreeNodes/ILSpyTreeNode.cs

@ -61,6 +61,12 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -61,6 +61,12 @@ namespace ICSharpCode.ILSpy.TreeNodes
return FilterResult.Hidden;
}
protected object HighlightSearchMatch(string text, string suffix = null)
{
// TODO: implement highlighting the search match
return text + suffix;
}
public virtual void Decompile(Language language, ITextOutput output, DecompilationOptions options)
{
}

3
ILSpy/TreeNodes/MethodTreeNode.cs

@ -44,7 +44,6 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -44,7 +44,6 @@ namespace ICSharpCode.ILSpy.TreeNodes
public override object Text {
get {
StringBuilder b = new StringBuilder();
b.Append(method.Name);
b.Append('(');
for (int i = 0; i < method.Parameters.Count; i++) {
if (i > 0) b.Append(", ");
@ -52,7 +51,7 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -52,7 +51,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
b.Append(") : ");
b.Append(this.Language.TypeToString(method.ReturnType));
return b.ToString();
return HighlightSearchMatch(method.Name, b.ToString());
}
}

2
ILSpy/TreeNodes/NamespaceTreeNode.cs

@ -41,7 +41,7 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -41,7 +41,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
public override object Text {
get { return name; }
get { return HighlightSearchMatch(name); }
}
public override object Icon {

2
ILSpy/TreeNodes/PropertyTreeNode.cs

@ -44,7 +44,7 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -44,7 +44,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
public override object Text {
get { return property.Name + " : " + this.Language.TypeToString(property.PropertyType); }
get { return HighlightSearchMatch(property.Name, " : " + this.Language.TypeToString(property.PropertyType)); }
}
public override object Icon {

2
ILSpy/TreeNodes/TypeTreeNode.cs

@ -59,7 +59,7 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -59,7 +59,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
}
public override object Text {
get { return type.Name; }
get { return HighlightSearchMatch(type.Name); }
}
public bool IsPublicAPI {

Loading…
Cancel
Save