summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@theqtcompany.com>2014-10-15 12:59:27 +0300
committerMiikka Heikkinen <miikka.heikkinen@theqtcompany.com>2014-10-15 13:07:49 +0300
commitbafaf813356e308311bd1174b71e3c16c9fa0049 (patch)
tree3daf1c7825a40777c41287a24a4aafd8ba6133f8 /src
parent9f6123afc34fd4fb1ea3eb60636b11dc6d911103 (diff)
Fix scatter item autosizing.
Autosizing only accounted for freshly changed series when calculating the total item count visible in the graph. Change-Id: I7c0990123d3e3827c3518713f5389fedf91aca92 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/datavisualization/engine/scatter3drenderer.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/datavisualization/engine/scatter3drenderer.cpp b/src/datavisualization/engine/scatter3drenderer.cpp
index 8ccd0824..d2f085be 100644
--- a/src/datavisualization/engine/scatter3drenderer.cpp
+++ b/src/datavisualization/engine/scatter3drenderer.cpp
@@ -184,23 +184,25 @@ void Scatter3DRenderer::updateData()
foreach (SeriesRenderCache *baseCache, m_renderCacheList) {
ScatterSeriesRenderCache *cache = static_cast<ScatterSeriesRenderCache *>(baseCache);
- if (cache->isVisible() && cache->dataDirty()) {
+ if (cache->isVisible()) {
const QScatter3DSeries *currentSeries = cache->series();
ScatterRenderItemArray &renderArray = cache->renderArray();
QScatterDataProxy *dataProxy = currentSeries->dataProxy();
const QScatterDataArray &dataArray = *dataProxy->array();
int dataSize = dataArray.size();
totalDataSize += dataSize;
- if (dataSize != renderArray.size())
- renderArray.resize(dataSize);
+ if (cache->dataDirty()) {
+ if (dataSize != renderArray.size())
+ renderArray.resize(dataSize);
- for (int i = 0; i < dataSize; i++)
- updateRenderItem(dataArray.at(i), renderArray[i]);
+ for (int i = 0; i < dataSize; i++)
+ updateRenderItem(dataArray.at(i), renderArray[i]);
- if (m_cachedOptimizationHint.testFlag(QAbstract3DGraph::OptimizationStatic))
- cache->setStaticBufferDirty(true);
+ if (m_cachedOptimizationHint.testFlag(QAbstract3DGraph::OptimizationStatic))
+ cache->setStaticBufferDirty(true);
- cache->setDataDirty(false);
+ cache->setDataDirty(false);
+ }
}
}