Qwt User's Guide  6.2.0
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 *) override
 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.

Definition at line 27 of file qwt_magnifier.h.

Constructor & Destructor Documentation

◆ QwtMagnifier()

QwtMagnifier::QwtMagnifier ( QWidget *  parent)
explicit

Constructor

Parameters
parentWidget to be magnified

Definition at line 63 of file qwt_magnifier.cpp.

Member Function Documentation

◆ eventFilter()

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

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()

Definition at line 317 of file qwt_magnifier.cpp.

◆ getMouseButton()

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

Definition at line 210 of file qwt_magnifier.cpp.

◆ 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()

Definition at line 265 of file qwt_magnifier.cpp.

◆ 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()

Definition at line 295 of file qwt_magnifier.cpp.

◆ isEnabled()

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

Definition at line 113 of file qwt_magnifier.cpp.

◆ keyFactor()

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

Definition at line 237 of file qwt_magnifier.cpp.

◆ mouseFactor()

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

Definition at line 188 of file qwt_magnifier.cpp.

◆ parentWidget() [1/2]

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

Definition at line 499 of file qwt_magnifier.cpp.

◆ parentWidget() [2/2]

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

Definition at line 505 of file qwt_magnifier.cpp.

◆ rescale()

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

Rescale the parent widget

Parameters
factorScale factor

◆ 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()

Definition at line 92 of file qwt_magnifier.cpp.

◆ 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()

Definition at line 228 of file qwt_magnifier.cpp.

◆ 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()

Definition at line 202 of file qwt_magnifier.cpp.

◆ 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()

Definition at line 179 of file qwt_magnifier.cpp.

◆ 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()

Definition at line 134 of file qwt_magnifier.cpp.

◆ 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()

Definition at line 155 of file qwt_magnifier.cpp.

◆ 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()

Definition at line 250 of file qwt_magnifier.cpp.

◆ 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()

Definition at line 280 of file qwt_magnifier.cpp.

◆ wheelFactor()

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

Definition at line 143 of file qwt_magnifier.cpp.

◆ wheelModifiers()

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

Definition at line 164 of file qwt_magnifier.cpp.

◆ widgetKeyPressEvent()

void QwtMagnifier::widgetKeyPressEvent ( QKeyEvent *  keyEvent)
protectedvirtual

Handle a key press event for the observed widget.

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

Reimplemented in QwtPolarMagnifier.

Definition at line 473 of file qwt_magnifier.cpp.

◆ widgetKeyReleaseEvent()

void QwtMagnifier::widgetKeyReleaseEvent ( QKeyEvent *  keyEvent)
protectedvirtual

Handle a key release event for the observed widget.

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

Definition at line 493 of file qwt_magnifier.cpp.

◆ widgetMouseMoveEvent()

void QwtMagnifier::widgetMouseMoveEvent ( QMouseEvent *  mouseEvent)
protectedvirtual

Handle a mouse move event for the observed widget.

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

Definition at line 407 of file qwt_magnifier.cpp.

◆ widgetMousePressEvent()

void QwtMagnifier::widgetMousePressEvent ( QMouseEvent *  mouseEvent)
protectedvirtual

Handle a mouse press event for the observed widget.

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

Definition at line 365 of file qwt_magnifier.cpp.

◆ widgetMouseReleaseEvent()

void QwtMagnifier::widgetMouseReleaseEvent ( QMouseEvent *  mouseEvent)
protectedvirtual

Handle a mouse release event for the observed widget.

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

Definition at line 390 of file qwt_magnifier.cpp.

◆ widgetWheelEvent()

void QwtMagnifier::widgetWheelEvent ( QWheelEvent *  wheelEvent)
protectedvirtual

Handle a wheel event for the observed widget.

Parameters
wheelEventWheel event
See also
eventFilter()

Definition at line 431 of file qwt_magnifier.cpp.