From 631b1913f4115fc163a21fc8aba85b87b10a666a Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Fri, 17 Jan 2014 10:24:02 +0200 Subject: Optimize theme update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Do not reinitialize shaders in theme update and only update drawer if label related items change. Also fix the bug automerge slipped in in recent rebase. Task-number: QTRD-2778 Change-Id: I4c4317dd36a8e8b60dcaec224f45df81c2ae7f54 Reviewed-by: Tomi Korpipää --- src/datavisualization/engine/abstract3drenderer.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'src/datavisualization/engine/abstract3drenderer.cpp') diff --git a/src/datavisualization/engine/abstract3drenderer.cpp b/src/datavisualization/engine/abstract3drenderer.cpp index 95840b0a..350da1fc 100644 --- a/src/datavisualization/engine/abstract3drenderer.cpp +++ b/src/datavisualization/engine/abstract3drenderer.cpp @@ -162,14 +162,10 @@ void Abstract3DRenderer::initGradientShaders(const QString &vertexShader, const void Abstract3DRenderer::updateTheme(Q3DTheme *theme) { // Synchronize the controller theme with renderer - bool changed = theme->d_ptr->sync(*m_cachedTheme->d_ptr); + bool updateDrawer = theme->d_ptr->sync(*m_cachedTheme->d_ptr); - if (changed) { - // Update drawer if sync changed something + if (updateDrawer) m_drawer->setTheme(m_cachedTheme); - // Re-initialize shaders - reInitShaders(); - } } void Abstract3DRenderer::updateScene(Q3DScene *scene) -- cgit v1.2.3