00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
#ifndef QWT_PLOT_PICKER
00013
#define QWT_PLOT_PICKER
00014
00015
#include "qwt_double_rect.h"
00016
#include "qwt_array.h"
00017
#include "qwt_plot_canvas.h"
00018
#include "qwt_picker.h"
00019
00020
class QwtPlot;
00021
00038 class QWT_EXPORT QwtPlotPicker:
public QwtPicker
00039 {
00040 Q_OBJECT
00041
00042
public:
00043 QwtPlotPicker(
QwtPlotCanvas *,
const char *name = 0);
00044
00045 QwtPlotPicker(
int xAxis,
int yAxis,
00046
QwtPlotCanvas *,
const char *name = 0);
00047
00048 QwtPlotPicker(
int xAxis,
int yAxis,
int selectionFlags,
00049 RubberBand rubberBand, DisplayMode cursorLabelMode,
00050
QwtPlotCanvas *,
const char *name = 0);
00051
00052
virtual void setAxis(
int xAxis,
int yAxis);
00053
00054
int xAxis()
const;
00055
int yAxis()
const;
00056
00057
QwtPlot *plot();
00058
const QwtPlot *plot()
const;
00059
00060
QwtPlotCanvas *canvas();
00061
const QwtPlotCanvas *canvas()
const;
00062
00063 signals:
00064
00069
void selected(
const QwtDoublePoint &pos);
00070
00075
void selected(
const QwtDoubleRect &rect);
00076
00083
void selected(
const QwtArray<QwtDoublePoint> &pa);
00084
00091
void appended(
const QwtDoublePoint &pos);
00092
00100
void moved(
const QwtDoublePoint &pos);
00101
00102
protected:
00103
QwtDoubleRect scaleRect()
const;
00104
00105
QwtDoubleRect invTransform(
const QRect &)
const;
00106 QRect transform(
const QwtDoubleRect &)
const;
00107
00108
QwtDoublePoint invTransform(
const QPoint &)
const;
00109 QPoint transform(
const QwtDoublePoint &)
const;
00110
00111
virtual QString
cursorLabel(
const QPoint &)
const;
00112
virtual QString
cursorLabel(
const QwtDoublePoint &)
const;
00113
00114
virtual void move(
const QPoint &);
00115
virtual void append(
const QPoint &);
00116
virtual bool end(
bool ok = TRUE);
00117
00118
private:
00119
int d_xAxis;
00120
int d_yAxis;
00121 };
00122
00123
#endif
00124
00125
00126
00127
00128
00129