- Qt 6.8
- Qt 3D
- C++ Classes
- Qt3DInput
- QMouseHandler
- Qt 6.8.0 Reference Documentation

# QMouseHandler Class

class Qt3DInput::QMouseHandler

Provides a means of being notified about mouse events when attached to a QMouseDevice instance. More...

Header: | #include <Qt3DInput/QMouseHandler>
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3dinput) target_link_libraries(mytarget PRIVATE Qt6::3dinput)
qmake: | QT += 3dinput
Instantiated By: | MouseHandler
Inherits: | Qt3DCore::QComponent

- List of all members, including inherited members

## Properties

- containsMouse : const bool
- sourceDevice : Qt3DInput::QMouseDevice*

## Public Functions

| QMouseHandler(Qt3DCore::QNode *parent = nullptr)
bool | containsMouse() const
Qt3DInput::QMouseDevice * | sourceDevice() const

## Public Slots

void | setSourceDevice(Qt3DInput::QMouseDevice *mouseDevice)

## Signals

void | clicked(Qt3DInput::QMouseEvent *mouse)
void | containsMouseChanged(bool containsMouse)
void | doubleClicked(Qt3DInput::QMouseEvent *mouse)
void | entered()
void | exited()
void | positionChanged(Qt3DInput::QMouseEvent *mouse)
void | pressAndHold(Qt3DInput::QMouseEvent *mouse)
void | pressed(Qt3DInput::QMouseEvent *mouse)
void | released(Qt3DInput::QMouseEvent *mouse)
void | sourceDeviceChanged(Qt3DInput::QMouseDevice *mouseDevice)
void | wheel(Qt3DInput::QWheelEvent *wheel)

## Detailed Description

Note: QMouseHandler components shouldn't be shared, not respecting that condition will most likely result in undefined behaviors.

See also QMouseDevice and QMouseEvent.

## Property Documentation

### `[read-only]` containsMouse : const bool

Holds `true` if the QMouseHandler currently contains the mouse.

Note: In this context, contains mean that the ray originating from the mouse is intersecting with the Qt3DCore::QEntity that aggregates the current QMouseHandler instance component.

Access functions:

bool | containsMouse() const

Notifier signal:

void | containsMouseChanged(bool containsMouse)

### sourceDevice : Qt3DInput::QMouseDevice*

Holds the current mouse source device of the QMouseHandler instance.

Access functions:

Qt3DInput::QMouseDevice * | sourceDevice() const
void | setSourceDevice(Qt3DInput::QMouseDevice *mouseDevice)

Notifier signal:

void | sourceDeviceChanged(Qt3DInput::QMouseDevice *mouseDevice)

## Member Function Documentation

### `[explicit]` QMouseHandler::QMouseHandler(Qt3DCore::QNode *parent = nullptr)

Constructs a new QMouseHandler instance with parent parent.

### `[signal]` void QMouseHandler::clicked(Qt3DInput::QMouseEvent *mouse)

This signal is emitted when a mouse button is clicked with the event details being contained within mouse.

### `[signal]` void QMouseHandler::doubleClicked(Qt3DInput::QMouseEvent *mouse)

This signal is emitted when a mouse button is double clicked with the event details being contained within mouse.

### `[signal]` void QMouseHandler::entered()

### `[signal]` void QMouseHandler::exited()

### `[signal]` void QMouseHandler::positionChanged(Qt3DInput::QMouseEvent *mouse)

This signal is emitted when the mouse position changes with the event details being contained within mouse

### `[signal]` void QMouseHandler::pressAndHold(Qt3DInput::QMouseEvent *mouse)

This signal is emitted when a mouse button is pressed and held down with the event details being contained within mouse

### `[signal]` void QMouseHandler::pressed(Qt3DInput::QMouseEvent *mouse)

This signal is emitted when a mouse button is pressed with the event details being contained within mouse

### `[signal]` void QMouseHandler::released(Qt3DInput::QMouseEvent *mouse)

This signal is emitted when a mouse button is released with the event details being contained within mouse

### `[slot]` void QMouseHandler::setSourceDevice(Qt3DInput::QMouseDevice *mouseDevice)

Sets the mouse device of the QMouseHandler instance to mouseDevice.

Note: Setter function for property sourceDevice.

See also sourceDevice().

### `[signal]` void QMouseHandler::wheel(Qt3DInput::QWheelEvent *wheel)

This signal is emitted when the mouse wheel is used with the event details being contained within wheel