# 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

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

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

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

Returns:
  Parent widget, where the rescaling happens

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

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