summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire350@gmail.com>2015-10-10 10:02:28 +0200
committerPaul Lemire <paul.lemire@kdab.com>2015-10-14 18:54:51 +0000
commitaaaf7207ceabec62365f5b7469db93776b0e0ff0 (patch)
treed3dbee6505459fd4d645603e307ed319cbf6a99d /src
parent8e7c1d28fbbd709c779947c05dc3ec9c7ee7d455 (diff)
RenderGeometryRenderer: monitor the enabled property
Unit tests updated accordingly Change-Id: I74c9e2926ac4c648ea35347762aa3fd0c5842146 Task-number: QTBUG-48630 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
Diffstat (limited to 'src')
-rw-r--r--src/render/geometry/geometryrenderer.cpp5
-rw-r--r--src/render/geometry/geometryrenderer_p.h2
2 files changed, 7 insertions, 0 deletions
diff --git a/src/render/geometry/geometryrenderer.cpp b/src/render/geometry/geometryrenderer.cpp
index a70405ea8..a7fb93818 100644
--- a/src/render/geometry/geometryrenderer.cpp
+++ b/src/render/geometry/geometryrenderer.cpp
@@ -56,6 +56,7 @@ GeometryRenderer::GeometryRenderer()
, m_primitiveRestart(false)
, m_primitiveType(QGeometryRenderer::Triangles)
, m_dirty(false)
+ , m_enabled(true)
, m_manager(Q_NULLPTR)
{
}
@@ -75,6 +76,7 @@ void GeometryRenderer::cleanup()
m_primitiveType = QGeometryRenderer::Triangles;
m_geometryId = Qt3DCore::QNodeId();
m_dirty = false;
+ m_enabled = true;
m_functor.reset();
}
@@ -94,6 +96,7 @@ void GeometryRenderer::updateFromPeer(Qt3DCore::QNode *peer)
m_restartIndex = geometryRenderer->restartIndex();
m_primitiveRestart = geometryRenderer->primitiveRestart();
m_primitiveType = geometryRenderer->primitiveType();
+ m_enabled = geometryRenderer->isEnabled();
if (geometryRenderer->geometry() != Q_NULLPTR)
m_geometryId = geometryRenderer->geometry()->id();
m_functor = geometryRenderer->geometryFunctor();
@@ -129,6 +132,8 @@ void GeometryRenderer::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e)
} else if (propertyName == QByteArrayLiteral("primitiveRestart")) {
m_primitiveRestart = propertyChange->value().value<bool>();
m_dirty = true;
+ } else if (propertyName == QByteArrayLiteral("enabled")) {
+ m_enabled = propertyChange->value().value<bool>();
} else if (propertyName == QByteArrayLiteral("primitiveType")) {
m_primitiveType = static_cast<QGeometryRenderer::PrimitiveType>(propertyChange->value().value<int>());
m_dirty = true;
diff --git a/src/render/geometry/geometryrenderer_p.h b/src/render/geometry/geometryrenderer_p.h
index f03b8daa4..2f974bf27 100644
--- a/src/render/geometry/geometryrenderer_p.h
+++ b/src/render/geometry/geometryrenderer_p.h
@@ -81,6 +81,7 @@ public:
inline bool primitiveRestart() const { return m_primitiveRestart; }
inline QGeometryRenderer::PrimitiveType primitiveType() const { return m_primitiveType; }
inline bool isDirty() const { return m_dirty; }
+ inline bool isEnabled() const { return m_enabled; }
inline QGeometryFunctorPtr geometryFunctor() const { return m_functor; }
void unsetDirty();
@@ -94,6 +95,7 @@ private:
bool m_primitiveRestart;
QGeometryRenderer::PrimitiveType m_primitiveType;
bool m_dirty;
+ bool m_enabled;
QGeometryFunctorPtr m_functor;
GeometryRendererManager *m_manager;
};