diff options
author | Titta Heikkala <titta.heikkala@digia.com> | 2014-04-14 07:20:54 +0300 |
---|---|---|
committer | Titta Heikkala <titta.heikkala@digia.com> | 2014-05-02 13:18:44 +0300 |
commit | 8344a0102a72f2fbdafe472bd88082866a495b51 (patch) | |
tree | f3de2d80b4791d0c988928d2ac1efb4e6cab0ac3 /plugins/declarative/declarativepieseries.h | |
parent | 743754a36d25c3f529603b1f404a131982c897f6 (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.h | 25 |
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(); |