Qt 5.11 | Qt Data Visualization | C++ Classes | Q3DInputHandler

Qt Data Visualization | Commercial or GPLv3

# Q3DInputHandler Class

Basic wheel mouse based input handler. More...

Header: | #include <Q3DInputHandler>
Since: | QtDataVisualization 1.0
Instantiated By: | InputHandler3D
Inherits: | QAbstract3DInputHandler
Inherited By: | QTouch3DInputHandler

- List of all members, including inherited members

## Properties

- rotationEnabled : bool
- selectionEnabled : bool
- zoomAtTargetEnabled : bool
- zoomEnabled : bool

- 3 properties inherited from QAbstract3DInputHandler

## Public Functions

| Q3DInputHandler(QObject *parent = nullptr)
virtual | ~Q3DInputHandler()
bool | isRotationEnabled() const
bool | isSelectionEnabled() const
bool | isZoomAtTargetEnabled() const
bool | isZoomEnabled() const
void | setRotationEnabled(bool enable)
void | setSelectionEnabled(bool enable)
void | setZoomAtTargetEnabled(bool enable)
void | setZoomEnabled(bool enable)

## Reimplemented Public Functions

virtual void | mouseMoveEvent(QMouseEvent *event, const QPoint &mousePos)
virtual void | mousePressEvent(QMouseEvent *event, const QPoint &mousePos)
virtual void | mouseReleaseEvent(QMouseEvent *event, const QPoint &mousePos)
virtual void | wheelEvent(QWheelEvent *event)

- 12 public functions inherited from QAbstract3DInputHandler

## Signals

void | rotationEnabledChanged(bool enable)
void | selectionEnabledChanged(bool enable)
void | zoomAtTargetEnabledChanged(bool enable)
void | zoomEnabledChanged(bool enable)

- 3 signals inherited from QAbstract3DInputHandler

### Additional Inherited Members

- 4 protected functions inherited from QAbstract3DInputHandler

## Detailed Description

Basic wheel mouse based input handler.

Q3DInputHandler is the basic input handler for wheel mouse type of input devices.

Default input handler has the following functionalty:

Mouse action | Action
--- | ---
Drag with right button pressed | Rotate graph within limits set for Q3DCamera.
Left click | Select item under cursor or remove selection if none. May open the secondary view depending on the selection mode.
Mouse wheel | Zoom in/out within the allowable zoom range set for Q3DCamera.
Left click on the primary view when the secondary view is visible | Closes the secondary view. Note: Secondary view is available only for Q3DBars and Q3DSurface graphs.

Rotation, zoom, and selection can each be individually disabled using corresponding properties of this class.

## Property Documentation

### rotationEnabled : bool

This property holds whether this input handler allows graph rotation.

Defaults to `true`.

This property was introduced in QtDataVisualization 1.2.

Access functions:

bool | isRotationEnabled() const
void | setRotationEnabled(bool enable)

Notifier signal:

void | rotationEnabledChanged(bool enable)

### selectionEnabled : bool

This property holds whether this input handler allows selection from the graph.

Defaults to `true`.

This property was introduced in QtDataVisualization 1.2.

Access functions:

bool | isSelectionEnabled() const
void | setSelectionEnabled(bool enable)

Notifier signal:

void | selectionEnabledChanged(bool enable)

### zoomAtTargetEnabled : bool

This property holds whether zooming should change the camera target so that the zoomed point of the graph stays at the same location after the zoom.

Defaults to `true`.

This property was introduced in QtDataVisualization 1.2.

Access functions:

bool | isZoomAtTargetEnabled() const
void | setZoomAtTargetEnabled(bool enable)

Notifier signal:

void | zoomAtTargetEnabledChanged(bool enable)

### zoomEnabled : bool

This property holds whether this input handler allows graph zooming.

Defaults to `true`.

This property was introduced in QtDataVisualization 1.2.

Access functions:

bool | isZoomEnabled() const
void | setZoomEnabled(bool enable)

Notifier signal:

void | zoomEnabledChanged(bool enable)

## Member Function Documentation

### Q3DInputHandler::Q3DInputHandler(QObject *parent = nullptr)

Constructs the basic mouse input handler. An optional parent parameter can be given and is then passed to QObject constructor.

### `[virtual]` Q3DInputHandler::~Q3DInputHandler()

Destroys the input handler.

### `[virtual]` void Q3DInputHandler::mouseMoveEvent(QMouseEvent *event, const QPoint &mousePos)

Reimplemented from QAbstract3DInputHandler::mouseMoveEvent().

Override this to change handling of mouse move events. Mouse move event is given in the event and the mouse position in mousePos.

### `[virtual]` void Q3DInputHandler::mousePressEvent(QMouseEvent *event, const QPoint &mousePos)

Reimplemented from QAbstract3DInputHandler::mousePressEvent().

Override this to change handling of mouse press events. Mouse press event is given in the event and the mouse position in mousePos.

### `[virtual]` void Q3DInputHandler::mouseReleaseEvent(QMouseEvent *event, const QPoint &mousePos)

Reimplemented from QAbstract3DInputHandler::mouseReleaseEvent().

Override this to change handling of mouse release events. Mouse release event is given in the event and the mouse position in mousePos.

### `[virtual]` void Q3DInputHandler::wheelEvent(QWheelEvent *event)

Reimplemented from QAbstract3DInputHandler::wheelEvent().

Override this to change handling of wheel events. The wheel event is given in the event.