# QwtMagnifier Class Reference

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

`#include <qwt_magnifier.h>`

Inheritance diagram for QwtMagnifier:
[legend]

List of all members.

## Public Member Functions

virtual bool | eventFilter (QObject *, QEvent *)
void | getMouseButton (int &button, int &buttonState) const
void | getZoomInKey (int &key, int &modifiers) const
void | getZoomOutKey (int &key, int &modifiers) const
bool | isEnabled () const
double | keyFactor () const
double | mouseFactor () const
const QWidget * | parentWidget () const
QWidget * | parentWidget ()
| QwtMagnifier (QWidget *)
void | setEnabled (bool)
void | setKeyFactor (double)
void | setMouseButton (int button, int buttonState=Qt::NoButton)
void | setMouseFactor (double)
void | setWheelButtonState (int buttonState)
void | setWheelFactor (double)
void | setZoomInKey (int key, int modifiers)
void | setZoomOutKey (int key, int modifiers)
int | wheelButtonState () const
double | wheelFactor () const
virtual | ~QwtMagnifier ()

## Protected Member Functions

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

## 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 | ( | QWidget * | parent | ) | `[explicit]`

Constructor

Parameters:

  parent | Widget to be magnified

QwtMagnifier::~QwtMagnifier | ( |  | ) | `[virtual]`

Destructor.

## Member Function Documentation

bool QwtMagnifier::eventFilter | ( | QObject * | o,
|  | QEvent * | e
| ) |  | `[virtual]`

Event filter.

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

See also:
  widgetMousePressEvent(), widgetMouseReleaseEvent(), widgetMouseMoveEvent(), widgetWheelEvent(), widgetKeyPressEvent() widgetKeyReleaseEvent()

void QwtMagnifier::getMouseButton | ( | int & | button,
|  | int & | buttonState
| ) |  | const

See also:
  setMouseButton()

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

See also:
  setZoomInKey()

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

See also:
  setZoomOutKey()

bool QwtMagnifier::isEnabled | ( |  | ) | const

Returns:
  true when enabled, false otherwise

See also:
  setEnabled(), eventFilter()

double QwtMagnifier::keyFactor | ( |  | ) | const

Returns:
  Key factor

See also:
  setKeyFactor()

double QwtMagnifier::mouseFactor | ( |  | ) | const

Returns:
  Mouse factor

See also:
  setMouseFactor()

QWidget * QwtMagnifier::parentWidget | ( |  | ) |

Returns:
  Parent widget, where the rescaling happens

const QWidget * QwtMagnifier::parentWidget | ( |  | ) | const

Returns:
  Parent widget, where the rescaling happens

virtual void QwtMagnifier::rescale | ( | double | factor | ) | `[protected, pure virtual]`

Rescale the parent widget

Parameters:

  factor | Scale factor

Implemented in QwtPlotMagnifier.

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:

  on | true or false

See also:
  isEnabled(), eventFilter()

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:

  factor | Key factor

See also:
  keyFactor(), setZoomInKey(), setZoomOutKey(), setWheelFactor, setMouseFactor()

void QwtMagnifier::setMouseButton | ( | int | button,
|  | int | buttonState = `Qt::NoButton`
| ) |  |

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

Parameters:

  button | Button
  buttonState | Button state

See also:
  getMouseButton()

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:

  factor | Wheel factor

See also:
  mouseFactor(), setMouseButton(), setWheelFactor(), setKeyFactor()

void QwtMagnifier::setWheelButtonState | ( | int | buttonState | ) |

Assign a mandatory button state for zooming in/out using the wheel. The default button state is Qt::NoButton.

Parameters:

  buttonState | Button state

See also:
  wheelButtonState()

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. The default value is 0.9.

Parameters:

  factor | Wheel factor

See also:
  wheelFactor(), setWheelButtonState(), setMouseFactor(), setKeyFactor()

void QwtMagnifier::setZoomInKey | ( | int | key,
|  | int | modifiers
| ) |  |

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

void QwtMagnifier::setZoomOutKey | ( | int | key,
|  | int | modifiers
| ) |  |

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

int QwtMagnifier::wheelButtonState | ( |  | ) | const

Returns:
  Wheel button state

See also:
  setWheelButtonState()

double QwtMagnifier::wheelFactor | ( |  | ) | const

Returns:
  Wheel factor

See also:
  setWheelFactor()

void QwtMagnifier::widgetKeyPressEvent | ( | QKeyEvent * | ke | ) | `[protected, virtual]`

Handle a key press event for the observed widget.

Parameters:

  ke | Key event

See also:
  eventFilter(), widgetKeyReleaseEvent()

void QwtMagnifier::widgetKeyReleaseEvent | ( | QKeyEvent * |  | ) | `[protected, virtual]`

Handle a key release event for the observed widget.

Parameters:

  ke | Key event

See also:
  eventFilter(), widgetKeyReleaseEvent()

void QwtMagnifier::widgetMouseMoveEvent | ( | QMouseEvent * | me | ) | `[protected, virtual]`

Handle a mouse move event for the observed widget.

Parameters:

  me | Mouse event

See also:
  eventFilter(), widgetMousePressEvent(), widgetMouseReleaseEvent(),

void QwtMagnifier::widgetMousePressEvent | ( | QMouseEvent * | me | ) | `[protected, virtual]`

Handle a mouse press event for the observed widget.

Parameters:

  me | Mouse event

See also:
  eventFilter(), widgetMouseReleaseEvent(), widgetMouseMoveEvent()

void QwtMagnifier::widgetMouseReleaseEvent | ( | QMouseEvent * |  | ) | `[protected, virtual]`

Handle a mouse release event for the observed widget.

See also:
  eventFilter(), widgetMousePressEvent(), widgetMouseMoveEvent(),

void QwtMagnifier::widgetWheelEvent | ( | QWheelEvent * | we | ) | `[protected, virtual]`

Handle a wheel event for the observed widget.

Parameters:

  we | Wheel event

See also:
  eventFilter()