summaryrefslogtreecommitdiffstats
path: root/src/render/io
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2017-01-24 10:43:32 +0100
committerPaul Lemire <paul.lemire@kdab.com>2017-01-25 14:56:43 +0000
commit393ab950be4a622dc2616c061eeb4f2194991093 (patch)
treea8e83bb510c9cc58c1461eb2345f122925e09c34 /src/render/io
parent4f6bf6d53c50221977d3f6e2c04ced70d815e6ac (diff)
Allow to filter change events based on a track property
* QNode now has a PropertyTrackMode property * QScene contains a table of PropertyTrakcMode data * QPostman checks if a QNode is supposed to receive a change based on the information available in the QScene property track mode table * Unit tests updated and added for QPostman Change-Id: I3b88037a949020a917c81817f1451ef532065982 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/io')
-rw-r--r--src/render/io/scene.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/render/io/scene.cpp b/src/render/io/scene.cpp
index cf1ca4736..2057ffd3d 100644
--- a/src/render/io/scene.cpp
+++ b/src/render/io/scene.cpp
@@ -46,6 +46,7 @@
#include <Qt3DRender/private/qsceneloader_p.h>
#include <Qt3DRender/private/scenemanager_p.h>
#include <QtCore/qcoreapplication.h>
+#include <Qt3DCore/private/qpropertyupdatedchangebase_p.h>
QT_BEGIN_NAMESPACE
@@ -72,6 +73,7 @@ void Scene::setStatus(QSceneLoader::Status status)
e->setDeliveryFlags(Qt3DCore::QSceneChange::DeliverToAll);
e->setPropertyName("status");
e->setValue(QVariant::fromValue(status));
+ Qt3DCore::QPropertyUpdatedChangeBasePrivate::get(e.data())->m_isFinal = true;
notifyObservers(e);
}
@@ -114,6 +116,7 @@ void Scene::setSceneSubtree(Qt3DCore::QEntity *subTree)
e->setDeliveryFlags(Qt3DCore::QSceneChange::DeliverToAll);
e->setPropertyName("scene");
e->setValue(QVariant::fromValue(subTree));
+ Qt3DCore::QPropertyUpdatedChangeBasePrivate::get(e.data())->m_isFinal = true;
notifyObservers(e);
}