diff options
Diffstat (limited to 'src/datavisualizationqml2/declarativetheme_p.h')
-rw-r--r-- | src/datavisualizationqml2/declarativetheme_p.h | 35 |
1 files changed, 23 insertions, 12 deletions
diff --git a/src/datavisualizationqml2/declarativetheme_p.h b/src/datavisualizationqml2/declarativetheme_p.h index 75ab9514..79c1f5c9 100644 --- a/src/datavisualizationqml2/declarativetheme_p.h +++ b/src/datavisualizationqml2/declarativetheme_p.h @@ -30,8 +30,8 @@ #define DECLARATIVETHEME_P_H #include "datavisualizationglobal_p.h" +#include "declarativecolor_p.h" #include "colorgradient_p.h" -//#include "declarativecolor_p.h" #include "q3dtheme.h" QT_DATAVISUALIZATION_BEGIN_NAMESPACE @@ -40,7 +40,7 @@ class DeclarativeTheme3D : public Q3DTheme { Q_OBJECT Q_PROPERTY(QQmlListProperty<QObject> seriesChildren READ seriesChildren) -// Q_PROPERTY(QQmlListProperty<DeclarativeColor> baseColors READ baseColors) + 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) @@ -53,12 +53,12 @@ public: QQmlListProperty<QObject> seriesChildren(); static void appendSeriesChildren(QQmlListProperty<QObject> *list, QObject *element); -// 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<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, @@ -78,6 +78,8 @@ signals: void multiHighlightGradientChanged(ColorGradient *gradient); protected: + void handleBaseColorUpdate(); + void handleBaseGradientUpdate(); void handleSingleHLGradientUpdate(); void handleMultiHLGradientUpdate(); @@ -88,18 +90,27 @@ protected: }; private: -// void addColor(const DeclarativeColor &color); -// QList<DeclarativeColor> colorList() const; -// void clearColors(); + void addColor(DeclarativeColor *color); + QList<DeclarativeColor *> colorList(); + void clearColors(); + void clearDummyColors(); + void addGradient(ColorGradient *gradient); - QList<ColorGradient *> gradientList() const; + QList<ColorGradient *> gradientList(); void clearGradients(); + void clearDummyGradients(); + void setThemeGradient(ColorGradient *gradient, GradientType type); QLinearGradient convertGradient(ColorGradient *gradient); + ColorGradient *convertGradient(const QLinearGradient &gradient); + QList<DeclarativeColor *> m_colors; // Not owned QList<ColorGradient *> m_gradients; // Not owned ColorGradient *m_singleHLGradient; // Not owned ColorGradient *m_multiHLGradient; // Not owned + + bool m_dummyGradients; + bool m_dummyColors; }; QT_DATAVISUALIZATION_END_NAMESPACE |