summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/engine/bars3dcontroller.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/datavisualization/engine/bars3dcontroller.cpp')
-rw-r--r--src/datavisualization/engine/bars3dcontroller.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/datavisualization/engine/bars3dcontroller.cpp b/src/datavisualization/engine/bars3dcontroller.cpp
index 95fb36b9..2238fdee 100644
--- a/src/datavisualization/engine/bars3dcontroller.cpp
+++ b/src/datavisualization/engine/bars3dcontroller.cpp
@@ -83,6 +83,11 @@ void Bars3DController::synchDataToRenderer()
Abstract3DController::synchDataToRenderer();
// Notify changes to renderer
+ if (m_changeTracker.multiSeriesScalingChanged) {
+ m_renderer->updateMultiSeriesScaling(m_isMultiSeriesUniform);
+ m_changeTracker.multiSeriesScalingChanged = false;
+ }
+
if (m_changeTracker.barSpecsChanged) {
m_renderer->updateBarSpecs(m_barThicknessRatio, m_barSpacing, m_isBarSpecRelative);
m_changeTracker.barSpecsChanged = false;
@@ -378,6 +383,19 @@ void Bars3DController::handleAxisRangeChangedBySender(QObject *sender)
setSelectedBar(m_selectedBar, m_selectedBarSeries);
}
+void Bars3DController::setMultiSeriesScaling(bool uniform)
+{
+ m_isMultiSeriesUniform = uniform;
+
+ m_changeTracker.multiSeriesScalingChanged = true;
+ emitNeedRender();
+}
+
+bool Bars3DController::multiSeriesScaling() const
+{
+ return m_isMultiSeriesUniform;
+}
+
void Bars3DController::setBarSpecs(GLfloat thicknessRatio, const QSizeF &spacing, bool relative)
{
m_barThicknessRatio = thicknessRatio;