diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-07-03 15:12:34 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-07-04 13:08:51 +0300 |
commit | 0963cf7feda67225700f4291264e68c9060046f6 (patch) | |
tree | 7a3e03f116e5ff2466c6e1311c9d3de4ed4f8034 /src/datavis3dqml2/declarativebars.cpp | |
parent | 28ed69c2f6ba8520dc0202b94a4a3f8260ccda7e (diff) |
Data proxy implementation for bars.
Old QDataSet can be used with custom QOldDataProxy. This will be
removed entirely once we have a viable variant based proxy to use,
as it provides no real additional value over just using default
proxy directly.
Change-Id: Iee492152eec5d33b7a488053447fae6027409d71
Reviewed-by: Mika Salmela <mika.salmela@digia.com>
Diffstat (limited to 'src/datavis3dqml2/declarativebars.cpp')
-rw-r--r-- | src/datavis3dqml2/declarativebars.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/datavis3dqml2/declarativebars.cpp b/src/datavis3dqml2/declarativebars.cpp index 8a760113..8363c3d1 100644 --- a/src/datavis3dqml2/declarativebars.cpp +++ b/src/datavis3dqml2/declarativebars.cpp @@ -44,6 +44,7 @@ #include "qdataset.h" #include "qdataset_p.h" #include "qdatarow_p.h" +#include "qolddataproxy.h" #include <QtQuick/QQuickWindow> #include <QtGui/QOpenGLFramebufferObject> @@ -71,6 +72,8 @@ DeclarativeBars::DeclarativeBars(QQuickItem *parent) m_shared = new Bars3dController(boundingRect().toRect()); QObject::connect(m_shared, &Bars3dController::shadowQualityChanged, this, &DeclarativeBars::handleShadowQualityUpdate); + + m_shared->setDataProxy(new QOldDataProxy); } DeclarativeBars::~DeclarativeBars() @@ -99,6 +102,8 @@ QSGNode *DeclarativeBars::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData // Call initialize on each update paint node and let the shared code worry about it. m_shared->initializeOpenGL(); + // TODO: Setting stuff to controller in render thread. Isn't this incorrect? + // Check if properites have changed that need to be applied while on the SGRenderThread if (m_cachedState->m_isSampleSpaceSet) { m_shared->setupSampleSpace(m_cachedState->m_samplesRow, m_cachedState->m_samplesColumn); @@ -126,12 +131,12 @@ QSGNode *DeclarativeBars::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData } if (m_cachedState->m_dataRow) { - m_shared->addDataRow(m_cachedState->m_dataRow); + static_cast<QOldDataProxy *>(m_shared->m_data)->addDataRow(m_cachedState->m_dataRow); m_cachedState->m_dataRow = 0; } if (m_cachedState->m_dataSet) { - m_shared->addDataSet(m_cachedState->m_dataSet); + static_cast<QOldDataProxy *>(m_shared->m_data)->addDataSet(m_cachedState->m_dataSet); m_cachedState->m_dataSet = 0; } |