summaryrefslogtreecommitdiffstats
path: root/src/datavis3d/engine/scatter3drenderer_p.h
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2013-08-22 13:02:38 +0300
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2013-08-27 07:41:29 +0300
commite26bc838a8b2a5c6ce5013992a81c4b9ad040514 (patch)
treed57c5f93bd88491087ca5b3fac46e82909cb7b1f /src/datavis3d/engine/scatter3drenderer_p.h
parentfb11df914d9a548675916f51466822f5263b8ceb (diff)
Add selection signaling for scatter
+ Fix crashes associated with selection + Optimized selection color handling Task-number: QTRD-2132 Task-number: QTRD-2208 Change-Id: Ie38c6779591fb0467cffb052edf7609f6677278a Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavis3d/engine/scatter3drenderer_p.h')
-rw-r--r--src/datavis3d/engine/scatter3drenderer_p.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/datavis3d/engine/scatter3drenderer_p.h b/src/datavis3d/engine/scatter3drenderer_p.h
index 2fb81855..12fa7a04 100644
--- a/src/datavis3d/engine/scatter3drenderer_p.h
+++ b/src/datavis3d/engine/scatter3drenderer_p.h
@@ -60,7 +60,6 @@ private:
// Internal state
ScatterRenderItem *m_selectedItem; // points to renderitem array
- ScatterRenderItem *m_previouslySelectedItem; // points to renderitem array
bool m_xFlipped;
bool m_zFlipped;
bool m_yFlipped;
@@ -85,6 +84,7 @@ private:
GLfloat m_heightNormalizer;
GLfloat m_scaleFactor;
QVector3D m_selection;
+ QVector3D m_previousSelection;
QSizeF m_areaSize;
GLfloat m_dotSizeScale;
@@ -127,7 +127,6 @@ private:
#endif
void calculateTranslation(ScatterRenderItem &item);
void calculateSceneScalingFactors();
- Scatter3DController::SelectionType isSelected(GLint dot, const QVector3D &selection);
Q_DISABLE_COPY(Scatter3DRenderer)
@@ -138,8 +137,16 @@ public slots:
// Overloaded from abstract renderer
virtual void updateAxisRange(QAbstractAxis::AxisOrientation orientation, qreal min, qreal max);
-};
+ void updateSelectedItemIndex(int index);
+
+signals:
+ void selectionUpdated(QVector3D selection);
+ void selectedItemIndexChanged(int index);
+
+private:
+ QVector3D indexToSelectionColor(GLint index);
+};
QT_DATAVIS3D_END_NAMESPACE