diff options
author | Lars Knoll <lars.knoll@digia.com> | 2014-05-08 20:49:23 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2014-07-22 13:49:16 +0200 |
commit | 6fa459deaf40f162b20b8f12c75ce80d4fa927b9 (patch) | |
tree | 57207f4b103255868854b562cbc3fc3288c53a9b /src/qml/qml/qqmltypewrapper.cpp | |
parent | a2a36a1cb647ca1c358646b39a1f0b0221a31f22 (diff) |
Convert TypeWrapper and ValueTypeWrapper
Change-Id: Ib1debebda1cc6dbfaf9c6dca40cde72800a2769b
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/qml/qqmltypewrapper.cpp')
-rw-r--r-- | src/qml/qml/qqmltypewrapper.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/qml/qml/qqmltypewrapper.cpp b/src/qml/qml/qqmltypewrapper.cpp index 809bccad15..958c51158c 100644 --- a/src/qml/qml/qqmltypewrapper.cpp +++ b/src/qml/qml/qqmltypewrapper.cpp @@ -56,18 +56,18 @@ using namespace QV4; DEFINE_OBJECT_VTABLE(QmlTypeWrapper); -QmlTypeWrapper::QmlTypeWrapper(QV8Engine *engine) - : Object(QV8Engine::getV4(engine)) +QmlTypeWrapper::Data::Data(QV8Engine *engine) + : Object::Data(QV8Engine::getV4(engine)) + , v8(engine) + , mode(IncludeEnums) { setVTable(staticVTable()); - d()->v8 = engine; - d()->mode = IncludeEnums; } -QmlTypeWrapper::~QmlTypeWrapper() +QmlTypeWrapper::Data::~Data() { - if (d()->typeNamespace) - d()->typeNamespace->release(); + if (typeNamespace) + typeNamespace->release(); } bool QmlTypeWrapper::isSingleton() const @@ -99,7 +99,7 @@ ReturnedValue QmlTypeWrapper::create(QV8Engine *v8, QObject *o, QQmlType *t, Typ ExecutionEngine *v4 = QV8Engine::getV4(v8); Scope scope(v4); - Scoped<QmlTypeWrapper> w(scope, new (v4->memoryManager) QmlTypeWrapper(v8)); + Scoped<QmlTypeWrapper> w(scope, new (v4) QmlTypeWrapper::Data(v8)); w->d()->mode = mode; w->d()->object = o; w->d()->type = t; return w.asReturnedValue(); } @@ -113,7 +113,7 @@ ReturnedValue QmlTypeWrapper::create(QV8Engine *v8, QObject *o, QQmlTypeNameCach ExecutionEngine *v4 = QV8Engine::getV4(v8); Scope scope(v4); - Scoped<QmlTypeWrapper> w(scope, new (v4->memoryManager) QmlTypeWrapper(v8)); + Scoped<QmlTypeWrapper> w(scope, new (v4) QmlTypeWrapper::Data(v8)); w->d()->mode = mode; w->d()->object = o; w->d()->typeNamespace = t; w->d()->importNamespace = importNamespace; t->addref(); return w.asReturnedValue(); @@ -282,7 +282,7 @@ PropertyAttributes QmlTypeWrapper::query(const Managed *m, String *name) void QmlTypeWrapper::destroy(Managed *that) { - static_cast<QmlTypeWrapper *>(that)->~QmlTypeWrapper(); + static_cast<QmlTypeWrapper *>(that)->d()->~Data(); } bool QmlTypeWrapper::isEqualTo(Managed *a, Managed *b) |