Qwt User's Guide
svn
|
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** 00002 * Qwt Widget Library 00003 * Copyright (C) 1997 Josef Wilgen 00004 * Copyright (C) 2002 Uwe Rathmann 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the Qwt License, Version 1.0 00008 *****************************************************************************/ 00009 00010 #ifndef QWT_PLOT_PICKER_H 00011 #define QWT_PLOT_PICKER_H 00012 00013 #include "qwt_global.h" 00014 #include "qwt_plot_canvas.h" 00015 #include "qwt_picker.h" 00016 #include <qvector.h> 00017 00018 class QwtPlot; 00019 00028 class QWT_EXPORT QwtPlotPicker: public QwtPicker 00029 { 00030 Q_OBJECT 00031 00032 public: 00033 explicit QwtPlotPicker( QwtPlotCanvas * ); 00034 virtual ~QwtPlotPicker(); 00035 00036 explicit QwtPlotPicker( int xAxis, int yAxis, QwtPlotCanvas * ); 00037 00038 explicit QwtPlotPicker( int xAxis, int yAxis, 00039 RubberBand rubberBand, DisplayMode trackerMode, 00040 QwtPlotCanvas * ); 00041 00042 virtual void setAxis( int xAxis, int yAxis ); 00043 00044 int xAxis() const; 00045 int yAxis() const; 00046 00047 QwtPlot *plot(); 00048 const QwtPlot *plot() const; 00049 00050 QwtPlotCanvas *canvas(); 00051 const QwtPlotCanvas *canvas() const; 00052 00053 Q_SIGNALS: 00054 00059 void selected( const QPointF &pos ); 00060 00065 void selected( const QRectF &rect ); 00066 00073 void selected( const QVector<QPointF> &pa ); 00074 00081 void appended( const QPointF &pos ); 00082 00090 void moved( const QPointF &pos ); 00091 00092 protected: 00093 QRectF scaleRect() const; 00094 00095 QRectF invTransform( const QRect & ) const; 00096 QRect transform( const QRectF & ) const; 00097 00098 QPointF invTransform( const QPoint & ) const; 00099 QPoint transform( const QPointF & ) const; 00100 00101 virtual QwtText trackerText( const QPoint & ) const; 00102 virtual QwtText trackerTextF( const QPointF & ) const; 00103 00104 virtual void move( const QPoint & ); 00105 virtual void append( const QPoint & ); 00106 virtual bool end( bool ok = true ); 00107 00108 private: 00109 int d_xAxis; 00110 int d_yAxis; 00111 }; 00112 00113 #endif