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

Properties

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