diff options
author | Aaron Kennedy <aaron.kennedy@nokia.com> | 2009-09-02 00:18:14 (GMT) |
---|---|---|
committer | Aaron Kennedy <aaron.kennedy@nokia.com> | 2009-09-02 00:18:29 (GMT) |
commit | 10b440d4621dc5b6b0380c566458facef2942085 (patch) | |
tree | 44768cb603f8686ab6f0c6856d8f42429c5094a9 /src/declarative/qml/qmlengine_p.h | |
parent | 7d566bc4eb5b5e47b48f28012fed24109a8dd735 (diff) | |
download | Qt-10b440d4621dc5b6b0380c566458facef2942085.zip Qt-10b440d4621dc5b6b0380c566458facef2942085.tar.gz Qt-10b440d4621dc5b6b0380c566458facef2942085.tar.bz2 |
Rework script binding method
Diffstat (limited to 'src/declarative/qml/qmlengine_p.h')
-rw-r--r-- | src/declarative/qml/qmlengine_p.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/declarative/qml/qmlengine_p.h b/src/declarative/qml/qmlengine_p.h index b595e7c..2c7409b 100644 --- a/src/declarative/qml/qmlengine_p.h +++ b/src/declarative/qml/qmlengine_p.h @@ -97,10 +97,17 @@ public: void init(); + QScriptClass::QueryFlags queryContext(const QString &name, uint *id, + QmlContext *); + QScriptValue propertyContext(const QScriptString &propName, QmlContext *, + uint id); + void setPropertyContext(const QScriptValue &, uint id); QScriptClass::QueryFlags queryObject(const QString &name, uint *id, QObject *); QScriptValue propertyObject(const QScriptString &propName, QObject *, uint id = 0); + void setPropertyObject(const QScriptValue &, uint id); + struct CapturedProperty { CapturedProperty(QObject *o, int c, int n) @@ -120,6 +127,20 @@ public: QScriptEngineDebugger *debugger; #endif + struct ResolveData { + ResolveData() : safetyCheckId(0) {} + int safetyCheckId; + + void clear() { + object = 0; context = 0; contextIndex = -1; isFunction = false; + } + QObject *object; + QmlContext *context; + + int contextIndex; + bool isFunction; + QmlMetaProperty property; + } resolveData; QmlContextScriptClass *contextClass; QmlObjectScriptClass *objectClass; QmlValueTypeScriptClass *valueTypeClass; |