diff options
author | Paul Lemire <paul.lemire350@gmail.com> | 2015-10-10 10:02:28 +0200 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2015-10-14 18:54:51 +0000 |
commit | aaaf7207ceabec62365f5b7469db93776b0e0ff0 (patch) | |
tree | d3dbee6505459fd4d645603e307ed319cbf6a99d /src | |
parent | 8e7c1d28fbbd709c779947c05dc3ec9c7ee7d455 (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.cpp | 5 | ||||
-rw-r--r-- | src/render/geometry/geometryrenderer_p.h | 2 |
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; }; |