summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2016-04-02 09:28:32 +0100
committerSean Harmer <sean.harmer@kdab.com>2016-04-10 18:05:15 +0000
commitaa2fc7f52df62c910b12c0cf8046c3087f6ffe94 (patch)
treeb76ffcb53d0ffae36bc2bf7e6243051ddff18503
parentb143847b28986b71f2cfdfd1cd290d5adf089035 (diff)
RenderSettings handles creation
Change-Id: Ib356c3b960ad7ef9aa937ca85e5f46b69e5cff31 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
-rw-r--r--src/render/backend/rendersettings.cpp13
-rw-r--r--src/render/backend/rendersettings_p.h2
2 files changed, 14 insertions, 1 deletions
diff --git a/src/render/backend/rendersettings.cpp b/src/render/backend/rendersettings.cpp
index 836666c4d..87ab1f58c 100644
--- a/src/render/backend/rendersettings.cpp
+++ b/src/render/backend/rendersettings.cpp
@@ -39,9 +39,10 @@
#include "rendersettings_p.h"
-#include <Qt3DCore/qscenepropertychange.h>
#include <Qt3DRender/QFrameGraphNode>
#include <Qt3DRender/private/abstractrenderer_p.h>
+#include <Qt3DRender/private/qrendersettings_p.h>
+#include <Qt3DCore/qscenepropertychange.h>
QT_BEGIN_NAMESPACE
@@ -65,6 +66,16 @@ void RenderSettings::updateFromPeer(Qt3DCore::QNode *peer)
m_renderPolicy = settings->renderPolicy();
}
+void RenderSettings::initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change)
+{
+ const auto typedChange = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<QRenderSettingsData>>(change);
+ const auto &data = typedChange->data;
+ m_activeFrameGraph = data.activeFrameGraphId;
+ m_renderPolicy = data.renderPolicy;
+ m_pickMethod = data.pickMethod;
+ m_pickResultMode = data.pickResultMode;
+}
+
void RenderSettings::cleanup()
{
m_pickMethod = QPickingSettings::BoundingVolumePicking;
diff --git a/src/render/backend/rendersettings_p.h b/src/render/backend/rendersettings_p.h
index 4ca179064..8da81b184 100644
--- a/src/render/backend/rendersettings_p.h
+++ b/src/render/backend/rendersettings_p.h
@@ -77,6 +77,8 @@ public:
QPickingSettings::PickResultMode pickResultMode() const { return m_pickResultMode; }
private:
+ void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) Q_DECL_FINAL;
+
QRenderSettings::RenderPolicy m_renderPolicy;
QPickingSettings::PickMethod m_pickMethod;
QPickingSettings::PickResultMode m_pickResultMode;