declarativechart.h
48 lines
| 1.3 KiB
| text/x-c
|
CLexer
/ qmlplugin / declarativechart.h
Jani Honkonen
|
r1 | #ifndef DECLARATIVECHART_H | ||
#define DECLARATIVECHART_H | ||||
#include <QtCore/QtGlobal> | ||||
Tero Ahola
|
r120 | #include <QDeclarativeItem> | ||
#include <qchart.h> | ||||
QTCOMMERCIALCHART_BEGIN_NAMESPACE | ||||
class DeclarativeChart : public QDeclarativeItem | ||||
// TODO: for QTQUICK2: extend QQuickPainterItem instead | ||||
//class DeclarativeChart : public QQuickPaintedItem, public Chart | ||||
Jani Honkonen
|
r1 | { | ||
Q_OBJECT | ||||
Tero Ahola
|
r120 | Q_ENUMS(ChartTheme) | ||
Q_PROPERTY(ChartTheme theme READ theme WRITE setTheme) | ||||
Jani Honkonen
|
r1 | |||
public: | ||||
Tero Ahola
|
r120 | enum ChartTheme { | ||
ThemeDefault, | ||||
Tero Ahola
|
r651 | ThemeLight, | ||
ThemeBlueCerulean, | ||||
ThemeDark, | ||||
ThemeBrownSand, | ||||
ThemeBlueNcs, | ||||
Tero Ahola
|
r120 | ThemeIcy, | ||
Tero Ahola
|
r651 | ThemeScientific | ||
Tero Ahola
|
r120 | }; | ||
Jani Honkonen
|
r1 | DeclarativeChart(QDeclarativeItem *parent = 0); | ||
Tero Ahola
|
r722 | ~DeclarativeChart(); | ||
Tero Ahola
|
r120 | |||
public: // From QDeclarativeItem/QGraphicsItem | ||||
void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry); | ||||
Tero Ahola
|
r646 | void paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0); | ||
Tero Ahola
|
r120 | |||
public: | ||||
Michal Klocek
|
r154 | void setTheme(ChartTheme theme) {m_chart->setChartTheme((QChart::ChartTheme) theme);} | ||
Tero Ahola
|
r120 | ChartTheme theme(); | ||
public: | ||||
// Extending QChart with DeclarativeChart is not possible because QObject does not support | ||||
// multi inheritance, so we now have a QChart as a member instead | ||||
QChart *m_chart; | ||||
Jani Honkonen
|
r1 | }; | ||
Tero Ahola
|
r120 | QTCOMMERCIALCHART_END_NAMESPACE | ||
Jani Honkonen
|
r1 | |||
#endif // DECLARATIVECHART_H | ||||