Qwt User's Guide  6.1.6
QwtMagnifier Class Referenceabstract

QwtMagnifier provides zooming, by magnifying in steps. More...

#include <qwt_magnifier.h>

Inheritance diagram for QwtMagnifier:

Public Member Functions

 QwtMagnifier (QWidget *)
 
virtual ~QwtMagnifier ()
 Destructor.
 
QWidget * parentWidget ()
 
const QWidget * parentWidget () const
 
void setEnabled (bool)
 En/disable the magnifier. More...
 
bool isEnabled () const
 
void setMouseFactor (double)
 Change the mouse factor. More...
 
double mouseFactor () const
 
void setMouseButton (Qt::MouseButton, Qt::KeyboardModifiers=Qt::NoModifier)
 
void getMouseButton (Qt::MouseButton &, Qt::KeyboardModifiers &) const
 
void setWheelFactor (double)
 Change the wheel factor. More...
 
double wheelFactor () const
 
void setWheelModifiers (Qt::KeyboardModifiers)
 
Qt::KeyboardModifiers wheelModifiers () const
 
void setKeyFactor (double)
 Change the key factor. More...
 
double keyFactor () const
 
void setZoomInKey (int key, Qt::KeyboardModifiers=Qt::NoModifier)
 
void getZoomInKey (int &key, Qt::KeyboardModifiers &) const
 Retrieve the settings of the zoom in key. More...
 
void setZoomOutKey (int key, Qt::KeyboardModifiers=Qt::NoModifier)
 
void getZoomOutKey (int &key, Qt::KeyboardModifiers &) const
 Retrieve the settings of the zoom out key. More...
 
virtual bool eventFilter (QObject *, QEvent *)
 Event filter. More...
 

Protected Member Functions

virtual void rescale (double factor)=0
 
virtual void widgetMousePressEvent (QMouseEvent *)
 
virtual void widgetMouseReleaseEvent (QMouseEvent *)
 
virtual void widgetMouseMoveEvent (QMouseEvent *)
 
virtual void widgetWheelEvent (QWheelEvent *)
 
virtual void widgetKeyPressEvent (QKeyEvent *)
 
virtual void widgetKeyReleaseEvent (QKeyEvent *)
 

Detailed Description

QwtMagnifier provides zooming, by magnifying in steps.

Using QwtMagnifier a plot can be zoomed in/out in steps using keys, the mouse wheel or moving a mouse button in vertical direction.

Constructor & Destructor Documentation

◆ QwtMagnifier()

QwtMagnifier::QwtMagnifier ( QWidget *  parent)
explicit

Constructor

Parameters
parentWidget to be magnified

Member Function Documentation

◆ eventFilter()

bool QwtMagnifier::eventFilter ( QObject *  object,
QEvent *  event 
)
virtual

Event filter.

When isEnabled() is true, the mouse events of the observed widget are filtered.

Parameters
objectObject to be filtered
eventEvent
Returns
Forwarded to QObject::eventFilter()
See also
widgetMousePressEvent(), widgetMouseReleaseEvent(), widgetMouseMoveEvent(), widgetWheelEvent(), widgetKeyPressEvent() widgetKeyReleaseEvent()

◆ getMouseButton()

void QwtMagnifier::getMouseButton ( Qt::MouseButton &  button,
Qt::KeyboardModifiers &  modifiers 
) const

◆ getZoomInKey()

void QwtMagnifier::getZoomInKey ( int &  key,
Qt::KeyboardModifiers &  modifiers 
) const

Retrieve the settings of the zoom in key.

Parameters
keyKey code, see Qt::Key
modifiersKeyboard modifiers
See also
setZoomInKey()

◆ getZoomOutKey()

void QwtMagnifier::getZoomOutKey ( int &  key,
Qt::KeyboardModifiers &  modifiers 
) const

Retrieve the settings of the zoom out key.

Parameters
keyKey code, see Qt::Key
modifiersKeyboard modifiers
See also
setZoomOutKey()

◆ isEnabled()

bool QwtMagnifier::isEnabled ( ) const
Returns
true when enabled, false otherwise
See also
setEnabled(), eventFilter()

◆ keyFactor()

double QwtMagnifier::keyFactor ( ) const
Returns
Key factor
See also
setKeyFactor()

◆ mouseFactor()

double QwtMagnifier::mouseFactor ( ) const
Returns
Mouse factor
See also
setMouseFactor()

◆ parentWidget() [1/2]

QWidget * QwtMagnifier::parentWidget ( )
Returns
Parent widget, where the rescaling happens

◆ parentWidget() [2/2]

const QWidget * QwtMagnifier::parentWidget ( ) const
Returns
Parent widget, where the rescaling happens

◆ rescale()

virtual void QwtMagnifier::rescale ( double  factor)
protectedpure virtual

Rescale the parent widget

Parameters
factorScale factor

Implemented in QwtPlotMagnifier.

◆ setEnabled()

void QwtMagnifier::setEnabled ( bool  on)

En/disable the magnifier.

