summaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qmlvmemetaobject_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/declarative/qml/qmlvmemetaobject_p.h')
-rw-r--r--src/declarative/qml/qmlvmemetaobject_p.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/declarative/qml/qmlvmemetaobject_p.h b/src/declarative/qml/qmlvmemetaobject_p.h
index 462f652..497d8f6 100644
--- a/src/declarative/qml/qmlvmemetaobject_p.h
+++ b/src/declarative/qml/qmlvmemetaobject_p.h
@@ -62,6 +62,7 @@
#include <private/qobject_p.h>
#include "qmlguard_p.h"
+#include "qmlcompiler_p.h"
QT_BEGIN_NAMESPACE
@@ -88,7 +89,7 @@ struct QmlVMEMetaData
int parameterCount;
int bodyOffset;
int bodyLength;
- int _dummy;
+ int scriptProgram;
};
PropertyData *propertyData() const {
@@ -108,18 +109,18 @@ class QmlRefCount;
class QmlVMEMetaObject : public QAbstractDynamicMetaObject
{
public:
- QmlVMEMetaObject(QObject *, const QMetaObject *, const QmlVMEMetaData *data,
- QmlRefCount * = 0);
+ QmlVMEMetaObject(QObject *obj, const QMetaObject *other, const QmlVMEMetaData *data,
+ QmlCompiledData *compiledData);
~QmlVMEMetaObject();
void registerInterceptor(int index, int valueIndex, QmlPropertyValueInterceptor *interceptor);
-
+ QScriptValue vmeMethod(int index);
protected:
virtual int metaCall(QMetaObject::Call _c, int _id, void **_a);
private:
QObject *object;
- QmlRefCount *ref;
+ QmlCompiledData *compiledData;
QmlGuard<QmlContext> ctxt;
const QmlVMEMetaData *metaData;
@@ -131,6 +132,9 @@ private:
QBitArray aInterceptors;
QHash<int, QPair<int, QmlPropertyValueInterceptor*> > interceptors;
+ QScriptValue *methods;
+ QScriptValue method(int);
+
QAbstractDynamicMetaObject *parent;
void listChanged(int);