aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmltypewrapper.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2014-05-08 20:49:23 +0200
committerSimon Hausmann <simon.hausmann@digia.com>2014-07-22 13:49:16 +0200
commit6fa459deaf40f162b20b8f12c75ce80d4fa927b9 (patch)
tree57207f4b103255868854b562cbc3fc3288c53a9b /src/qml/qml/qqmltypewrapper.cpp
parenta2a36a1cb647ca1c358646b39a1f0b0221a31f22 (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.cpp20
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)