diff options
author | Mike Krüger <mkrueger@novell.com> | 2010-05-26 08:37:38 +0400 |
---|---|---|
committer | Mike Krüger <mkrueger@novell.com> | 2010-05-26 08:37:38 +0400 |
commit | caf9a9d46b965d8633efa7f96ad0699be5393cc6 (patch) | |
tree | 25ee9b632133b07f9d58b1b92e279741867fb4e4 /main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog | |
parent | 9c7d3066cf6a275bf3f6a4b576c183163b54e0da (diff) |
* MonoDevelop.Ide.NavigateToDialog/SearchResult.cs:
* MonoDevelop.Ide.NavigateToDialog/NavigateToDialog.cs: It's now
possible to search for fully qualified member names.
svn path=/trunk/monodevelop/; revision=157928
Diffstat (limited to 'main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog')
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog/NavigateToDialog.cs | 12 | ||||
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog/SearchResult.cs | 36 |
2 files changed, 24 insertions, 24 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog/NavigateToDialog.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog/NavigateToDialog.cs index 736c03d85a..e7b39e46d9 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog/NavigateToDialog.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog/NavigateToDialog.cs @@ -338,10 +338,14 @@ namespace MonoDevelop.Ide.NavigateToDialog internal SearchResult CheckMember (IMember member, string toMatch) { int rank; - string memberName = (member is IMethod && ((IMethod)member).IsConstructor) ? member.DeclaringType.Name : member.Name; - if (!MatchName (memberName, toMatch, out rank)) - return null; - return new MemberSearchResult (toMatch, memberName, rank, member); + bool useDeclaringTypeName = member is IMethod && (((IMethod)member).IsConstructor || ((IMethod)member).IsFinalizer); + string memberName = useDeclaringTypeName ? member.DeclaringType.Name : member.Name; + if (MatchName (memberName, toMatch, out rank)) + return new MemberSearchResult (toMatch, memberName, rank, member, false); + memberName = useDeclaringTypeName ? member.DeclaringType.FullName : member.FullName; + if (MatchName (memberName, toMatch, out rank)) + return new MemberSearchResult (toMatch, memberName, rank, member, true); + return null; } Dictionary<string, MatchResult> savedMatches = new Dictionary<string, MatchResult> (); diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog/SearchResult.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog/SearchResult.cs index a4adec7666..b2d8af4434 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog/SearchResult.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.NavigateToDialog/SearchResult.cs @@ -101,18 +101,10 @@ namespace MonoDevelop.Ide.NavigateToDialog class TypeSearchResult : MemberSearchResult { - bool useFullName; - public override string File { get { return ((IType)member).CompilationUnit.FileName; } } - protected override OutputFlags Flags { - get { - return OutputFlags.IncludeParameters | OutputFlags.IncludeGenerics | (useFullName ? OutputFlags.UseFullName : OutputFlags.None); - } - } - public override string Description { get { IType type = (IType)member; @@ -125,16 +117,8 @@ namespace MonoDevelop.Ide.NavigateToDialog } - public override string MarkupText { - get { - return useFullName ? HighlightMatch (Ambience.GetString (member, Flags | OutputFlags.IncludeMarkup), match) : base.MarkupText; - } - } - - - public TypeSearchResult (string match, string matchedString, int rank, IType type, bool useFullName) : base (match, matchedString, rank, type) + public TypeSearchResult (string match, string matchedString, int rank, IType type, bool useFullName) : base (match, matchedString, rank, type, useFullName) { - this.useFullName = useFullName; } } @@ -187,16 +171,19 @@ namespace MonoDevelop.Ide.NavigateToDialog class MemberSearchResult : SearchResult { + protected bool useFullName; protected IMember member; protected virtual OutputFlags Flags { get { - return OutputFlags.IncludeParameters | OutputFlags.IncludeGenerics; + return OutputFlags.IncludeParameters | OutputFlags.IncludeGenerics | (useFullName ? OutputFlags.UseFullName : OutputFlags.None); } } public override string MarkupText { get { + if (useFullName) + return HighlightMatch (Ambience.GetString (member, Flags | OutputFlags.IncludeMarkup), match); OutputSettings settings = new OutputSettings (Flags | OutputFlags.IncludeMarkup); settings.EmitNameCallback = delegate (INode domVisitable, ref string outString) { if (domVisitable == member) @@ -206,6 +193,14 @@ namespace MonoDevelop.Ide.NavigateToDialog } } + /* + public override string MarkupText { + get { + return useFullName ? HighlightMatch (Ambience.GetString (member, Flags | OutputFlags.IncludeMarkup), match) : base.MarkupText; + } + }*/ + + public override string PlainText { get { return Ambience.GetString (member, Flags); @@ -236,9 +231,10 @@ namespace MonoDevelop.Ide.NavigateToDialog } } - public MemberSearchResult (string match, string matchedString, int rank, IMember member) : base (match, matchedString, rank) + public MemberSearchResult (string match, string matchedString, int rank, IMember member, bool useFullName) : base (match, matchedString, rank) { - this.member= member; + this.member = member; + this.useFullName = useFullName; } protected Ambience Ambience { |