declarativechart.h
68 lines
| 2.1 KiB
| text/x-c
|
CLexer
/ qmlplugin / declarativechart.h
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$ | ||||
** | ||||
****************************************************************************/ | ||||
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
|
r757 | ThemeHighContrast, | ||
ThemeBlueIcy | ||||
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
|
r740 | void setTheme(ChartTheme theme) {m_chart->setTheme((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 | ||||