aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmlvaluetypewrapper_p.h
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2014-04-30 18:49:40 +0200
committerSimon Hausmann <simon.hausmann@digia.com>2014-07-22 13:49:07 +0200
commita79214e69453f14d0af7ce0f47b82345a25b78a1 (patch)
treeb7c6cf7608dff07e434e6a1c56b41011000ea76b /src/qml/qml/qqmlvaluetypewrapper_p.h
parentd84b1535ddfcbd153402c0f5a13811461c4df162 (diff)
Convert QQmlValueTypeWrapper to the new storage scheme
Change-Id: Ibbba8652e2d3db8569f5fa69015c6e13fa2ae4c3 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/qml/qqmlvaluetypewrapper_p.h')
-rw-r--r--src/qml/qml/qqmlvaluetypewrapper_p.h20
1 files changed, 13 insertions, 7 deletions
diff --git a/src/qml/qml/qqmlvaluetypewrapper_p.h b/src/qml/qml/qqmlvaluetypewrapper_p.h
index d66dbbba0c..a7ed8e6ef1 100644
--- a/src/qml/qml/qqmlvaluetypewrapper_p.h
+++ b/src/qml/qml/qqmlvaluetypewrapper_p.h
@@ -68,9 +68,20 @@ namespace QV4 {
struct Q_QML_EXPORT QmlValueTypeWrapper : Object
{
- V4_OBJECT
-protected:
enum ObjectType { Reference, Copy };
+ struct Data : Object::Data {
+ QV8Engine *v8;
+ ObjectType objectType;
+ mutable QQmlValueType *type;
+ };
+ struct {
+ QV8Engine *v8;
+ ObjectType objectType;
+ mutable QQmlValueType *type;
+ } __data;
+
+ V4_OBJECT_NEW
+protected:
QmlValueTypeWrapper(QV8Engine *engine, ObjectType type);
~QmlValueTypeWrapper();
@@ -82,7 +93,6 @@ public:
QVariant toVariant() const;
bool isEqual(const QVariant& value);
-
static ReturnedValue get(Managed *m, const StringRef name, bool *hasProperty);
static void put(Managed *m, const StringRef name, const ValueRef value);
static void destroy(Managed *that);
@@ -91,10 +101,6 @@ public:
static QV4::ReturnedValue method_toString(CallContext *ctx);
- QV8Engine *v8;
- ObjectType objectType;
- mutable QQmlValueType *type;
-
static void initProto(ExecutionEngine *v4);
};