diff options
Diffstat (limited to 'src/qml/qml/qqmlengine.cpp')
-rw-r--r-- | src/qml/qml/qqmlengine.cpp | 31 |
1 files changed, 14 insertions, 17 deletions
diff --git a/src/qml/qml/qqmlengine.cpp b/src/qml/qml/qqmlengine.cpp index 0fd07ea209..af44d737a2 100644 --- a/src/qml/qml/qqmlengine.cpp +++ b/src/qml/qml/qqmlengine.cpp @@ -201,33 +201,26 @@ void QQmlEnginePrivate::defineModule() { const char uri[] = "QtQml"; - qmlRegisterType<QQmlComponent>(uri, 2, 0, "Component"); - qmlRegisterType<QObject>(uri, 2, 0, "QtObject"); - qmlRegisterType<QQmlBind>(uri, 2, 0, "Binding"); - qmlRegisterType<QQmlBind, 8>(uri, 2, 8, "Binding"); // Only available in >= 2.8 - qmlRegisterType<QQmlBind, 14>(uri, 2, 14, "Binding"); - - // TODO: We won't need Connections to be a custom type anymore once we can drop the - // automatic signal handler inference from undeclared properties. - qmlRegisterCustomType<QQmlConnections>(uri, 2, 0, "Connections", new QQmlConnectionsParser); - qmlRegisterCustomType<QQmlConnections, 3>(uri, 2, 3, "Connections", new QQmlConnectionsParser); // Only available in QtQml >= 2.3 - + qmlRegisterTypesAndRevisions< + QObjectForeign, #if QT_CONFIG(qml_animation) - qmlRegisterType<QQmlTimer>(uri, 2, 0, "Timer"); + QQmlTimer, #endif - - qmlRegisterType<QQmlLoggingCategory>(uri, 2, 8, "LoggingCategory"); // Only available in >= 2.8 - qmlRegisterType<QQmlLoggingCategory, 12>(uri, 2, 12, "LoggingCategory"); // Only available in >= 2.12 - #if QT_CONFIG(qml_locale) - qmlRegisterUncreatableType<QQmlLocale>(uri, 2, 2, "Locale", QQmlEngine::tr("Locale cannot be instantiated. Use Qt.locale()")); + QQmlLocale, #endif + QQmlComponent, + QQmlBind, + QQmlConnections, + QQmlLoggingCategory + >(uri, 2); } #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void QQmlEnginePrivate::registerQuickTypes() { // Don't add anything here. These are only for backwards compatibility. + // Also, don't use qmlRegisterTypesAndRevisions as that will auto-add future revisions. const char uri[] = "QtQuick"; @@ -236,13 +229,17 @@ void QQmlEnginePrivate::registerQuickTypes() qmlRegisterType<QQmlBind>(uri, 2, 0, "Binding"); qmlRegisterType<QQmlBind, 8>(uri, 2, 8, "Binding"); qmlRegisterCustomType<QQmlConnections>(uri, 2, 0, "Connections", new QQmlConnectionsParser); + + // Connections revision 3 was added in QtQml 2.3, but only in QtQuick 2.7. qmlRegisterCustomType<QQmlConnections, 3>(uri, 2, 7, "Connections", new QQmlConnectionsParser); + #if QT_CONFIG(qml_animation) qmlRegisterType<QQmlTimer>(uri, 2, 0,"Timer"); #endif qmlRegisterType<QQmlLoggingCategory>(uri, 2, 8, "LoggingCategory"); qmlRegisterType<QQmlLoggingCategory, 12>(uri, 2, 12, "LoggingCategory"); #if QT_CONFIG(qml_locale) + // Locale was added in QtQuick 2.0 and in QtQml 2.2 qmlRegisterUncreatableType<QQmlLocale>(uri, 2, 0, "Locale", QQmlEngine::tr("Locale cannot be instantiated. Use Qt.locale()")); #endif } |