declarativepieseries.h
67 lines
| 2.1 KiB
| text/x-c
|
CLexer
Jani Honkonen
|
r830 | /**************************************************************************** | ||
** | ||||
** Copyright (C) 2012 Digia Plc | ||||
** All rights reserved. | ||||
** For any questions to Digia, please use contact form at http://qt.digia.com | ||||
** | ||||
** This file is part of the Qt Commercial Charts Add-on. | ||||
** | ||||
** $QT_BEGIN_LICENSE$ | ||||
** Licensees holding valid Qt Commercial licenses may use this file in | ||||
** accordance with the Qt Commercial License Agreement provided with the | ||||
** Software or, alternatively, in accordance with the terms contained in | ||||
** a written agreement between you and Digia. | ||||
** | ||||
** If you have questions regarding the use of this file, please use | ||||
** contact form at http://qt.digia.com | ||||
** $QT_END_LICENSE$ | ||||
** | ||||
****************************************************************************/ | ||||
Tero Ahola
|
r215 | #ifndef DECLARATIVEPIESERIES_H | ||
#define DECLARATIVEPIESERIES_H | ||||
#include "qchartglobal.h" | ||||
Tero Ahola
|
r1186 | #include <QPieSlice> | ||
#include <QPieSeries> | ||||
#include <QDeclarativeParserStatus> | ||||
Tero Ahola
|
r1117 | #include <QDeclarativeListProperty> | ||
Tero Ahola
|
r1130 | #include <QAbstractItemModel> | ||
Tero Ahola
|
r215 | |||
QTCOMMERCIALCHART_BEGIN_NAMESPACE | ||||
class QChart; | ||||
Tero Ahola
|
r1186 | class DeclarativePieSeries : public QPieSeries, public QDeclarativeParserStatus | ||
Tero Ahola
|
r215 | { | ||
Q_OBJECT | ||||
Tero Ahola
|
r1186 | Q_INTERFACES(QDeclarativeParserStatus) | ||
Tero Ahola
|
r1254 | Q_PROPERTY(QDeclarativeListProperty<QObject> seriesChildren READ seriesChildren) | ||
Q_CLASSINFO("DefaultProperty", "seriesChildren") | ||||
Tero Ahola
|
r215 | |||
public: | ||||
Tero Ahola
|
r789 | explicit DeclarativePieSeries(QObject *parent = 0); | ||
Tero Ahola
|
r1254 | QDeclarativeListProperty<QObject> seriesChildren(); | ||
Tero Ahola
|
r1329 | Q_INVOKABLE QPieSlice *at(int index); | ||
Q_INVOKABLE QPieSlice *find(QString label); | ||||
Q_INVOKABLE QPieSlice *append(QString label, qreal value); | ||||
Tero Ahola
|
r1511 | Q_INVOKABLE bool remove(QPieSlice *slice); | ||
Tero Ahola
|
r1503 | Q_INVOKABLE void clear(); | ||
Tero Ahola
|
r1162 | |||
Tero Ahola
|
r1130 | public: | ||
Tero Ahola
|
r1186 | void classBegin(); | ||
void componentComplete(); | ||||
Tero Ahola
|
r1503 | Q_SIGNALS: | ||
void sliceAdded(QPieSlice* slice); | ||||
void sliceRemoved(QPieSlice* slice); | ||||
Tero Ahola
|
r1186 | public Q_SLOTS: | ||
Tero Ahola
|
r1254 | static void appendSeriesChildren(QDeclarativeListProperty<QObject> *list, QObject *element); | ||
Tero Ahola
|
r1503 | void handleAdded(QList<QPieSlice*> slices); | ||
void handleRemoved(QList<QPieSlice*> slices); | ||||
Tero Ahola
|
r215 | }; | ||
QTCOMMERCIALCHART_END_NAMESPACE | ||||
#endif // DECLARATIVEPIESERIES_H | ||||