diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-10-31 12:25:00 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-10-31 13:34:06 +0200 |
commit | 3f2dd48dbbb2a67ffc00ddab36b44c0449455126 (patch) | |
tree | 3999ef41197f8861a867cb5ec95361e5dd77e297 /src/datavisualization/engine/surface3drenderer.cpp | |
parent | b44b030ec0c74649daee92160c73cbd2fe93d7c1 (diff) |
Cleaning controller callbacks from renderers, part 2
Removed m_controller from renderers so it won't accidentally be
used again. Replaced the remaining callbacks with queued signals.
Task-number: QTRD-2216
Change-Id: Ib10bc661bcdc3d810baa8b2513f5e6dd67f7207e
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualization/engine/surface3drenderer.cpp')
-rw-r--r-- | src/datavisualization/engine/surface3drenderer.cpp | 46 |
1 files changed, 4 insertions, 42 deletions
diff --git a/src/datavisualization/engine/surface3drenderer.cpp b/src/datavisualization/engine/surface3drenderer.cpp index 1ebdac57..72f7db1d 100644 --- a/src/datavisualization/engine/surface3drenderer.cpp +++ b/src/datavisualization/engine/surface3drenderer.cpp @@ -60,7 +60,6 @@ const uint invalidSelectionId = uint(-1); Surface3DRenderer::Surface3DRenderer(Surface3DController *controller) : Abstract3DRenderer(controller), - m_controller(controller), m_labelStyle(QDataVis::LabelStyleFromTheme), m_font(QFont(QStringLiteral("Arial"))), m_isGridEnabled(true), @@ -101,6 +100,7 @@ Surface3DRenderer::Surface3DRenderer(Surface3DController *controller) m_selectionTexture(0), m_selectionResultTexture(0), m_shadowQualityToShader(33.3f), + m_cachedSmoothSurface(true), m_flatSupported(true), m_selectionPointer(0), m_selectionActive(false), @@ -118,14 +118,11 @@ Surface3DRenderer::Surface3DRenderer(Surface3DController *controller) QStringLiteral(":/shaders/fragmentSurfaceFlat")); if (!tester.testCompile()) { m_flatSupported = false; - m_controller->setSmoothSurface(true); + emit requestSmoothSurface(true); qWarning() << "Warning: Flat qualifier not supported on your platform's GLSL language." " Requires at least GLSL version 1.2 with GL_EXT_gpu_shader4 extension."; } - m_cachedSmoothSurface = m_controller->smoothSurface(); - updateSurfaceGridStatus(m_controller->surfaceGrid()); - // Shadows are disabled for Q3DSurface in Tech Preview updateShadowQuality(QDataVis::ShadowQualityNone); @@ -2094,43 +2091,8 @@ void Surface3DRenderer::updateDepthBuffer() m_depthTexture = m_textureHelper->createDepthTexture(m_mainViewPort.size(), m_depthFrameBuffer, m_shadowQualityMultiplier); - if (!m_depthTexture) { - switch (m_cachedShadowQuality) { - case QDataVis::ShadowQualityHigh: - qWarning("Creating high quality shadows failed. Changing to medium quality."); - (void)m_controller->setShadowQuality(QDataVis::ShadowQualityMedium); - updateShadowQuality(QDataVis::ShadowQualityMedium); - break; - case QDataVis::ShadowQualityMedium: - qWarning("Creating medium quality shadows failed. Changing to low quality."); - (void)m_controller->setShadowQuality(QDataVis::ShadowQualityLow); - updateShadowQuality(QDataVis::ShadowQualityLow); - break; - case QDataVis::ShadowQualityLow: - qWarning("Creating low quality shadows failed. Switching shadows off."); - (void)m_controller->setShadowQuality(QDataVis::ShadowQualityNone); - updateShadowQuality(QDataVis::ShadowQualityNone); - break; - case QDataVis::ShadowQualitySoftHigh: - qWarning("Creating soft high quality shadows failed. Changing to soft medium quality."); - (void)m_controller->setShadowQuality(QDataVis::ShadowQualitySoftMedium); - updateShadowQuality(QDataVis::ShadowQualitySoftMedium); - break; - case QDataVis::ShadowQualitySoftMedium: - qWarning("Creating soft medium quality shadows failed. Changing to soft low quality."); - (void)m_controller->setShadowQuality(QDataVis::ShadowQualitySoftLow); - updateShadowQuality(QDataVis::ShadowQualitySoftLow); - break; - case QDataVis::ShadowQualitySoftLow: - qWarning("Creating soft low quality shadows failed. Switching shadows off."); - (void)m_controller->setShadowQuality(QDataVis::ShadowQualityNone); - updateShadowQuality(QDataVis::ShadowQualityNone); - break; - default: - // You'll never get here - break; - } - } + if (!m_depthTexture) + lowerShadowQuality(); } } #endif |