summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2016-04-02 09:24:58 +0100
committerSean Harmer <sean.harmer@kdab.com>2016-04-10 18:05:12 +0000
commitb143847b28986b71f2cfdfd1cd290d5adf089035 (patch)
treefaa84fd898e55cdb23dae105c7d20c099273255d
parent3d904bac0d01d110ed648975c3f379d035af3b52 (diff)
QRenderSettings creates creation changes
Change-Id: I2565b933c7319130ba7eee6e9316df2d12f5936e Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
-rw-r--r--src/render/frontend/qrendersettings.cpp14
-rw-r--r--src/render/frontend/qrendersettings.h1
-rw-r--r--src/render/frontend/qrendersettings_p.h8
3 files changed, 22 insertions, 1 deletions
diff --git a/src/render/frontend/qrendersettings.cpp b/src/render/frontend/qrendersettings.cpp
index 21f3c7906..c9343fc1b 100644
--- a/src/render/frontend/qrendersettings.cpp
+++ b/src/render/frontend/qrendersettings.cpp
@@ -37,9 +37,9 @@
**
****************************************************************************/
-#include "qframegraphnode.h"
#include "qrendersettings.h"
#include "qrendersettings_p.h"
+#include "qframegraphnode.h"
QT_BEGIN_NAMESPACE
@@ -139,6 +139,18 @@ void QRenderSettings::copy(const QNode *ref)
d_func()->m_renderPolicy = object->d_func()->m_renderPolicy;
}
+Qt3DCore::QNodeCreatedChangeBasePtr QRenderSettings::createNodeCreationChange() const
+{
+ auto creationChange = Qt3DCore::QNodeCreatedChangePtr<QRenderSettingsData>::create(this);
+ auto &data = creationChange->data;
+ Q_D(const QRenderSettings);
+ data.activeFrameGraphId = qIdForNode(d->m_activeFrameGraph);
+ data.renderPolicy = d->m_renderPolicy;
+ data.pickMethod = d->m_pickingSettings.pickMethod();
+ data.pickResultMode = d->m_pickingSettings.pickResultMode();
+ return creationChange;
+}
+
} // namespace Qt3Drender
QT_END_NAMESPACE
diff --git a/src/render/frontend/qrendersettings.h b/src/render/frontend/qrendersettings.h
index 530427a89..4f990b410 100644
--- a/src/render/frontend/qrendersettings.h
+++ b/src/render/frontend/qrendersettings.h
@@ -91,6 +91,7 @@ private:
QT3D_CLONEABLE(QRenderSettings)
Q_PRIVATE_SLOT(d_func(), void _q_onPickingMethodChanged(QPickingSettings::PickMethod))
Q_PRIVATE_SLOT(d_func(), void _q_onPickResultModeChanged(QPickingSettings::PickResultMode))
+ Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const Q_DECL_OVERRIDE;
};
} // namespace Qt3Drender
diff --git a/src/render/frontend/qrendersettings_p.h b/src/render/frontend/qrendersettings_p.h
index e3ac4cb97..efbd7f8f1 100644
--- a/src/render/frontend/qrendersettings_p.h
+++ b/src/render/frontend/qrendersettings_p.h
@@ -76,6 +76,14 @@ public:
Q_DECLARE_PUBLIC(QRenderSettings)
};
+struct QRenderSettingsData
+{
+ Qt3DCore::QNodeId activeFrameGraphId;
+ QRenderSettings::RenderPolicy renderPolicy;
+ QPickingSettings::PickMethod pickMethod;
+ QPickingSettings::PickResultMode pickResultMode;
+};
+
} // namespace Qt3Drender
QT_END_NAMESPACE