Qwt Polar User's Guide 0.1.0
qwt_polar_magnifier.h
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
00002  * QwtPolar Widget Library
00003  * Copyright (C) 2008   Uwe Rathmann
00004  *
00005  * This library is free software; you can redistribute it and/or
00006  * modify it under the terms of the Qwt License, Version 1.0
00007  *****************************************************************************/
00008 
00009 #ifndef QWT_POLAR_MAGNIFIER_H
00010 #define QWT_POLAR_MAGNIFIER_H 1
00011 
00012 #include "qwt_polar_global.h"
00013 #include "qwt_magnifier.h"
00014 
00015 class QwtPolarPlot;
00016 class QwtPolarCanvas;
00017 
00030 class QWT_POLAR_EXPORT QwtPolarMagnifier: public QwtMagnifier
00031 {
00032     Q_OBJECT
00033 
00034 public:
00035     explicit QwtPolarMagnifier(QwtPolarCanvas *);
00036     virtual ~QwtPolarMagnifier();
00037 
00038     void setUnzoomKey(int key, int modifiers);
00039     void getUnzoomKey(int &key, int &modifiers) const;
00040 
00041     QwtPolarPlot *plot();
00042     const QwtPolarPlot *plot() const;
00043 
00044     QwtPolarCanvas *canvas();
00045     const QwtPolarCanvas *canvas() const;
00046 
00047 protected:
00048     virtual void rescale(double factor);
00049     void unzoom();
00050 
00051     virtual void widgetKeyPressEvent(QKeyEvent *);
00052 
00053 private:
00054     class PrivateData;
00055     PrivateData *d_data;
00056 };
00057 
00058 #endif