12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
- * QwtPolar Widget Library
- * Copyright (C) 2008 Uwe Rathmann
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the Qwt License, Version 1.0
- *****************************************************************************/
- #ifndef QWT_POLAR_MAGNIFIER_H
- #define QWT_POLAR_MAGNIFIER_H 1
- #include "qwt_polar_global.h"
- #include "qwt_magnifier.h"
- class QwtPolarPlot;
- class QwtPolarCanvas;
- /*!
- \brief QwtPolarMagnifier provides zooming, by magnifying in steps.
- Using QwtPlotMagnifier a plot can be zoomed in/out in steps using
- keys, the mouse wheel or moving a mouse button in vertical direction.
- Together with QwtPolarPanner it is possible to implement
- an individual navigation of the plot canvas.
- \sa QwtPolarPanner, QwtPolarPlot, QwtPolarCanvas
- */
- class QWT_POLAR_EXPORT QwtPolarMagnifier: public QwtMagnifier
- {
- Q_OBJECT
- public:
- explicit QwtPolarMagnifier( QwtPolarCanvas * );
- virtual ~QwtPolarMagnifier();
- void setUnzoomKey( int key, int modifiers );
- void getUnzoomKey( int &key, int &modifiers ) const;
- QwtPolarPlot *plot();
- const QwtPolarPlot *plot() const;
- QwtPolarCanvas *canvas();
- const QwtPolarCanvas *canvas() const;
- protected:
- virtual void rescale( double factor );
- void unzoom();
- virtual void widgetKeyPressEvent( QKeyEvent * );
- private:
- class PrivateData;
- PrivateData *d_data;
- };
- #endif
|