When enabled is true an event filter is installed for the observed widget, otherwise the event filter is removed.

Parameters
ontrue or false
See also
isEnabled(), eventFilter()

◆ setKeyFactor()

void QwtMagnifier::setKeyFactor ( double  factor)

Change the key factor.

The key factor defines the ratio between the current range on the parent widget and the zoomed range for each key press of the zoom in/out keys. The default value is 0.9.

Parameters
factorKey factor
See also
keyFactor(), setZoomInKey(), setZoomOutKey(), setWheelFactor, setMouseFactor()

◆ setMouseButton()

void QwtMagnifier::setMouseButton ( Qt::MouseButton  button,
Qt::KeyboardModifiers  modifiers = Qt::NoModifier 
)

Assign the mouse button, that is used for zooming in/out. The default value is Qt::RightButton.

Parameters
buttonButton
modifiersKeyboard modifiers
See also
getMouseButton()

◆ setMouseFactor()

void QwtMagnifier::setMouseFactor ( double  factor)

Change the mouse factor.

The mouse factor defines the ratio between the current range on the parent widget and the zoomed range for each vertical mouse movement. The default value is 0.95.

Parameters
factorWheel factor
See also
mouseFactor(), setMouseButton(), setWheelFactor(), setKeyFactor()

◆ setWheelFactor()

void QwtMagnifier::setWheelFactor ( double  factor)

Change the wheel factor.

The wheel factor defines the ratio between the current range on the parent widget and the zoomed range for each step of the wheel.

Use values > 1 for magnification (i.e. 2.0) and values < 1 for scaling down (i.e. 1/2.0 = 0.5). You can use this feature for inverting the direction of the wheel.

The default value is 0.9.

Parameters
factorWheel factor
See also
wheelFactor(), setWheelButtonState(), setMouseFactor(), setKeyFactor()

◆ setWheelModifiers()

void QwtMagnifier::setWheelModifiers ( Qt::KeyboardModifiers  modifiers)

Assign keyboard modifiers for zooming in/out using the wheel. The default modifiers are Qt::NoModifiers.

Parameters
modifiersKeyboard modifiers
See also
wheelModifiers()

◆ setZoomInKey()

void QwtMagnifier::setZoomInKey ( int  key,
Qt::KeyboardModifiers  modifiers = Qt::NoModifier 
)

Assign the key, that is used for zooming in. The default combination is Qt::Key_Plus + Qt::NoModifier.

Parameters
key
modifiers
See also
getZoomInKey(), setZoomOutKey()

◆ setZoomOutKey()

void QwtMagnifier::setZoomOutKey ( int  key,
Qt::KeyboardModifiers  modifiers = Qt::NoModifier 
)

Assign the key, that is used for zooming out. The default combination is Qt::Key_Minus + Qt::NoModifier.

Parameters
key
modifiers
See also
getZoomOutKey(), setZoomOutKey()

◆ wheelFactor()

double QwtMagnifier::wheelFactor ( ) const
Returns
Wheel factor
See also
setWheelFactor()

◆ wheelModifiers()

Qt::KeyboardModifiers QwtMagnifier::wheelModifiers ( ) const
Returns
Wheel modifiers
See also
setWheelModifiers()

◆ widgetKeyPressEvent()

void QwtMagnifier::widgetKeyPressEvent ( QKeyEvent *  keyEvent)
protectedvirtual

Handle a key press event for the observed widget.

Parameters
keyEventKey event
See also
eventFilter(), widgetKeyReleaseEvent()

◆ widgetKeyReleaseEvent()

void QwtMagnifier::widgetKeyReleaseEvent ( QKeyEvent *  keyEvent)
protectedvirtual

Handle a key release event for the observed widget.

Parameters
keyEventKey event
See also
eventFilter(), widgetKeyReleaseEvent()

◆ widgetMouseMoveEvent()

void QwtMagnifier::widgetMouseMoveEvent ( QMouseEvent *  mouseEvent)
protectedvirtual

Handle a mouse move event for the observed widget.

Parameters
mouseEventMouse event
See also
eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(),

◆ widgetMousePressEvent()

void QwtMagnifier::widgetMousePressEvent ( QMouseEvent *  mouseEvent)
protectedvirtual

Handle a mouse press event for the observed widget.

Parameters
mouseEventMouse event
See also
eventFilter(), widgetMouseReleaseEvent(), widgetMouseMoveEvent()

◆ widgetMouseReleaseEvent()

void QwtMagnifier::widgetMouseReleaseEvent ( QMouseEvent *  mouseEvent)
protectedvirtual

Handle a mouse release event for the observed widget.

Parameters
mouseEventMouse event
See also
eventFilter(), widgetMousePressEvent(), widgetMouseMoveEvent(),

◆ widgetWheelEvent()

void QwtMagnifier::widgetWheelEvent ( QWheelEvent *  wheelEvent)
protectedvirtual

Handle a wheel event for the observed widget.

Parameters
wheelEventWheel event
See also
eventFilter()