diff options
author | Lars Knoll <lars.knoll@digia.com> | 2014-04-29 16:59:16 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2014-07-22 13:49:07 +0200 |
commit | d84b1535ddfcbd153402c0f5a13811461c4df162 (patch) | |
tree | b333a170e2e34b8529ce19c747f5e70de814e836 /src/qml/qml/qqmltypewrapper_p.h | |
parent | 07e27d030fb181bd9d9c38de6ee08ad15a9171fd (diff) |
Convert type wrapper to new data layout
Change-Id: Ie569c4419addf31fc0297bbc4acdf08269a3e80e
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/qml/qqmltypewrapper_p.h')
-rw-r--r-- | src/qml/qml/qqmltypewrapper_p.h | 33 |
1 files changed, 22 insertions, 11 deletions
diff --git a/src/qml/qml/qqmltypewrapper_p.h b/src/qml/qml/qqmltypewrapper_p.h index 355a6751a9..aaf35bdcd9 100644 --- a/src/qml/qml/qqmltypewrapper_p.h +++ b/src/qml/qml/qqmltypewrapper_p.h @@ -68,13 +68,33 @@ namespace QV4 { struct Q_QML_EXPORT QmlTypeWrapper : Object { - V4_OBJECT + enum TypeNameMode { IncludeEnums, ExcludeEnums }; + + struct Data : Object::Data { + QV8Engine *v8; + TypeNameMode mode; + QPointer<QObject> object; + + QQmlType *type; + QQmlTypeNameCache *typeNamespace; + const void *importNamespace; + }; + struct { + QV8Engine *v8; + TypeNameMode mode; + QPointer<QObject> object; + + QQmlType *type; + QQmlTypeNameCache *typeNamespace; + const void *importNamespace; + } __data; + + V4_OBJECT_NEW private: QmlTypeWrapper(QV8Engine *engine); ~QmlTypeWrapper(); public: - enum TypeNameMode { IncludeEnums, ExcludeEnums }; bool isSingleton() const; @@ -89,17 +109,8 @@ public: static PropertyAttributes query(const Managed *, StringRef name); static void destroy(Managed *that); -protected: static bool isEqualTo(Managed *that, Managed *o); -private: - QV8Engine *v8; - TypeNameMode mode; - QPointer<QObject> object; - - QQmlType *type; - QQmlTypeNameCache *typeNamespace; - const void *importNamespace; }; } |