diff --git a/src/graphs3d/qml/qquickgraphsbars.cpp b/src/graphs3d/qml/qquickgraphsbars.cpp index 8477da2f..12e6290b 100644 --- a/src/graphs3d/qml/qquickgraphsbars.cpp +++ b/src/graphs3d/qml/qquickgraphsbars.cpp @@ -775,9 +775,9 @@ void QQuickGraphsBars::synchData() m_changeTracker.barSeriesMarginChanged = false; } - if (m_axisRangeChanged) { - theme()->resetDirtyBits(); - m_axisRangeChanged = false; + if (m_changeTracker.axisRangeChanged) { + adjustAxisRanges(); + m_changeTracker.axisRangeChanged = false; } QQuickGraphsItem::synchData(); @@ -836,7 +836,7 @@ void QQuickGraphsBars::updateParameters() if (m_cachedBarThickness.isValid()) calculateSceneScalingFactors(); } - m_axisRangeChanged = true; + m_changeTracker.axisRangeChanged = true; setDataDirty(true); } @@ -2690,7 +2690,7 @@ void QQuickGraphsBars::updateBarSpecs(float thicknessRatio, QSizeF spacing, bool m_cachedBarSpacing = m_cachedBarThickness * 2 + spacing * 2; } - m_axisRangeChanged = true; + m_changeTracker.axisRangeChanged = true; m_changeTracker.selectedBarChanged = true; // Calculate here and at setting sample space diff --git a/src/graphs3d/qml/qquickgraphsbars_p.h b/src/graphs3d/qml/qquickgraphsbars_p.h index f598cfab..e86b9430 100644 --- a/src/graphs3d/qml/qquickgraphsbars_p.h +++ b/src/graphs3d/qml/qquickgraphsbars_p.h @@ -34,6 +34,7 @@ struct Bars3DChangeBitField bool itemChanged : 1; bool floorLevelChanged : 1; bool barSeriesMarginChanged : 1; + bool axisRangeChanged : 1; Bars3DChangeBitField() : multiSeriesScalingChanged(true) @@ -43,6 +44,7 @@ struct Bars3DChangeBitField , itemChanged(false) , floorLevelChanged(false) , barSeriesMarginChanged(false) + , axisRangeChanged(false) {} }; @@ -252,8 +254,6 @@ private: float m_heightNormalizer = 1.0f; float m_backgroundAdjustment = 0.0f; - bool m_axisRangeChanged = false; - QQuick3DModel *m_floorBackground = nullptr; QQuick3DNode *m_floorBackgroundScale = nullptr; QQuick3DNode *m_floorBackgroundRotation = nullptr; diff --git a/src/graphs3d/qml/qquickgraphsitem.cpp b/src/graphs3d/qml/qquickgraphsitem.cpp index 5a79ae91..8ae5a7e5 100644 --- a/src/graphs3d/qml/qquickgraphsitem.cpp +++ b/src/graphs3d/qml/qquickgraphsitem.cpp @@ -2664,7 +2664,7 @@ void QQuickGraphsItem::synchData() updateGridLineType(); else updateGrid(); - updateLabels(); + m_labelsNeedupdate = true; updateCustomData(); if (m_sliceView && isSliceEnabled()) { updateSliceGrid(); @@ -2678,7 +2678,7 @@ void QQuickGraphsItem::synchData() m_changeTracker.radialLabelOffsetChanged = false; } if (m_changeTracker.labelMarginChanged) { - updateLabels(); + m_labelsNeedupdate = true; m_changeTracker.labelMarginChanged = false; } @@ -2918,7 +2918,7 @@ void QQuickGraphsItem::synchData() m_titleLabelY->setProperty("labelFont", font); m_titleLabelZ->setProperty("labelFont", font); m_itemLabel->setProperty("labelFont", font); - updateLabels(); + m_labelsNeedupdate = true; if (m_sliceView && isSliceEnabled()) { changeLabelFont(m_sliceHorizontalLabelRepeater, font); @@ -3023,7 +3023,7 @@ void QQuickGraphsItem::synchData() updateGridLineType(); else updateGrid(); - updateLabels(); + m_labelsNeedupdate = true; if (m_sliceView && isSliceEnabled()) { updateSliceGrid(); updateSliceLabels();