aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqml.cpp
diff options
context:
space:
mode:
authorFabian Kosmale <fabian.kosmale@qt.io>2021-06-02 16:12:43 +0200
committerFabian Kosmale <fabian.kosmale@qt.io>2021-06-02 23:16:29 +0200
commit4386de70cb0e88d3738acdf5220a3b0f1142996e (patch)
tree9b5456f49ae5037b7220e27b57ce1e94516b835f /src/qml/qml/qqml.cpp
parentba2928c787cf0988a7f6a7d424faea96ff707846 (diff)
Add QML_EXTRA_VERSION for adding extra QML versions
Currently internal, as the only user might be qtcharts. Change-Id: I40fc5295de6375c082d82ebeeb73bf4cd6dc7e4a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Diffstat (limited to 'src/qml/qml/qqml.cpp')
-rw-r--r--src/qml/qml/qqml.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/qml/qml/qqml.cpp b/src/qml/qml/qqml.cpp
index e0e9d9ea8a..70525f98a4 100644
--- a/src/qml/qml/qqml.cpp
+++ b/src/qml/qml/qqml.cpp
@@ -471,8 +471,10 @@ int QQmlPrivate::qmlregister(RegistrationType type, void *data)
QTypeRevision::fromMinorVersion(0));
const QTypeRevision removed = revisionClassInfo(
type.classInfoMetaObject, "QML.RemovedInVersion");
+ const QList<QTypeRevision> furtherRevisions = revisionClassInfos(type.classInfoMetaObject,
+ "QML.ExtraVersion");
- auto revisions = prepareRevisions(type.metaObject, added);
+ auto revisions = prepareRevisions(type.metaObject, added) + furtherRevisions;
if (type.attachedPropertiesMetaObject)
revisions += availableRevisions(type.attachedPropertiesMetaObject);
uniqueRevisions(&revisions, type.version, added);
@@ -524,8 +526,10 @@ int QQmlPrivate::qmlregister(RegistrationType type, void *data)
QTypeRevision::fromMinorVersion(0));
const QTypeRevision removed = revisionClassInfo(
type.classInfoMetaObject, "QML.RemovedInVersion");
+ const QList<QTypeRevision> furtherRevisions = revisionClassInfos(type.classInfoMetaObject,
+ "QML.ExtraVersion");
- auto revisions = prepareRevisions(type.instanceMetaObject, added);
+ auto revisions = prepareRevisions(type.instanceMetaObject, added) + furtherRevisions;
uniqueRevisions(&revisions, type.version, added);
for (QTypeRevision revision : qAsConst(revisions)) {
@@ -569,8 +573,9 @@ int QQmlPrivate::qmlregister(RegistrationType type, void *data)
QTypeRevision::fromMinorVersion(0));
const QTypeRevision removed = revisionClassInfo(
type.classInfoMetaObject, "QML.RemovedInVersion");
-
- QVector<QTypeRevision> revisions = { added };
+ QList<QTypeRevision> revisions = revisionClassInfos(type.classInfoMetaObject,
+ "QML.ExtraVersion");
+ revisions.append(added);
uniqueRevisions(&revisions, type.version, added);
for (QTypeRevision revision : qAsConst(revisions)) {