summaryrefslogtreecommitdiffstats
path: root/src/datavisualizationqml2/declarativetheme_p.h
diff options
context:
space:
mode:
authorTomi Korpipää <tomi.korpipaa@digia.com>2013-12-10 12:55:22 +0200
committerTomi Korpipää <tomi.korpipaa@digia.com>2013-12-10 13:34:29 +0200
commit56eb5442dd1e2d6233e443bab956c6bd1b7a116b (patch)
treef787dd58af4219c4d51b1131e26b14271924fa62 /src/datavisualizationqml2/declarativetheme_p.h
parent6e35dbbfc272b322d9e39d30dec3039a75a149fa (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.h34
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
};