QwtPlotMagnifier 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 QwtPlotZoomer and QwtPlotPanner it is possible to implement individual and powerful navigation of the plot canvas.
QwtPlotPanner provides panning of a plot canvas.
QwtPlotPanner is a panner for a plot canvas, that adjusts the scales of the axes after dropping the canvas on its new position.
Together with QwtPlotZoomer and QwtPlotMagnifier powerful ways of navigating on a QwtPlot widget can be implemented easily.
QwtPlotRescaler takes care of fixed aspect ratios for plot scales.
QwtPlotRescaler auto adjusts the axes of a QwtPlot according to fixed aspect ratios.
QwtPlotZoomer provides stacked zooming for a plot widget.
QwtPlotZoomer selects rectangles from user inputs ( mouse or keyboard ) translates them into plot coordinates and adjusts the axes to them. The selection is supported by a rubber band and optionally by displaying the coordinates of the current mouse position.
Zooming can be repeated as often as possible, limited only by maxStackDepth() or minZoomSize(). Each rectangle is pushed on a stack.
The default setting how to select rectangles is a QwtPickerDragRectMachine with the following bindings:
- QwtEventPattern::MouseSelect1
The first point of the zoom rectangle is selected by a mouse press, the second point from the position, where the mouse is released. - QwtEventPattern::KeySelect1
The first key press selects the first, the second key press selects the second point. - QwtEventPattern::KeyAbort
Discard the selection in the state, where the first point is selected.
To traverse the zoom stack the following bindings are used:
- QwtEventPattern::MouseSelect3, QwtEventPattern::KeyUndo
Zoom out one position on the zoom stack - QwtEventPattern::MouseSelect6, QwtEventPattern::KeyRedo
Zoom in one position on the zoom stack - QwtEventPattern::MouseSelect2, QwtEventPattern::KeyHome
Zoom to the zoom base