summaryrefslogtreecommitdiffstats
path: root/src/datavis3dqml2/declarativebars.cpp
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2013-07-03 15:12:34 +0300
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2013-07-04 13:08:51 +0300
commit0963cf7feda67225700f4291264e68c9060046f6 (patch)
tree7a3e03f116e5ff2466c6e1311c9d3de4ed4f8034 /src/datavis3dqml2/declarativebars.cpp
parent28ed69c2f6ba8520dc0202b94a4a3f8260ccda7e (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.cpp9
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;
}