Browse Source

fix navigation on fields.

pull/285/head
Eusebiu Marcu 15 years ago
parent
commit
50dc19d0d2
  1. 2
      ICSharpCode.Decompiler/Ast/TextOutputFormatter.cs
  2. 2
      ICSharpCode.Decompiler/ITextOutput.cs
  3. 4
      ICSharpCode.Decompiler/PlainTextOutput.cs
  4. 4
      ILSpy/TextView/AvalonEditTextOutput.cs

2
ICSharpCode.Decompiler/Ast/TextOutputFormatter.cs

@ -47,7 +47,7 @@ namespace ICSharpCode.Decompiler.Ast
{ {
var definition = GetCurrentDefinition(); var definition = GetCurrentDefinition();
if (definition != null) { if (definition != null) {
output.WriteDefinition(identifier, definition); output.WriteDefinition(identifier, definition, false);
return; return;
} }

2
ICSharpCode.Decompiler/ITextOutput.cs

@ -32,7 +32,7 @@ namespace ICSharpCode.Decompiler
void Write(char ch); void Write(char ch);
void Write(string text); void Write(string text);
void WriteLine(); void WriteLine();
void WriteDefinition(string text, object definition); void WriteDefinition(string text, object definition, bool isLocal = true);
void WriteReference(string text, object reference, bool isLocal = false); void WriteReference(string text, object reference, bool isLocal = false);
void AddDebuggerMemberMapping(MemberMapping memberMapping); void AddDebuggerMemberMapping(MemberMapping memberMapping);

4
ICSharpCode.Decompiler/PlainTextOutput.cs

@ -56,7 +56,7 @@ namespace ICSharpCode.Decompiler
public abstract void Write(char ch); public abstract void Write(char ch);
public abstract void Write(string text); public abstract void Write(string text);
public abstract void WriteLine(); public abstract void WriteLine();
public abstract void WriteDefinition(string text, object definition); public abstract void WriteDefinition(string text, object definition, bool isLocal);
public abstract void WriteReference(string text, object reference, bool isLocal); public abstract void WriteReference(string text, object reference, bool isLocal);
public abstract void MarkFoldStart(string collapsedText, bool defaultCollapsed); public abstract void MarkFoldStart(string collapsedText, bool defaultCollapsed);
public abstract void MarkFoldEnd(); public abstract void MarkFoldEnd();
@ -142,7 +142,7 @@ namespace ICSharpCode.Decompiler
column = 1; column = 1;
} }
public override void WriteDefinition(string text, object definition) public override void WriteDefinition(string text, object definition, bool isLocal)
{ {
Write(text); Write(text);
} }

4
ILSpy/TextView/AvalonEditTextOutput.cs

@ -204,14 +204,14 @@ namespace ICSharpCode.ILSpy.TextView
} }
} }
public override void WriteDefinition(string text, object definition) public override void WriteDefinition(string text, object definition, bool isLocal)
{ {
WriteIndent(); WriteIndent();
int start = this.TextLength; int start = this.TextLength;
b.Append(text); b.Append(text);
int end = this.TextLength; int end = this.TextLength;
this.DefinitionLookup.AddDefinition(definition, this.TextLength); this.DefinitionLookup.AddDefinition(definition, this.TextLength);
references.Add(new ReferenceSegment { StartOffset = start, EndOffset = end, Reference = definition, IsLocal = true, IsLocalTarget = true }); references.Add(new ReferenceSegment { StartOffset = start, EndOffset = end, Reference = definition, IsLocal = isLocal, IsLocalTarget = true });
} }
public override void WriteReference(string text, object reference, bool isLocal) public override void WriteReference(string text, object reference, bool isLocal)

Loading…
Cancel
Save