diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-10-29 14:01:42 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-10-30 10:06:08 +0200 |
commit | 84c156d3e2fcceeab608f401fbc638f2d01219b3 (patch) | |
tree | 74de2de1635c60645f4864d08f6afb941948aea8 /src/datavisualization/engine/scatter3drenderer_p.h | |
parent | 233d5c02638903e96687d580ada7188f0e6a9756 (diff) |
Selection overhaul
Selection modes are now proper flags, so you can easily mix and match
item, row, and column modes as you wish. Slice flag means automatic
slicing control - if user wishes to control slicing himself, he should
not set this mode flag.
Clicking an item on graph now emits clicked signal from renderer to
controller on all graphs instead of setting the selected item.
Controller will set the selected item based on this information.
Task-number: QTRD-2366
Task-number: QTRD-2491
Change-Id: I6251c42e22ea676613fbd36685e33574e6eb9a1a
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualization/engine/scatter3drenderer_p.h')
-rw-r--r-- | src/datavisualization/engine/scatter3drenderer_p.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/datavisualization/engine/scatter3drenderer_p.h b/src/datavisualization/engine/scatter3drenderer_p.h index f444f891..4a1f0b30 100644 --- a/src/datavisualization/engine/scatter3drenderer_p.h +++ b/src/datavisualization/engine/scatter3drenderer_p.h @@ -84,8 +84,8 @@ private: GLint m_shadowQualityMultiplier; GLfloat m_heightNormalizer; GLfloat m_scaleFactor; - QVector3D m_selection; - QVector3D m_previousSelection; + QVector3D m_clickedColor; + int m_selectedItemIndex; QSizeF m_areaSize; GLfloat m_dotSizeScale; @@ -94,6 +94,8 @@ private: ScatterRenderItemArray m_renderItemArray; + QDataVis::InputState m_cachedInputState; + public: explicit Scatter3DRenderer(Scatter3DController *controller); ~Scatter3DRenderer(); @@ -143,11 +145,11 @@ public slots: void updateSelectedItemIndex(int index); signals: - void selectionUpdated(QVector3D selection); - void selectedItemIndexChanged(int index); + void itemClicked(int index); private: QVector3D indexToSelectionColor(GLint index); + int selectionColorToIndex(const QVector3D &color); }; QT_DATAVISUALIZATION_END_NAMESPACE |