aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqml.cpp
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2020-09-09 10:34:48 +0200
committerUlf Hermann <ulf.hermann@qt.io>2020-10-02 13:21:09 +0200
commitd621027babff9a30d56ab6af871a465108c9eaba (patch)
tree54a5ccff0410476538929e4ab1f1400075c0df81 /src/qml/qml/qqml.cpp
parented7719a3af58b9ba36a6fbaccd08c85b78f8a961 (diff)
V4: Rewrite qv4sequenceobject based on QMetaSequence
This avoids the template explosion and makes the mechanism extendable. You can now register additional anonymous sequential containers. Fixes: QTBUG-71574 Task-number: QTBUG-82443 Change-Id: I5b9ed9af1533a3b7df8fc5bb37bbb73b8304e592 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qml/qml/qqml.cpp')
-rw-r--r--src/qml/qml/qqml.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/qml/qml/qqml.cpp b/src/qml/qml/qqml.cpp
index 705017c6de..102bf22df5 100644
--- a/src/qml/qml/qqml.cpp
+++ b/src/qml/qml/qqml.cpp
@@ -433,6 +433,9 @@ int QQmlPrivate::qmlregister(RegistrationType type, void *data)
case CompositeSingletonRegistration:
dtype = QQmlMetaType::registerCompositeSingletonType(*reinterpret_cast<RegisterCompositeSingletonType *>(data));
break;
+ case SequentialContainerRegistration:
+ dtype = QQmlMetaType::registerSequentialContainer(*reinterpret_cast<RegisterSequentialContainer *>(data));
+ break;
default:
return -1;
}
@@ -454,6 +457,9 @@ void QQmlPrivate::qmlunregister(RegistrationType type, quintptr data)
QQmlMetaType::removeCachedUnitLookupFunction(
reinterpret_cast<QmlUnitCacheLookupFunction>(data));
break;
+ case SequentialContainerRegistration:
+ QQmlMetaType::unregisterSequentialContainer(data);
+ break;
case TypeRegistration:
case InterfaceRegistration:
case SingletonRegistration: