diff --git a/src/qml/qml/qqmlopenmetaobject.cpp b/src/qml/qml/qqmlopenmetaobject.cpp index a92d8227740306f005e345d64c9314012e135404..5928a6dfb750c6fee0069fdcb8823ee5c0af24d5 100644 --- a/src/qml/qml/qqmlopenmetaobject.cpp +++ b/src/qml/qml/qqmlopenmetaobject.cpp @@ -96,6 +96,23 @@ int QQmlOpenMetaObjectType::signalOffset() const return d->signalOffset; } +int QQmlOpenMetaObjectType::propertyCount() const +{ + return d->names.count(); +} + +QByteArray QQmlOpenMetaObjectType::propertyName(int idx) const +{ + Q_ASSERT(idx >= 0 && idx < d->names.count()); + + return d->mob.property(idx).name(); +} + +QMetaObject *QQmlOpenMetaObjectType::metaObject() const +{ + return d->mem; +} + int QQmlOpenMetaObjectType::createProperty(const QByteArray &name) { int id = d->mob.propertyCount(); diff --git a/src/qml/qml/qqmlopenmetaobject_p.h b/src/qml/qml/qqmlopenmetaobject_p.h index 1ca53df772f9facba6e2c445755735224427cca3..d037776150855d1215aa3059a6040d62193819d1 100644 --- a/src/qml/qml/qqmlopenmetaobject_p.h +++ b/src/qml/qml/qqmlopenmetaobject_p.h @@ -69,6 +69,10 @@ public: int propertyOffset() const; int signalOffset() const; + int propertyCount() const; + QByteArray propertyName(int) const; + QMetaObject *metaObject() const; + protected: virtual void propertyCreated(int, QMetaPropertyBuilder &); virtual void clear();