diff options
author | Tomi Korpipää <tomi.korpipaa@digia.com> | 2013-12-10 12:55:22 +0200 |
---|---|---|
committer | Tomi Korpipää <tomi.korpipaa@digia.com> | 2013-12-10 13:34:29 +0200 |
commit | 56eb5442dd1e2d6233e443bab956c6bd1b7a116b (patch) | |
tree | f787dd58af4219c4d51b1131e26b14271924fa62 /src/datavisualizationqml2/declarativetheme_p.h | |
parent | 6e35dbbfc272b322d9e39d30dec3039a75a149fa (diff) |
Multiseries support for theme colors and gradients, Part 1
Task-number: QTRD-2611
- declarative support for color list missing
- declarative connections and fixes for count etc.
Change-Id: I0ac007dcd7acb011d1a4461a56066ee41c364a75
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'src/datavisualizationqml2/declarativetheme_p.h')
-rw-r--r-- | src/datavisualizationqml2/declarativetheme_p.h | 34 |
1 files changed, 26 insertions, 8 deletions
diff --git a/src/datavisualizationqml2/declarativetheme_p.h b/src/datavisualizationqml2/declarativetheme_p.h index 9bbb518a..75ab9514 100644 --- a/src/datavisualizationqml2/declarativetheme_p.h +++ b/src/datavisualizationqml2/declarativetheme_p.h @@ -31,6 +31,7 @@ #include "datavisualizationglobal_p.h" #include "colorgradient_p.h" +//#include "declarativecolor_p.h" #include "q3dtheme.h" QT_DATAVISUALIZATION_BEGIN_NAMESPACE @@ -39,7 +40,8 @@ class DeclarativeTheme3D : public Q3DTheme { Q_OBJECT Q_PROPERTY(QQmlListProperty<QObject> seriesChildren READ seriesChildren) - Q_PROPERTY(ColorGradient *baseGradient READ baseGradient WRITE setBaseGradient NOTIFY baseGradientChanged) +// Q_PROPERTY(QQmlListProperty<DeclarativeColor> baseColors READ baseColors) + Q_PROPERTY(QQmlListProperty<ColorGradient> baseGradients READ baseGradients) Q_PROPERTY(ColorGradient *singleHighlightGradient READ singleHighlightGradient WRITE setSingleHighlightGradient NOTIFY singleHighlightGradientChanged) Q_PROPERTY(ColorGradient *multiHighlightGradient READ multiHighlightGradient WRITE setMultiHighlightGradient NOTIFY multiHighlightGradientChanged) Q_CLASSINFO("DefaultProperty", "seriesChildren") @@ -51,8 +53,19 @@ public: QQmlListProperty<QObject> seriesChildren(); static void appendSeriesChildren(QQmlListProperty<QObject> *list, QObject *element); - void setBaseGradient(ColorGradient *gradient); - ColorGradient *baseGradient() const; +// QQmlListProperty<DeclarativeColor> baseColors(); +// static void appendBaseColorsFunc(QQmlListProperty<DeclarativeColor> *list, +// DeclarativeColor *color); +// static int countBaseColorsFunc(QQmlListProperty<DeclarativeColor> *list); +// static DeclarativeColor *atBaseColorsFunc(QQmlListProperty<DeclarativeColor> *list, int index); +// static void clearBaseColorsFunc(QQmlListProperty<DeclarativeColor> *list); + + QQmlListProperty<ColorGradient> baseGradients(); + static void appendBaseGradientsFunc(QQmlListProperty<ColorGradient> *list, + ColorGradient *gradient); + static int countBaseGradientsFunc(QQmlListProperty<ColorGradient> *list); + static ColorGradient *atBaseGradientsFunc(QQmlListProperty<ColorGradient> *list, int index); + static void clearBaseGradientsFunc(QQmlListProperty<ColorGradient> *list); void setSingleHighlightGradient(ColorGradient *gradient); ColorGradient *singleHighlightGradient() const; @@ -61,12 +74,10 @@ public: ColorGradient *multiHighlightGradient() const; signals: - void baseGradientChanged(ColorGradient *gradient); void singleHighlightGradientChanged(ColorGradient *gradient); void multiHighlightGradientChanged(ColorGradient *gradient); protected: - void handleBaseGradientUpdate(); void handleSingleHLGradientUpdate(); void handleMultiHLGradientUpdate(); @@ -77,9 +88,16 @@ protected: }; private: - void setThemeGradient(const ColorGradient &gradient, GradientType type); - - ColorGradient *m_baseGradient; // Not owned +// void addColor(const DeclarativeColor &color); +// QList<DeclarativeColor> colorList() const; +// void clearColors(); + void addGradient(ColorGradient *gradient); + QList<ColorGradient *> gradientList() const; + void clearGradients(); + void setThemeGradient(ColorGradient *gradient, GradientType type); + QLinearGradient convertGradient(ColorGradient *gradient); + + QList<ColorGradient *> m_gradients; // Not owned ColorGradient *m_singleHLGradient; // Not owned ColorGradient *m_multiHLGradient; // Not owned }; |