forked from qt-creator/qt-creator
Add lookup for members of builtin types to QmlLookupContext.
This commit is contained in:
@@ -204,7 +204,12 @@ QmlSymbol *QmlLookupContext::resolveProperty(const QString &name, QmlSymbol *sco
|
||||
|
||||
if (typeSymbol->isSymbolFromFile()) {
|
||||
return resolveProperty(name, typeSymbol->asSymbolFromFile(), typeSymbol->asSymbolFromFile()->fileName());
|
||||
} // TODO: internal types
|
||||
} else if (QmlBuildInSymbol *builtinSymbol = typeSymbol->asBuildInSymbol()) {
|
||||
foreach (QmlSymbol *member, builtinSymbol->members(true)) {
|
||||
if (member->isProperty() && member->name() == name)
|
||||
return member;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@@ -281,7 +281,7 @@ void tst_Lookup::localScopeLookup()
|
||||
symbol = context.resolve("x");
|
||||
QVERIFY(symbol);
|
||||
QVERIFY(symbol->isProperty());
|
||||
QVERIFY(parent->members().contains(symbol));
|
||||
// how do we know we got the right x?
|
||||
}
|
||||
}
|
||||
|
||||
@@ -307,7 +307,7 @@ void tst_Lookup::localRootLookup()
|
||||
}
|
||||
|
||||
// try lookup
|
||||
QmlSymbol *parent = scopes.top();
|
||||
QmlSymbol *parent = scopes.front();
|
||||
QmlLookupContext context(scopes, doc, snapshot(doc), typeSystem());
|
||||
|
||||
QmlSymbol *symbol;
|
||||
@@ -319,7 +319,6 @@ void tst_Lookup::localRootLookup()
|
||||
symbol = context.resolve("color");
|
||||
QVERIFY(symbol);
|
||||
QVERIFY(symbol->isProperty());
|
||||
QVERIFY(parent->members().contains(symbol));
|
||||
}
|
||||
|
||||
QTEST_APPLESS_MAIN(tst_Lookup)
|
||||
|
Reference in New Issue
Block a user