summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/engine/axisrendercache.cpp
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@theqtcompany.com>2014-10-14 14:35:03 +0300
committerMiikka Heikkinen <miikka.heikkinen@theqtcompany.com>2014-10-15 09:37:17 +0300
commit91a9698b80bcb072a5ec3af69515249bac96aff5 (patch)
treedc2ffcce10e20c499addd739314ae1bda661eaba /src/datavisualization/engine/axisrendercache.cpp
parentd0244a84f150fe59327afa9bd59d0f9cdde72406 (diff)
Simplify context handling at cleanup.
If the context exists at renderer deletion, it is possible that it no longer has valid surface, which means it won't be possible to set it back to current if we change context for deletion cleanup. Since the current context will be one of our shared contexts anyway, there is no need to do a dummy context for cleanup unless the current context is null. Change-Id: Ibabe081742beb975ee848ccb3690703ef5b027a9 Reviewed-by: Mika Salmela <mika.salmela@digia.com> Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualization/engine/axisrendercache.cpp')
-rw-r--r--src/datavisualization/engine/axisrendercache.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/datavisualization/engine/axisrendercache.cpp b/src/datavisualization/engine/axisrendercache.cpp
index 2448483e..f467cc76 100644
--- a/src/datavisualization/engine/axisrendercache.cpp
+++ b/src/datavisualization/engine/axisrendercache.cpp
@@ -44,8 +44,7 @@ AxisRenderCache::AxisRenderCache()
AxisRenderCache::~AxisRenderCache()
{
- foreach (LabelItem *label, m_labelItems)
- delete label;
+ clearLabels();
delete m_formatter;
}
@@ -175,6 +174,13 @@ void AxisRenderCache::updateTextures()
}
}
+void AxisRenderCache::clearLabels()
+{
+ m_titleItem.clear();
+ for (int i = 0; i < m_labels.size(); i++)
+ m_labelItems[i]->clear();
+}
+
int AxisRenderCache::maxLabelWidth(const QStringList &labels) const
{
int labelWidth = 0;