diff options
Diffstat (limited to 'src/qml/qml/qqmltype_p_p.h')
-rw-r--r-- | src/qml/qml/qqmltype_p_p.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/qml/qml/qqmltype_p_p.h b/src/qml/qml/qqmltype_p_p.h index 6a2d961de8..51f776178c 100644 --- a/src/qml/qml/qqmltype_p_p.h +++ b/src/qml/qml/qqmltype_p_p.h @@ -82,6 +82,18 @@ public: } } + const QQmlTypePrivate *attachedPropertiesBase(QQmlEnginePrivate *engine) const + { + for (const QQmlTypePrivate *d = this; d; d = d->resolveCompositeBaseType(engine).d.data()) { + if (d->regType == QQmlType::CppType) + return d->extraData.cd->attachedPropertiesType ? d : nullptr; + + if (d->regType != QQmlType::CompositeType) + return nullptr; + } + return nullptr; + } + bool isComposite() const { return regType == QQmlType::CompositeType || regType == QQmlType::CompositeSingletonType; |