diff options
author | Miikka Heikkinen <miikka.heikkinen@theqtcompany.com> | 2014-10-15 12:59:27 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@theqtcompany.com> | 2014-10-15 13:07:49 +0300 |
commit | bafaf813356e308311bd1174b71e3c16c9fa0049 (patch) | |
tree | 3daf1c7825a40777c41287a24a4aafd8ba6133f8 /src | |
parent | 9f6123afc34fd4fb1ea3eb60636b11dc6d911103 (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.cpp | 18 |
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); + } } } |