diff options
author | Sean Harmer <sean.harmer@kdab.com> | 2017-02-10 11:49:19 +0000 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2017-02-10 11:49:19 +0000 |
commit | 905c5e5a366e24bb6d42b102f2e8a019270baec6 (patch) | |
tree | 947ba7ee0344be6f2c800fb770eabe123f021b5c /src/render/io | |
parent | d1271dba68f03610c27e87963653bf1600b5f659 (diff) | |
parent | e29f8cf68e2f1ed22244f84099589e9444eaf5ba (diff) |
Merge branch '5.8' into 5.9
Conflicts:
src/render/io/qsceneloader.cpp
src/render/picking/objectpicker.cpp
Change-Id: Ic36138954381820196eb81c5c59e6a91e7f40f33
Diffstat (limited to 'src/render/io')
-rw-r--r-- | src/render/io/qsceneloader.cpp | 20 | ||||
-rw-r--r-- | src/render/io/qsceneloader_p.h | 2 |
2 files changed, 15 insertions, 7 deletions
diff --git a/src/render/io/qsceneloader.cpp b/src/render/io/qsceneloader.cpp index b9408298f..5070bb9e5 100644 --- a/src/render/io/qsceneloader.cpp +++ b/src/render/io/qsceneloader.cpp @@ -207,6 +207,17 @@ void QSceneLoaderPrivate::populateEntityMap(QEntity *parentEntity) } } +void QSceneLoaderPrivate::setStatus(QSceneLoader::Status status) +{ + if (m_status != status) { + Q_Q(QSceneLoader); + m_status = status; + const bool wasBlocked = q->blockNotifications(true); + emit q->statusChanged(status); + q->blockNotifications(wasBlocked); + } +} + /*! The constructor creates an instance with the specified \a parent. */ @@ -253,7 +264,7 @@ void QSceneLoader::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) d->populateEntityMap(d->m_subTreeRoot); } } else if (e->propertyName() == QByteArrayLiteral("status")) { - setStatus(e->value().value<QSceneLoader::Status>()); + d->setStatus(e->value().value<QSceneLoader::Status>()); } } } @@ -371,12 +382,7 @@ QComponent *QSceneLoader::component(const QString &entityName, void QSceneLoader::setStatus(QSceneLoader::Status status) { Q_D(QSceneLoader); - if (d->m_status != status) { - d->m_status = status; - const bool wasBlocked = blockNotifications(true); - emit statusChanged(status); - blockNotifications(wasBlocked); - } + d->setStatus(status); } Qt3DCore::QNodeCreatedChangeBasePtr QSceneLoader::createNodeCreationChange() const diff --git a/src/render/io/qsceneloader_p.h b/src/render/io/qsceneloader_p.h index 13569ea70..45a6a1a4e 100644 --- a/src/render/io/qsceneloader_p.h +++ b/src/render/io/qsceneloader_p.h @@ -66,6 +66,8 @@ class QT3DRENDERSHARED_PRIVATE_EXPORT QSceneLoaderPrivate : public Qt3DCore::QCo public: QSceneLoaderPrivate(); + void setStatus(QSceneLoader::Status status); + Q_DECLARE_PUBLIC(QSceneLoader) void populateEntityMap(Qt3DCore::QEntity *parentEntity); |