diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-12-09 10:49:49 +0200 |
---|---|---|
committer | Tomi Korpipää <tomi.korpipaa@digia.com> | 2013-12-10 09:01:45 +0200 |
commit | 3573055abe42ff283d011d8550bc8495156338a1 (patch) | |
tree | bb45d4f7e32a0c63329d9f52639081162b34e17e /src/datavisualization/data/qabstract3dseries_p.h | |
parent | 22557b312570cbefde584466a28f2b9bfcc570ba (diff) |
Move series specific visual elements to series, part 4
Colors to series
- Multiselection labels in bar slices still buggy
- Selection in bars doesn't work correctly if not all
series have items in that grid
Task-number: QTRD-2557
Change-Id: Icd38428e5337a26b8410476104bb1f1f784cdc7f
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualization/data/qabstract3dseries_p.h')
-rw-r--r-- | src/datavisualization/data/qabstract3dseries_p.h | 65 |
1 files changed, 60 insertions, 5 deletions
diff --git a/src/datavisualization/data/qabstract3dseries_p.h b/src/datavisualization/data/qabstract3dseries_p.h index d37df562..7b2ea2e6 100644 --- a/src/datavisualization/data/qabstract3dseries_p.h +++ b/src/datavisualization/data/qabstract3dseries_p.h @@ -39,16 +39,51 @@ class QAbstractDataProxy; class Abstract3DController; struct QAbstract3DSeriesChangeBitField { - bool itemLabelFormatChanged : 1; - bool meshChanged : 1; - bool meshSmoothChanged : 1; - bool userDefinedMeshChanged : 1; + bool itemLabelFormatChanged : 1; + bool meshChanged : 1; + bool meshSmoothChanged : 1; + bool userDefinedMeshChanged : 1; + bool colorStyleChanged : 1; + bool baseColorChanged : 1; + bool baseGradientChanged : 1; + bool singleHighlightColorChanged : 1; + bool singleHighlightGradientChanged : 1; + bool multiHighlightColorChanged : 1; + bool multiHighlightGradientChanged : 1; QAbstract3DSeriesChangeBitField() : itemLabelFormatChanged(true), meshChanged(true), meshSmoothChanged(true), - userDefinedMeshChanged(true) + userDefinedMeshChanged(true), + colorStyleChanged(true), + baseColorChanged(true), + baseGradientChanged(true), + singleHighlightColorChanged(true), + singleHighlightGradientChanged(true), + multiHighlightColorChanged(true), + multiHighlightGradientChanged(true) + { + } +}; + +struct QAbstract3DSeriesThemeOverrideBitField { + bool colorStyleOverride : 1; + bool baseColorOverride : 1; + bool baseGradientOverride : 1; + bool singleHighlightColorOverride : 1; + bool singleHighlightGradientOverride : 1; + bool multiHighlightColorOverride : 1; + bool multiHighlightGradientOverride : 1; + + QAbstract3DSeriesThemeOverrideBitField() + : colorStyleOverride(false), + baseColorOverride(false), + baseGradientOverride(false), + singleHighlightColorOverride(false), + singleHighlightGradientOverride(false), + multiHighlightColorOverride(false), + multiHighlightGradientOverride(false) { } }; @@ -71,7 +106,18 @@ public: void setMeshSmooth(bool enable); void setUserDefinedMesh(const QString &meshFile); + void setColorStyle(Q3DTheme::ColorStyle style); + void setBaseColor(const QColor &color); + void setBaseGradient(const QLinearGradient &gradient); + void setSingleHighlightColor(const QColor &color); + void setSingleHighlightGradient(const QLinearGradient &gradient); + void setMultiHighlightColor(const QColor &color); + void setMultiHighlightGradient(const QLinearGradient &gradient); + + void resetToTheme(const Q3DTheme &theme, int seriesIndex, bool force); + QAbstract3DSeriesChangeBitField m_changeTracker; + QAbstract3DSeriesThemeOverrideBitField m_themeTracker; QAbstract3DSeries *q_ptr; QAbstract3DSeries::SeriesType m_type; QString m_itemLabelFormat; @@ -81,6 +127,15 @@ public: QAbstract3DSeries::Mesh m_mesh; bool m_meshSmooth; QString m_userDefinedMesh; + + Q3DTheme::ColorStyle m_colorStyle; + QColor m_baseColor; + QLinearGradient m_baseGradient; + QColor m_singleHighlightColor; + QLinearGradient m_singleHighlightGradient; + QColor m_multiHighlightColor; + QLinearGradient m_multiHighlightGradient; + }; QT_DATAVISUALIZATION_END_NAMESPACE |