theide: Navigator fix

git-svn-id: svn://ultimatepp.org/upp/trunk@1248 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2009-05-30 06:39:30 +00:00
parent ca60682054
commit 9c082c948d
2 changed files with 4 additions and 3 deletions

View file

@ -116,7 +116,7 @@ String FilterWhile(const char *s, int (*filter)(int))
WString Filter(const wchar *s, int (*filter)(int))
{
String result;
WString result;
while(*s) {
int c = (*filter)((byte)*s++);
if(c) result.Cat(c);
@ -126,7 +126,7 @@ WString Filter(const wchar *s, int (*filter)(int))
WString FilterWhile(const wchar *s, int (*filter)(int))
{
String result;
WString result;
while(*s) {
int c = (*filter)((byte)*s++);
if(!c) break;

View file

@ -180,6 +180,7 @@ void CodeBrowser::LoadScope()
String scope = file < 0 ? String(x) : String();
int q = CodeBase().Find(scope);
bool filematch = file >= 0 && MatchCib(GetFileText(GetCppFile(file)), find);
bool scopematch = !filematch && MatchCib(scope, find);
if(q >= 0) {
const Array<CppItem>& n = CodeBase()[q];
VectorMap<String, bool> inherited;
@ -189,7 +190,7 @@ void CodeBrowser::LoadScope()
for(int i = 0; i < n.GetCount(); i = file < 0 ? FindNext(n, i) : i + 1) {
CppItemInfo m;
(CppItem&) m = n[i];
if((find.GetCount() && m.uname.StartsWith(find) || filematch && m.file == file) && set.Find(m.qitem) < 0) {
if((find.GetCount() && m.uname.StartsWith(find) || filematch && m.file == file || scopematch) && set.Find(m.qitem) < 0) {
set.Add(m.qitem);
int q = inherited.Find(m.qitem);
if(q >= 0) {