summaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qdeclarativeengine.cpp
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@digia.com>2013-05-07 09:45:27 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-05-13 08:41:33 +0200
commit8c02d79c5b7d769c848c0441c4e9a6f1e0a41912 (patch)
treefb2cbcba71774810cebabdabbb799368b43aa156 /src/declarative/qml/qdeclarativeengine.cpp
parent100cfb7c71b5dfb507d7b470bf60df49c36d9e40 (diff)
Move exports conflicting with QtQml into namespace
Move exported qml* symbols that conflict with QtQml into an - automatically imported - namespace. This ensures apps can link against both QtDeclarative and QtQml. To keep the BC promise the old symbols are still exported. Task-number: QTBUG-29584 Change-Id: Icf4e586fee51d2bd82125398e2bb96d6dd355cc5 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Diffstat (limited to 'src/declarative/qml/qdeclarativeengine.cpp')
-rw-r--r--src/declarative/qml/qdeclarativeengine.cpp40
1 files changed, 39 insertions, 1 deletions
diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp
index 691fb713..fe33cc3d 100644
--- a/src/declarative/qml/qdeclarativeengine.cpp
+++ b/src/declarative/qml/qdeclarativeengine.cpp
@@ -1020,6 +1020,8 @@ QDeclarativeEngine::ObjectOwnership QDeclarativeEngine::objectOwnership(QObject
return ddata->indestructible?CppOwnership:JavaScriptOwnership;
}
+namespace QtDeclarative {
+
void qmlExecuteDeferred(QObject *object)
{
QDeclarativeData *data = QDeclarativeData::get(object);
@@ -1088,9 +1090,45 @@ QObject *qmlAttachedPropertiesObject(int *idCache, const QObject *object,
if (*idCache == -1 || !object)
return 0;
- return qmlAttachedPropertiesObjectById(*idCache, object, create);
+ return QtDeclarative::qmlAttachedPropertiesObjectById(*idCache, object, create);
+}
+
+} // namespace QtDeclarative
+
+#if QT_DEPRECATED_SINCE(5, 1)
+
+// Also define symbols outside namespace to keep binary compatibility with 5.0
+
+Q_DECLARATIVE_EXPORT void qmlExecuteDeferred(QObject *obj)
+{
+ QtDeclarative::qmlExecuteDeferred(obj);
+}
+
+Q_DECLARATIVE_EXPORT QDeclarativeContext *qmlContext(const QObject *obj)
+{
+ return QtDeclarative::qmlContext(obj);
+}
+
+Q_DECLARATIVE_EXPORT QDeclarativeEngine *qmlEngine(const QObject *obj)
+{
+ return QtDeclarative::qmlEngine(obj);
+}
+
+Q_DECLARATIVE_EXPORT QObject *qmlAttachedPropertiesObjectById(int id, const QObject * obj,
+ bool create)
+{
+ return QtDeclarative::qmlAttachedPropertiesObjectById(id, obj, create);
}
+Q_DECLARATIVE_EXPORT QObject *qmlAttachedPropertiesObject(int *idCache, const QObject *object,
+ const QMetaObject *attachedMetaObject,
+ bool create)
+{
+ return QtDeclarative::qmlAttachedPropertiesObject(idCache, object, attachedMetaObject, create);
+}
+
+#endif // QT_DEPRECATED_SINCE(5, 1)
+
QDeclarativeDebuggingEnabler::QDeclarativeDebuggingEnabler()
{
#ifndef QDECLARATIVE_NO_DEBUG_PROTOCOL