diff options
author | Lars Knoll <lars.knoll@qt.io> | 2017-08-22 17:17:57 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2017-08-22 17:17:57 +0200 |
commit | f1aff1f2d495562460a87d351e62c06109045a3a (patch) | |
tree | 93e4659421a3dc1fc664b539bf7e48ce28f64e84 /src/qml/util | |
parent | 842ada7b04d68cd37df2556bf50b48d8a5f39ec4 (diff) | |
parent | 46ed14da325c6c0382c0bc54cacc347d2d7f2b0a (diff) |
Merge remote-tracking branch 'origin/dev' into wip/new-backend
Change-Id: Iff06429f948ac6cdec77a9e5bb8c5375c56fe705
Diffstat (limited to 'src/qml/util')
-rw-r--r-- | src/qml/util/qqmladaptormodel.cpp | 9 | ||||
-rw-r--r-- | src/qml/util/qqmladaptormodel_p.h | 5 | ||||
-rw-r--r-- | src/qml/util/qqmlpropertymap.cpp | 12 | ||||
-rw-r--r-- | src/qml/util/qqmlpropertymap.h | 6 |
4 files changed, 10 insertions, 22 deletions
diff --git a/src/qml/util/qqmladaptormodel.cpp b/src/qml/util/qqmladaptormodel.cpp index ae1c1a1e4f..99adbed897 100644 --- a/src/qml/util/qqmladaptormodel.cpp +++ b/src/qml/util/qqmladaptormodel.cpp @@ -521,16 +521,15 @@ public: QQmlDelegateModelItem *createItem( QQmlAdaptorModel &model, QQmlDelegateModelItemMetaType *metaType, - QQmlEngine *engine, int index) const override { VDMAbstractItemModelDataType *dataType = const_cast<VDMAbstractItemModelDataType *>(this); if (!metaObject) - dataType->initializeMetaType(model, engine); + dataType->initializeMetaType(model); return new QQmlDMAbstractItemModelData(metaType, dataType, index); } - void initializeMetaType(QQmlAdaptorModel &model, QQmlEngine *engine) + void initializeMetaType(QQmlAdaptorModel &model) { QMetaObjectBuilder builder; setModelDataType<QQmlDMAbstractItemModelData>(&builder, this); @@ -555,7 +554,7 @@ public: metaObject = builder.toMetaObject(); *static_cast<QMetaObject *>(this) = *metaObject; - propertyCache = new QQmlPropertyCache(QV8Engine::getV4(engine), metaObject); + propertyCache = new QQmlPropertyCache(metaObject); } }; @@ -669,7 +668,6 @@ public: QQmlDelegateModelItem *createItem( QQmlAdaptorModel &model, QQmlDelegateModelItemMetaType *metaType, - QQmlEngine *, int index) const override { return new QQmlDMListAccessorData( @@ -754,7 +752,6 @@ public: QQmlDelegateModelItem *createItem( QQmlAdaptorModel &model, QQmlDelegateModelItemMetaType *metaType, - QQmlEngine *, int index) const override { VDMObjectDelegateDataType *dataType = const_cast<VDMObjectDelegateDataType *>(this); diff --git a/src/qml/util/qqmladaptormodel_p.h b/src/qml/util/qqmladaptormodel_p.h index 78d964236e..7bbddcff07 100644 --- a/src/qml/util/qqmladaptormodel_p.h +++ b/src/qml/util/qqmladaptormodel_p.h @@ -82,7 +82,6 @@ public: virtual QQmlDelegateModelItem *createItem( QQmlAdaptorModel &, QQmlDelegateModelItemMetaType *, - QQmlEngine *, int) const { return 0; } virtual bool notify( @@ -122,8 +121,8 @@ public: inline int count() const { return qMax(0, accessors->count(*this)); } inline QVariant value(int index, const QString &role) const { return accessors->value(*this, index, role); } - inline QQmlDelegateModelItem *createItem(QQmlDelegateModelItemMetaType *metaType, QQmlEngine *engine, int index) { - return accessors->createItem(*this, metaType, engine, index); } + inline QQmlDelegateModelItem *createItem(QQmlDelegateModelItemMetaType *metaType, int index) { + return accessors->createItem(*this, metaType, index); } inline bool hasProxyObject() const { return list.type() == QQmlListAccessor::Instance || list.type() == QQmlListAccessor::ListProperty; } diff --git a/src/qml/util/qqmlpropertymap.cpp b/src/qml/util/qqmlpropertymap.cpp index 6e6554f2c3..b54e8d901a 100644 --- a/src/qml/util/qqmlpropertymap.cpp +++ b/src/qml/util/qqmlpropertymap.cpp @@ -186,9 +186,8 @@ int QQmlPropertyMapMetaObject::createProperty(const char *name, const char *valu Constructs a bindable map with parent object \a parent. */ QQmlPropertyMap::QQmlPropertyMap(QObject *parent) -: QObject(*allocatePrivate(), parent) +: QQmlPropertyMap(&staticMetaObject, parent) { - init(metaObject()); } /*! @@ -339,18 +338,13 @@ QVariant QQmlPropertyMap::updateValue(const QString &key, const QVariant &input) } /*! \internal */ -void QQmlPropertyMap::init(const QMetaObject *staticMetaObject) +QQmlPropertyMap::QQmlPropertyMap(const QMetaObject *staticMetaObject, QObject *parent) + : QObject(*(new QQmlPropertyMapPrivate), parent) { Q_D(QQmlPropertyMap); d->mo = new QQmlPropertyMapMetaObject(this, d, staticMetaObject); } -/*! \internal */ -QObjectPrivate *QQmlPropertyMap::allocatePrivate() -{ - return new QQmlPropertyMapPrivate; -} - /*! \fn void QQmlPropertyMap::valueChanged(const QString &key, const QVariant &value) This signal is emitted whenever one of the values in the map is changed. \a key diff --git a/src/qml/util/qqmlpropertymap.h b/src/qml/util/qqmlpropertymap.h index 01048f3662..8c5ecce48e 100644 --- a/src/qml/util/qqmlpropertymap.h +++ b/src/qml/util/qqmlpropertymap.h @@ -80,15 +80,13 @@ protected: template<class DerivedType> QQmlPropertyMap(DerivedType *derived, QObject *parentObj) - : QObject(*allocatePrivate(), parentObj) + : QQmlPropertyMap(&DerivedType::staticMetaObject, parentObj) { Q_UNUSED(derived) - init(&DerivedType::staticMetaObject); } private: - void init(const QMetaObject *staticMetaObject); - static QObjectPrivate *allocatePrivate(); + QQmlPropertyMap(const QMetaObject *staticMetaObject, QObject *parent); Q_DECLARE_PRIVATE(QQmlPropertyMap) Q_DISABLE_COPY(QQmlPropertyMap) |