summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/engine/selectionpointer.cpp
diff options
context:
space:
mode:
authorTomi Korpipää <tomi.korpipaa@digia.com>2014-09-16 07:49:46 +0300
committerTomi Korpipää <tomi.korpipaa@digia.com>2014-09-16 08:37:04 +0300
commitce6aff50ecd1445d148c1bbb9f712d6bfb77a78e (patch)
treebd9f2d2d9f11ad8bb24819faefe5c40292de6fe5 /src/datavisualization/engine/selectionpointer.cpp
parentb6d5edf9775f6bf2aa4f91906763bd1c492d47e7 (diff)
Prevent selection label generation on rotate
Task-number: QTRD-3234 Selection pointer label needs to be regenrated only when either theme or label text changes. Change-Id: Iabe91a88b719b186c998cda9e712207752762279 Reviewed-by: Pasi Keränen <pasi.keranen@digia.com>
Diffstat (limited to 'src/datavisualization/engine/selectionpointer.cpp')
-rw-r--r--src/datavisualization/engine/selectionpointer.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/datavisualization/engine/selectionpointer.cpp b/src/datavisualization/engine/selectionpointer.cpp
index c40034ba..f7f8344b 100644
--- a/src/datavisualization/engine/selectionpointer.cpp
+++ b/src/datavisualization/engine/selectionpointer.cpp
@@ -211,10 +211,12 @@ void SelectionPointer::setRotation(const QQuaternion &rotation)
m_rotation = rotation;
}
-void SelectionPointer::setLabel(const QString &label)
+void SelectionPointer::setLabel(const QString &label, bool themeChange)
{
- m_label = label;
- m_drawer->generateLabelItem(m_labelItem, m_label);
+ if (themeChange || m_label != label) {
+ m_label = label;
+ m_drawer->generateLabelItem(m_labelItem, m_label);
+ }
}
void SelectionPointer::setPointerObject(ObjectHelper *object)
@@ -230,7 +232,7 @@ void SelectionPointer::setLabelObject(ObjectHelper *object)
void SelectionPointer::handleDrawerChange()
{
m_cachedTheme = m_drawer->theme();
- setLabel(m_label);
+ setLabel(m_label, true);
}
void SelectionPointer::updateBoundingRect(const QRect &rect)