QML: Remove separate registration for QQmlListProperty<QObject>

QQmlListProperty<QObject> is just the list type of QObject. We don't
need it twice.

Task-number: QTBUG-101143
Change-Id: I5a64bb176662e200cd4ce3666d5806cfbe1858b3
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
This commit is contained in:
Ulf Hermann 2023-11-13 11:34:48 +01:00
parent 128d31cde0
commit 63783a21ab
2 changed files with 6 additions and 10 deletions

View File

@ -150,14 +150,6 @@ Module {
Signal { name: "destruction" } Signal { name: "destruction" }
} }
Component {
file: "qqmllist.h"
name: "QQmlListProperty<QObject>"
extension: "Array"
accessSemantics: "sequence"
valueType: "QObject"
}
Component { Component {
file: "qobject.h" file: "qobject.h"
name: "QObjectList" name: "QObjectList"

View File

@ -72,8 +72,6 @@ QQmlJSTypeResolver::QQmlJSTypeResolver(QQmlJSImporter *importer)
Q_ASSERT(m_varType); Q_ASSERT(m_varType);
m_jsValueType = builtinTypes.type(u"QJSValue"_s).scope; m_jsValueType = builtinTypes.type(u"QJSValue"_s).scope;
Q_ASSERT(m_jsValueType); Q_ASSERT(m_jsValueType);
m_listPropertyType = builtinTypes.type(u"QQmlListProperty<QObject>"_s).scope;
Q_ASSERT(m_listPropertyType);
m_qObjectType = builtinTypes.type(u"QObject"_s).scope; m_qObjectType = builtinTypes.type(u"QObject"_s).scope;
Q_ASSERT(m_qObjectType); Q_ASSERT(m_qObjectType);
m_qObjectListType = builtinTypes.type(u"QObjectList"_s).scope; m_qObjectListType = builtinTypes.type(u"QObjectList"_s).scope;
@ -85,6 +83,12 @@ QQmlJSTypeResolver::QQmlJSTypeResolver(QQmlJSImporter *importer)
m_arrayPrototype = builtinTypes.type(u"ArrayPrototype"_s).scope; m_arrayPrototype = builtinTypes.type(u"ArrayPrototype"_s).scope;
Q_ASSERT(m_arrayPrototype); Q_ASSERT(m_arrayPrototype);
m_listPropertyType = m_qObjectType->listType();
Q_ASSERT(m_listPropertyType->internalName() == u"QQmlListProperty<QObject>"_s);
Q_ASSERT(m_listPropertyType->accessSemantics() == QQmlJSScope::AccessSemantics::Sequence);
Q_ASSERT(m_listPropertyType->valueTypeName() == u"QObject"_s);
Q_ASSERT(m_listPropertyType);
QQmlJSScope::Ptr emptyType = QQmlJSScope::create(); QQmlJSScope::Ptr emptyType = QQmlJSScope::create();
emptyType->setAccessSemantics(QQmlJSScope::AccessSemantics::None); emptyType->setAccessSemantics(QQmlJSScope::AccessSemantics::None);
m_emptyType = emptyType; m_emptyType = emptyType;