summaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qmlengine_p.h
diff options
context:
space:
mode:
authorAaron Kennedy <aaron.kennedy@nokia.com>2009-09-02 00:18:14 (GMT)
committerAaron Kennedy <aaron.kennedy@nokia.com>2009-09-02 00:18:29 (GMT)
commit10b440d4621dc5b6b0380c566458facef2942085 (patch)
tree44768cb603f8686ab6f0c6856d8f42429c5094a9 /src/declarative/qml/qmlengine_p.h
parent7d566bc4eb5b5e47b48f28012fed24109a8dd735 (diff)
downloadQt-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.h21
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;