diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-04-30 15:36:19 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-05-02 10:53:05 +0300 |
commit | 13d1117087e66c77d2eea2f0a046fc556c19cb3c (patch) | |
tree | f003ec51145278cea0fd2d123da6c0478c961297 /src/datavisualization/engine/scatter3dcontroller_p.h | |
parent | 44b410f080c4820cea682c4d1278152d2767595c (diff) |
Scatter data changing optimization.
No longer reset the entire render item array if single item
changes, significantly speeding up this operation.
Task-number: QTRD-2190
Change-Id: Ia3de833b761dc6f24acff581ad79668f51c3e9c5
Reviewed-by: Titta Heikkala <titta.heikkala@digia.com>
Reviewed-by: Mika Salmela <mika.salmela@digia.com>
Diffstat (limited to 'src/datavisualization/engine/scatter3dcontroller_p.h')
-rw-r--r-- | src/datavisualization/engine/scatter3dcontroller_p.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/datavisualization/engine/scatter3dcontroller_p.h b/src/datavisualization/engine/scatter3dcontroller_p.h index 1194bc3a..db5a95f5 100644 --- a/src/datavisualization/engine/scatter3dcontroller_p.h +++ b/src/datavisualization/engine/scatter3dcontroller_p.h @@ -40,9 +40,11 @@ class QScatter3DSeries; struct Scatter3DChangeBitField { bool selectedItemChanged : 1; + bool itemChanged : 1; Scatter3DChangeBitField() : - selectedItemChanged(true) + selectedItemChanged(true), + itemChanged(false) { } }; @@ -51,8 +53,14 @@ class QT_DATAVISUALIZATION_EXPORT Scatter3DController : public Abstract3DControl { Q_OBJECT +public: + struct ChangeItem { + QScatter3DSeries *series; + int index; + }; private: Scatter3DChangeBitField m_changeTracker; + QVector<ChangeItem> m_changedItems; // Rendering Scatter3DRenderer *m_renderer; |