Skip to content
Snippets Groups Projects
qwt_plot_panner.h 1.47 KiB
Newer Older
  • Learn to ignore specific revisions
  • pixhawk's avatar
    pixhawk committed
    /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
     * Qwt Widget Library
     * Copyright (C) 1997   Josef Wilgen
     * Copyright (C) 2002   Uwe Rathmann
    
    pixhawk's avatar
    pixhawk committed
     * 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_PLOT_PANNER_H
    #define QWT_PLOT_PANNER_H 1
    
    #include "qwt_global.h"
    #include "qwt_panner.h"
    
    class QwtPlot;
    
    /*!
    
      \brief QwtPlotPanner provides panning of a plot canvas
    
    pixhawk's avatar
    pixhawk committed
    
    
    Bryant's avatar
    Bryant committed
      QwtPlotPanner is a panner for a plot canvas, that
    
    pixhawk's avatar
    pixhawk committed
      adjusts the scales of the axes after dropping
      the canvas on its new position.
    
    
      Together with QwtPlotZoomer and QwtPlotMagnifier powerful ways
    
    pixhawk's avatar
    pixhawk committed
      of navigating on a QwtPlot widget can be implemented easily.
    
    pixhawk's avatar
    pixhawk committed
      \note The axes are not updated, while dragging the canvas
      \sa QwtPlotZoomer, QwtPlotMagnifier
    */
    class QWT_EXPORT QwtPlotPanner: public QwtPanner
    {
        Q_OBJECT
    
    public:
    
    Bryant's avatar
    Bryant committed
        explicit QwtPlotPanner( QWidget * );
    
    pixhawk's avatar
    pixhawk committed
        virtual ~QwtPlotPanner();
    
    
    Bryant's avatar
    Bryant committed
        QWidget *canvas();
        const QWidget *canvas() const;
    
    pixhawk's avatar
    pixhawk committed
    
        QwtPlot *plot();
        const QwtPlot *plot() const;
    
    
    Bryant's avatar
    Bryant committed
        void setAxisEnabled( int axis, bool on );
        bool isAxisEnabled( int axis ) const;
    
    pixhawk's avatar
    pixhawk committed
    
    
    Bryant's avatar
    Bryant committed
    protected Q_SLOTS:
        virtual void moveCanvas( int dx, int dy );
    
    protected:
        virtual QBitmap contentsMask() const;
        virtual QPixmap grab() const;
    
    pixhawk's avatar
    pixhawk committed
    
    private:
        class PrivateData;
        PrivateData *d_data;
    };
    
    #endif