diff options
author | nyamatongwe <unknown> | 2004-02-27 23:44:57 +0000 |
---|---|---|
committer | nyamatongwe <unknown> | 2004-02-27 23:44:57 +0000 |
commit | 680b754ab58cc5a63f246751a6986f4521fdef4b (patch) | |
tree | fc7ec35e25b4010a67ccee537017ff7f4bdc723a /src | |
parent | 74265ae94cf78f3fbea2e25c5207e8fa71dc3c61 (diff) | |
download | scintilla-mirror-680b754ab58cc5a63f246751a6986f4521fdef4b.tar.gz |
Patch from Jakub.
Only show exactly matching functions in calltips.
Avoid extra untitled windows when using check.if.already.open.
Diffstat (limited to 'src')
-rw-r--r-- | src/PropSet.cxx | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/PropSet.cxx b/src/PropSet.cxx index 41b2d5eff..a1ed39da6 100644 --- a/src/PropSet.cxx +++ b/src/PropSet.cxx @@ -838,8 +838,8 @@ const char *WordList::GetNearestWord(const char *wordStart, int searchLen /*= -1 // Found another word first = pivot; end = pivot - 1; - } - else if (cond > 0) + } + else if (cond > 0) start = pivot + 1; else if (cond <= 0) break; @@ -875,8 +875,8 @@ const char *WordList::GetNearestWord(const char *wordStart, int searchLen /*= -1 // Found another word first = pivot; end = pivot - 1; - } - else if (cond > 0) + } + else if (cond > 0) start = pivot + 1; else if (cond <= 0) break; @@ -937,8 +937,9 @@ char *WordList::GetNearestWords( const char *wordStart, int searchLen /*= -1*/, bool ignoreCase /*= false*/, - char otherSeparator /*= '\0'*/) { - int wordlen; // length of the word part (before the '(' brace) of the api array element + char otherSeparator /*= '\0'*/, + bool exactLen /*=false*/) { + unsigned int wordlen; // length of the word part (before the '(' brace) of the api array element SString wordsNear; wordsNear.setsizegrowth(1000); int start = 0; // lower bound of the api array block to search @@ -968,6 +969,8 @@ char *WordList::GetNearestWords( (0 == CompareNCaseInsensitive(wordStart, wordsNoCase[pivot], searchLen))) { wordlen = LengthWord(wordsNoCase[pivot], otherSeparator) + 1; + if (exactLen && wordlen != LengthWord(wordStart, otherSeparator) + 1) + break; wordsNear.append(wordsNoCase[pivot], wordlen, ' '); ++pivot; } @@ -994,6 +997,8 @@ char *WordList::GetNearestWords( (0 == strncmp(wordStart, words[pivot], searchLen))) { wordlen = LengthWord(words[pivot], otherSeparator) + 1; + if (exactLen && wordlen != LengthWord(wordStart, otherSeparator) + 1) + break; wordsNear.append(words[pivot], wordlen, ' '); ++pivot; } |