summaryrefslogtreecommitdiffstats
path: root/plugins/declarative/declarativepieseries.h
diff options
context:
space:
mode:
authorTitta Heikkala <titta.heikkala@digia.com>2014-04-14 07:20:54 +0300
committerTitta Heikkala <titta.heikkala@digia.com>2014-05-02 13:18:44 +0300
commit8344a0102a72f2fbdafe472bd88082866a495b51 (patch)
treef3de2d80b4791d0c988928d2ac1efb4e6cab0ac3 /plugins/declarative/declarativepieseries.h
parent743754a36d25c3f529603b1f404a131982c897f6 (diff)
Add possibility to set brush image via QML API
User can set a brush image for AreaSeries, BarSet, BoxPlotSeries, BoxSet, PieSlice and ScatterSeries by specifying 'brushFilename'. Task-number: QTRD-2603 Change-Id: Ie4b75cec1f64da513b1b85749c28984cb7f88e38 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'plugins/declarative/declarativepieseries.h')
-rw-r--r--plugins/declarative/declarativepieseries.h25
1 files changed, 23 insertions, 2 deletions
diff --git a/plugins/declarative/declarativepieseries.h b/plugins/declarative/declarativepieseries.h
index 5f4ec0e1..12cb1810 100644
--- a/plugins/declarative/declarativepieseries.h
+++ b/plugins/declarative/declarativepieseries.h
@@ -22,6 +22,7 @@
#define DECLARATIVEPIESERIES_H
#include "qpieseries.h"
+#include "qpieslice.h"
#include "shared_defines.h"
#ifdef CHARTS_FOR_QUICK2
@@ -33,7 +34,27 @@
#endif
QTCOMMERCIALCHART_BEGIN_NAMESPACE
-class QPieSlice;
+
+class DeclarativePieSlice : public QPieSlice
+{
+ Q_OBJECT
+ Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged)
+
+public:
+ explicit DeclarativePieSlice(QObject *parent = 0);
+ QString brushFilename() const;
+ void setBrushFilename(const QString &brushFilename);
+
+Q_SIGNALS:
+ void brushFilenameChanged(const QString &brushFilename);
+
+private Q_SLOTS:
+ void handleBrushChanged();
+
+private:
+ QString m_brushFilename;
+ QImage m_brushImage;
+};
class DeclarativePieSeries : public QPieSeries, public QDECLARATIVE_PARSER_STATUS
{
@@ -52,7 +73,7 @@ public:
QDECLARATIVE_LIST_PROPERTY<QObject> seriesChildren();
Q_INVOKABLE QPieSlice *at(int index);
Q_INVOKABLE QPieSlice *find(QString label);
- Q_INVOKABLE QPieSlice *append(QString label, qreal value);
+ Q_INVOKABLE DeclarativePieSlice *append(QString label, qreal value);
Q_INVOKABLE bool remove(QPieSlice *slice);
Q_INVOKABLE void clear();