00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef QT_BASIC_GRAPH_H
00011 #define QT_BASIC_GRAPH_H
00012
00013 #include <QtGui>
00014
00015
00016 class QtBasicGraph : public QWidget {
00017 Q_OBJECT
00018
00019 public:
00020 explicit QtBasicGraph(QWidget * parent);
00021 ~QtBasicGraph();
00022
00023 void setYMinMax(qreal ymin, qreal ymax);
00024 void setXRange(qreal xrange);
00025
00026 qreal xRange() const { return m_xrange; }
00027 qreal yRange() const { return m_ymax - m_ymin; }
00028 qreal yMin() const { return m_ymin; }
00029 qreal yMax() const { return m_ymax; }
00030
00031 void setRenderHints(QPainter::RenderHints hints);
00032
00033 public Q_SLOTS:
00034 virtual void addPoint(const QPointF &data);
00035 virtual void clear();
00036
00037 protected:
00038 virtual void paintEvent(QPaintEvent *e);
00039
00040 private:
00041 void drawValues(QPainter * painter);
00042
00043 qreal m_ymin;
00044 qreal m_ymax;
00045 qreal m_xrange;
00046 qreal m_scroll_error;
00047
00048 QPainter::RenderHints m_render_hints;
00049
00050 QList<QPointF> m_values;
00051 };
00052
00053 #endif // QT_BASIC_GRAPH_H