qchartview.h
77 lines
| 1.9 KiB
| text/x-c
|
CLexer
/ src / qchartview.h
Michal Klocek
|
r58 | #ifndef QCHARTWIDGET_H | ||
#define QCHARTWIDGET_H | ||||
#include "qchartglobal.h" | ||||
#include "qchartseries.h" | ||||
Michal Klocek
|
r86 | #include "qchart.h" | ||
Michal Klocek
|
r58 | #include <QGraphicsView> | ||
class QGraphicsScene; | ||||
Michal Klocek
|
r136 | class QRubberBand; | ||
Michal Klocek
|
r58 | |||
QTCOMMERCIALCHART_BEGIN_NAMESPACE | ||||
class QChart; | ||||
class QTCOMMERCIALCHART_EXPORT QChartView : public QGraphicsView | ||||
{ | ||||
public: | ||||
Michal Klocek
|
r136 | enum RubberBandPolicy { NoRubberBand, VerticalRubberBand, HorizonalRubberBand, RectangleRubberBand }; | ||
Michal Klocek
|
r58 | explicit QChartView(QWidget *parent = 0); | ||
~QChartView(); | ||||
//implement from QWidget | ||||
void resizeEvent(QResizeEvent *event); | ||||
void addSeries(QChartSeries* series); | ||||
Michal Klocek
|
r136 | |||
Tero Ahola
|
r61 | // Convenience function | ||
QChartSeries* createSeries(QChartSeries::QChartSeriesType type); | ||||
Michal Klocek
|
r58 | |||
Michal Klocek
|
r67 | int margin() const; | ||
Michal Klocek
|
r136 | |||
Michal Klocek
|
r69 | void setTitle(const QString& title); | ||
Michal Klocek
|
r122 | void setChartBackgroundBrush(const QBrush& brush); | ||
void setChartBackgroundPen(const QPen& pen); | ||||
Michal Klocek
|
r67 | void zoomInToRect(const QRect& rectangle); | ||
void zoomIn(); | ||||
void zoomOut(); | ||||
Michal Klocek
|
r58 | |||
Michal Klocek
|
r136 | void setRubberBandPolicy(const RubberBandPolicy ); | ||
RubberBandPolicy rubberBandPolicy() const; | ||||
Michal Klocek
|
r153 | void setChartTheme(QChart::ChartTheme theme); | ||
QChart::ChartTheme chartTheme() const; | ||||
Michal Klocek
|
r136 | |||
Michal Klocek
|
r176 | void setDefaultAxisX(const QChartAxis& axis); | ||
void setDefaultAxisY(const QChartAxis& axis); | ||||
QChartAxis defaultAxisX() const; | ||||
QChartAxis defaultAxisY() const; | ||||
QChartAxis axisY(int id) const; | ||||
int addAxisY(const QChartAxis& axis); | ||||
void removeAxisY(int id); | ||||
Michal Klocek
|
r155 | |||
Michal Klocek
|
r136 | protected: | ||
void mousePressEvent(QMouseEvent *event); | ||||
void mouseMoveEvent(QMouseEvent *event); | ||||
void mouseReleaseEvent(QMouseEvent *event); | ||||
void keyPressEvent(QKeyEvent *event); | ||||
Michal Klocek
|
r58 | private: | ||
QGraphicsScene *m_scene; | ||||
QChart* m_chart; | ||||
Michal Klocek
|
r136 | QPoint m_rubberBandOrigin; | ||
QRubberBand* m_rubberBand; | ||||
bool m_verticalRubberBand; | ||||
bool m_horizonalRubberBand; | ||||
Michal Klocek
|
r58 | Q_DISABLE_COPY(QChartView) | ||
}; | ||||
QTCOMMERCIALCHART_END_NAMESPACE | ||||
#endif // QCHARTWIDGET_H | ||||