From 7dbf2183d2de5e28ec0ced17313bd086f568d9ce Mon Sep 17 00:00:00 2001 From: Marcus Tillmanns Date: Fri, 3 May 2013 10:17:46 +0200 Subject: [PATCH] * Patching QtQuick2 to allow simultaneous calls to Quick1 and Quick2's qmlRegisterType --- .../qtdeclarative/src/qml/qml/qqml.h | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/qt-everywhere-commercial-src/qtdeclarative/src/qml/qml/qqml.h b/qt-everywhere-commercial-src/qtdeclarative/src/qml/qml/qqml.h index b48a776..f9cdbe6 100644 --- a/qt-everywhere-commercial-src/qtdeclarative/src/qml/qml/qqml.h +++ b/qt-everywhere-commercial-src/qtdeclarative/src/qml/qml/qqml.h @@ -101,8 +101,12 @@ class QQmlPropertyValueInterceptor; listName[listLen+nameLen] = '>'; \ listName[listLen+nameLen+1] = '\0'; + void Q_QML_EXPORT qmlClearTypeRegistrations(); +namespace QtQuick2 +{ + template int qmlRegisterType() { @@ -414,6 +418,8 @@ int qmlRegisterCustomType(const char *uri, int versionMajor, int versionMinor, return QQmlPrivate::qmlregister(QQmlPrivate::TypeRegistration, &type); } +} + class QQmlContext; class QQmlEngine; class QJSValue; @@ -430,11 +436,14 @@ namespace QtQml { } using namespace QtQml; +namespace QtQuick2 +{ + template QObject *qmlAttachedPropertiesObject(const QObject *obj, bool create = true) { static int idx = -1; - return qmlAttachedPropertiesObject(&idx, obj, &T::staticMetaObject, create); + return QtQml::qmlAttachedPropertiesObject(&idx, obj, &T::staticMetaObject, create); } Q_QML_EXPORT void qmlRegisterBaseTypes(const char *uri, int versionMajor, int versionMinor); @@ -471,7 +480,6 @@ inline int qmlRegisterSingletonType(const char *uri, int versionMajor, int versi return QQmlPrivate::qmlregister(QQmlPrivate::SingletonRegistration, &api); } - inline int qmlRegisterType(const QUrl &url, const char *uri, int versionMajor, int versionMinor, const char *qmlName) { if (url.isRelative()) { @@ -491,6 +499,13 @@ inline int qmlRegisterType(const QUrl &url, const char *uri, int versionMajor, i return QQmlPrivate::qmlregister(QQmlPrivate::CompositeRegistration, &type); } +} + + + +using namespace QtQuick2; + + QT_END_NAMESPACE QML_DECLARE_TYPE(QObject) -- 1.7.11.msysgit.1