Struct qt_gui::QWheelEvent

source ·
#[repr(C)]
pub struct QWheelEvent { /* private fields */ }
Expand description

The QWheelEvent class contains parameters that describe a wheel event.

C++ class: QWheelEvent.

C++ documentation:

The QWheelEvent class contains parameters that describe a wheel event.

Wheel events are sent to the widget under the mouse cursor, but if that widget does not handle the event they are sent to the focus widget. Wheel events are generated for both mouse wheels and trackpad scroll gestures. There are two ways to read the wheel event delta: angleDelta() returns the delta in wheel degrees. This value is always provided. pixelDelta() returns the delta in screen pixels and is available on platforms that have high-resolution trackpads, such as macOS. If that is the case, source() will return Qt::MouseEventSynthesizedBySystem.

The functions pos() and globalPos() return the mouse cursor's location at the time of the event.

A wheel event contains a special accept flag that indicates whether the receiver wants the event. You should call ignore() if you do not handle the wheel event; this ensures that it will be sent to the parent widget.

The QWidget::setEnabled() function can be used to enable or disable mouse and keyboard events for a widget.

The event handler QWidget::wheelEvent() receives wheel events.

Implementations§

source§

impl QWheelEvent

source

pub unsafe fn angle_delta(&self) -> CppBox<QPoint>

Returns the distance that the wheel is rotated, in eighths of a degree. A positive value indicates that the wheel was rotated forwards away from the user; a negative value indicates that the wheel was rotated backwards toward the user.

Calls C++ function: QPoint QWheelEvent::angleDelta() const.

C++ documentation:

Returns the distance that the wheel is rotated, in eighths of a degree. A positive value indicates that the wheel was rotated forwards away from the user; a negative value indicates that the wheel was rotated backwards toward the user.

Most mouse types work in steps of 15 degrees, in which case the delta value is a multiple of 120; i.e., 120 units * 1/8 = 15 degrees.

However, some mice have finer-resolution wheels and send delta values that are less than 120 units (less than 15 degrees). To support this possibility, you can either cumulatively add the delta values from events until the value of 120 is reached, then scroll the widget, or you can partially scroll the widget in response to each wheel event.

Example:

void MyWidget::wheelEvent(QWheelEvent *event) { QPoint numPixels = event->pixelDelta(); QPoint numDegrees = event->angleDelta() / 8;

if (!numPixels.isNull()) { scrollWithPixels(numPixels); } else if (!numDegrees.isNull()) { QPoint numSteps = numDegrees / 15; scrollWithDegrees(numSteps); }

event->accept(); }

Note: On platforms that support scrolling phases, the delta may be null when:

  • scrolling is about to begin, but the distance did not yet change (Qt::ScrollBegin),
  • or scrolling has ended and the distance did not change anymore (Qt::ScrollEnd).
source

pub unsafe fn buttons(&self) -> QFlags<MouseButton>

Returns the mouse state when the event occurred.

Calls C++ function: QFlags<Qt::MouseButton> QWheelEvent::buttons() const.

C++ documentation:

Returns the mouse state when the event occurred.

source

pub unsafe fn copy_from( &self, other: impl CastInto<Ref<QWheelEvent>> ) -> Ref<QWheelEvent>

The QWheelEvent class contains parameters that describe a wheel event.

Calls C++ function: QWheelEvent& QWheelEvent::operator=(const QWheelEvent& other).

C++ documentation:

The QWheelEvent class contains parameters that describe a wheel event.

Wheel events are sent to the widget under the mouse cursor, but if that widget does not handle the event they are sent to the focus widget. Wheel events are generated for both mouse wheels and trackpad scroll gestures. There are two ways to read the wheel event delta: angleDelta() returns the delta in wheel degrees. This value is always provided. pixelDelta() returns the delta in screen pixels and is available on platforms that have high-resolution trackpads, such as macOS. If that is the case, source() will return Qt::MouseEventSynthesizedBySystem.

The functions pos() and globalPos() return the mouse cursor's location at the time of the event.

A wheel event contains a special accept flag that indicates whether the receiver wants the event. You should call ignore() if you do not handle the wheel event; this ensures that it will be sent to the parent widget.

The QWidget::setEnabled() function can be used to enable or disable mouse and keyboard events for a widget.

The event handler QWidget::wheelEvent() receives wheel events.

source

pub unsafe fn delta(&self) -> c_int

This function has been deprecated, use pixelDelta() or angleDelta() instead.

Calls C++ function: int QWheelEvent::delta() const.

C++ documentation:

This function has been deprecated, use pixelDelta() or angleDelta() instead.

source

pub unsafe fn global_pos(&self) -> CppBox<QPoint>

Returns the global position of the mouse pointer at the time of the event. This is important on asynchronous window systems such as X11; whenever you move your widgets around in response to mouse events, globalPos() can differ a lot from the current cursor position returned by QCursor::pos().

Calls C++ function: QPoint QWheelEvent::globalPos() const.

C++ documentation:

Returns the global position of the mouse pointer at the time of the event. This is important on asynchronous window systems such as X11; whenever you move your widgets around in response to mouse events, globalPos() can differ a lot from the current cursor position returned by QCursor::pos().

See also globalX() and globalY().

source

pub unsafe fn global_pos_f(&self) -> Ref<QPointF>

Returns the global position of the mouse pointer at the time of the event. This is important on asynchronous window systems such as X11; whenever you move your widgets around in response to mouse events, globalPosF() can differ a lot from the current cursor position returned by QCursor::pos().

Calls C++ function: const QPointF& QWheelEvent::globalPosF() const.

C++ documentation:

Returns the global position of the mouse pointer at the time of the event. This is important on asynchronous window systems such as X11; whenever you move your widgets around in response to mouse events, globalPosF() can differ a lot from the current cursor position returned by QCursor::pos().

See also posF().

source

pub unsafe fn global_position(&self) -> CppBox<QPointF>

Available on cpp_lib_version="5.14.0" only.

Returns the global position of the mouse pointer at the time of the event. This is important on asynchronous window systems such as X11; whenever you move your widgets around in response to mouse events, globalPosition() can differ a lot from the current cursor position returned by QCursor::pos().

Calls C++ function: QPointF QWheelEvent::globalPosition() const.

C++ documentation:

Returns the global position of the mouse pointer at the time of the event. This is important on asynchronous window systems such as X11; whenever you move your widgets around in response to mouse events, globalPosition() can differ a lot from the current cursor position returned by QCursor::pos().

See also position().

source

pub unsafe fn global_x(&self) -> c_int

Returns the global x position of the mouse cursor at the time of the event.

Calls C++ function: int QWheelEvent::globalX() const.

C++ documentation:

Returns the global x position of the mouse cursor at the time of the event.

See also globalY() and globalPos().

source

pub unsafe fn global_y(&self) -> c_int

Returns the global y position of the mouse cursor at the time of the event.

Calls C++ function: int QWheelEvent::globalY() const.

C++ documentation:

Returns the global y position of the mouse cursor at the time of the event.

See also globalX() and globalPos().

source

pub unsafe fn inverted(&self) -> bool

Returns whether the delta values delivered with the event are inverted.

Calls C++ function: bool QWheelEvent::inverted() const.

C++ documentation:

Returns whether the delta values delivered with the event are inverted.

Normally, a vertical wheel will produce a QWheelEvent with positive delta values if the top of the wheel is rotating away from the hand operating it. Similarly, a horizontal wheel movement will produce a QWheelEvent with positive delta values if the top of the wheel is moved to the left.

However, on some platforms this is configurable, so that the same operations described above will produce negative delta values (but with the same magnitude). With the inverted property a wheel event consumer can choose to always follow the direction of the wheel, regardless of the system settings, but only for specific widgets. (One such use case could be that the user is rotating the wheel in the same direction as a visual Tumbler rotates. Another usecase is to make a slider handle follow the direction of movement of fingers on a touchpad regardless of system configuration.)

Note: Many platforms provide no such information. On such platforms inverted always returns false.

This function was introduced in Qt 5.7.

source

pub unsafe fn from_q_point_f_int_q_flags_mouse_button_q_flags_keyboard_modifier_orientation( pos: impl CastInto<Ref<QPointF>>, delta: c_int, buttons: QFlags<MouseButton>, modifiers: QFlags<KeyboardModifier>, orient: Orientation ) -> CppBox<QWheelEvent>

Constructs a wheel event object.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(const QPointF& pos, int delta, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers, Qt::Orientation orient = …).

Warning: no exact match found in C++ documentation. Below is the C++ documentation for QWheelEvent::QWheelEvent(QPointF pos, QPointF globalPos, QPoint pixelDelta, QPoint angleDelta, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, Qt::ScrollPhase phase, bool inverted, Qt::MouseEventSource source = Qt::MouseEventNotSynthesized):

Constructs a wheel event object.

The pos provides the location of the mouse cursor within the window. The position in global coordinates is specified by globalPos.

pixelDelta contains the scrolling distance in pixels on screen, while angleDelta contains the wheel rotation distance. pixelDelta is optional and can be null.

The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

The scrolling phase of the event is specified by phase.

If the wheel event comes from a physical mouse wheel, source is set to Qt::MouseEventNotSynthesized. If it comes from a gesture detected by the operating system, or from a non-mouse hardware device, such that pixelDelta is directly related to finger movement, source is set to Qt::MouseEventSynthesizedBySystem. If it comes from Qt, source would be set to Qt::MouseEventSynthesizedByQt.

If the system is configured to invert the delta values delivered with the event (such as natural scrolling of the touchpad on macOS), inverted should be true. Otherwise, inverted is false

This function was introduced in Qt 5.12.

See also position(), globalPosition(), angleDelta(), pixelDelta(), phase(), inverted(), and source().

source

pub unsafe fn from_2_q_point_f_int_q_flags_mouse_button_q_flags_keyboard_modifier_orientation( pos: impl CastInto<Ref<QPointF>>, global_pos: impl CastInto<Ref<QPointF>>, delta: c_int, buttons: QFlags<MouseButton>, modifiers: QFlags<KeyboardModifier>, orient: Orientation ) -> CppBox<QWheelEvent>

Constructs a wheel event object.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(const QPointF& pos, const QPointF& globalPos, int delta, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers, Qt::Orientation orient = …).

Warning: no exact match found in C++ documentation. Below is the C++ documentation for QWheelEvent::QWheelEvent(QPointF pos, QPointF globalPos, QPoint pixelDelta, QPoint angleDelta, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, Qt::ScrollPhase phase, bool inverted, Qt::MouseEventSource source = Qt::MouseEventNotSynthesized):

Constructs a wheel event object.

The pos provides the location of the mouse cursor within the window. The position in global coordinates is specified by globalPos.

pixelDelta contains the scrolling distance in pixels on screen, while angleDelta contains the wheel rotation distance. pixelDelta is optional and can be null.

The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

The scrolling phase of the event is specified by phase.

If the wheel event comes from a physical mouse wheel, source is set to Qt::MouseEventNotSynthesized. If it comes from a gesture detected by the operating system, or from a non-mouse hardware device, such that pixelDelta is directly related to finger movement, source is set to Qt::MouseEventSynthesizedBySystem. If it comes from Qt, source would be set to Qt::MouseEventSynthesizedByQt.

If the system is configured to invert the delta values delivered with the event (such as natural scrolling of the touchpad on macOS), inverted should be true. Otherwise, inverted is false

This function was introduced in Qt 5.12.

See also position(), globalPosition(), angleDelta(), pixelDelta(), phase(), inverted(), and source().

source

pub unsafe fn from_2_q_point_f2_q_point_int_orientation_q_flags_mouse_button_q_flags_keyboard_modifier( pos: impl CastInto<Ref<QPointF>>, global_pos: impl CastInto<Ref<QPointF>>, pixel_delta: impl CastInto<Ref<QPoint>>, angle_delta: impl CastInto<Ref<QPoint>>, qt4_delta: c_int, qt4_orientation: Orientation, buttons: QFlags<MouseButton>, modifiers: QFlags<KeyboardModifier> ) -> CppBox<QWheelEvent>

Constructs a wheel event object.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(const QPointF& pos, const QPointF& globalPos, QPoint pixelDelta, QPoint angleDelta, int qt4Delta, Qt::Orientation qt4Orientation, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers).

C++ documentation:

Constructs a wheel event object.

The pos provides the location of the mouse cursor within the window. The position in global coordinates is specified by globalPos.

pixelDelta contains the scrolling distance in pixels on screen, while angleDelta contains the wheel rotation distance. pixelDelta is optional and can be null.

The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

For backwards compatibility, the event can also hold monodirectional wheel event data: qt4Delta specifies the rotation, and qt4Orientation the direction.

The phase() is initialized to Qt::ScrollUpdate. Use the other constructor to specify the phase explicitly.

See also posF(), globalPosF(), angleDelta(), and pixelDelta().

source

pub unsafe fn from_2_q_point_f2_q_point_int_orientation_q_flags_mouse_button_q_flags_keyboard_modifier_scroll_phase( pos: impl CastInto<Ref<QPointF>>, global_pos: impl CastInto<Ref<QPointF>>, pixel_delta: impl CastInto<Ref<QPoint>>, angle_delta: impl CastInto<Ref<QPoint>>, qt4_delta: c_int, qt4_orientation: Orientation, buttons: QFlags<MouseButton>, modifiers: QFlags<KeyboardModifier>, phase: ScrollPhase ) -> CppBox<QWheelEvent>

Constructs a wheel event object.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(const QPointF& pos, const QPointF& globalPos, QPoint pixelDelta, QPoint angleDelta, int qt4Delta, Qt::Orientation qt4Orientation, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers, Qt::ScrollPhase phase).

C++ documentation:

Constructs a wheel event object.

The pos provides the location of the mouse cursor within the window. The position in global coordinates is specified by globalPos.

pixelDelta contains the scrolling distance in pixels on screen, while angleDelta contains the wheel rotation distance. pixelDelta is optional and can be null.

The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

For backwards compatibility, the event can also hold monodirectional wheel event data: qt4Delta specifies the rotation, and qt4Orientation the direction.

The scrolling phase of the event is specified by phase.

See also posF(), globalPosF(), angleDelta(), pixelDelta(), and phase().

source

pub unsafe fn from_2_q_point_f2_q_point_int_orientation_q_flags_mouse_button_q_flags_keyboard_modifier_scroll_phase_mouse_event_source( pos: impl CastInto<Ref<QPointF>>, global_pos: impl CastInto<Ref<QPointF>>, pixel_delta: impl CastInto<Ref<QPoint>>, angle_delta: impl CastInto<Ref<QPoint>>, qt4_delta: c_int, qt4_orientation: Orientation, buttons: QFlags<MouseButton>, modifiers: QFlags<KeyboardModifier>, phase: ScrollPhase, source: MouseEventSource ) -> CppBox<QWheelEvent>

Constructs a wheel event object.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(const QPointF& pos, const QPointF& globalPos, QPoint pixelDelta, QPoint angleDelta, int qt4Delta, Qt::Orientation qt4Orientation, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers, Qt::ScrollPhase phase, Qt::MouseEventSource source).

C++ documentation:

Constructs a wheel event object.

The pos provides the location of the mouse cursor within the window. The position in global coordinates is specified by globalPos.

pixelDelta contains the scrolling distance in pixels on screen, while angleDelta contains the wheel rotation distance. pixelDelta is optional and can be null.

The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

For backwards compatibility, the event can also hold monodirectional wheel event data: qt4Delta specifies the rotation, and qt4Orientation the direction.

The scrolling phase of the event is specified by phase.

If the wheel event comes from a physical mouse wheel, source is set to Qt::MouseEventNotSynthesized. If it comes from a gesture detected by the operating system, or from a non-mouse hardware device, such that pixelDelta is directly related to finger movement, source is set to Qt::MouseEventSynthesizedBySystem. If it comes from Qt, source would be set to Qt::MouseEventSynthesizedByQt.

See also posF(), globalPosF(), angleDelta(), pixelDelta(), and phase().

source

pub unsafe fn from_2_q_point_f2_q_point_int_orientation_q_flags_mouse_button_q_flags_keyboard_modifier_scroll_phase_mouse_event_source_bool( pos: impl CastInto<Ref<QPointF>>, global_pos: impl CastInto<Ref<QPointF>>, pixel_delta: impl CastInto<Ref<QPoint>>, angle_delta: impl CastInto<Ref<QPoint>>, qt4_delta: c_int, qt4_orientation: Orientation, buttons: QFlags<MouseButton>, modifiers: QFlags<KeyboardModifier>, phase: ScrollPhase, source: MouseEventSource, inverted: bool ) -> CppBox<QWheelEvent>

Constructs a wheel event object.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(const QPointF& pos, const QPointF& globalPos, QPoint pixelDelta, QPoint angleDelta, int qt4Delta, Qt::Orientation qt4Orientation, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers, Qt::ScrollPhase phase, Qt::MouseEventSource source, bool inverted).

C++ documentation:

Constructs a wheel event object.

The pos provides the location of the mouse cursor within the window. The position in global coordinates is specified by globalPos.

pixelDelta contains the scrolling distance in pixels on screen, while angleDelta contains the wheel rotation distance. pixelDelta is optional and can be null.

The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

For backwards compatibility, the event can also hold monodirectional wheel event data: qt4Delta specifies the rotation, and qt4Orientation the direction.

The scrolling phase of the event is specified by phase.

If the wheel event comes from a physical mouse wheel, source is set to Qt::MouseEventNotSynthesized. If it comes from a gesture detected by the operating system, or from a non-mouse hardware device, such that pixelDelta is directly related to finger movement, source is set to Qt::MouseEventSynthesizedBySystem. If it comes from Qt, source would be set to Qt::MouseEventSynthesizedByQt.

If the system is configured to invert the delta values delivered with the event (such as natural scrolling of the touchpad on OS X), inverted should be true. Otherwise, inverted is false

See also posF(), globalPosF(), angleDelta(), pixelDelta(), and phase().

source

pub unsafe fn from_q_point_f_int_q_flags_mouse_button_q_flags_keyboard_modifier( pos: impl CastInto<Ref<QPointF>>, delta: c_int, buttons: QFlags<MouseButton>, modifiers: QFlags<KeyboardModifier> ) -> CppBox<QWheelEvent>

Constructs a wheel event object.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(const QPointF& pos, int delta, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers).

Warning: no exact match found in C++ documentation. Below is the C++ documentation for QWheelEvent::QWheelEvent(QPointF pos, QPointF globalPos, QPoint pixelDelta, QPoint angleDelta, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, Qt::ScrollPhase phase, bool inverted, Qt::MouseEventSource source = Qt::MouseEventNotSynthesized):

Constructs a wheel event object.

The pos provides the location of the mouse cursor within the window. The position in global coordinates is specified by globalPos.

pixelDelta contains the scrolling distance in pixels on screen, while angleDelta contains the wheel rotation distance. pixelDelta is optional and can be null.

The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

The scrolling phase of the event is specified by phase.

If the wheel event comes from a physical mouse wheel, source is set to Qt::MouseEventNotSynthesized. If it comes from a gesture detected by the operating system, or from a non-mouse hardware device, such that pixelDelta is directly related to finger movement, source is set to Qt::MouseEventSynthesizedBySystem. If it comes from Qt, source would be set to Qt::MouseEventSynthesizedByQt.

If the system is configured to invert the delta values delivered with the event (such as natural scrolling of the touchpad on macOS), inverted should be true. Otherwise, inverted is false

This function was introduced in Qt 5.12.

See also position(), globalPosition(), angleDelta(), pixelDelta(), phase(), inverted(), and source().

source

pub unsafe fn from_2_q_point_f_int_q_flags_mouse_button_q_flags_keyboard_modifier( pos: impl CastInto<Ref<QPointF>>, global_pos: impl CastInto<Ref<QPointF>>, delta: c_int, buttons: QFlags<MouseButton>, modifiers: QFlags<KeyboardModifier> ) -> CppBox<QWheelEvent>

Constructs a wheel event object.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(const QPointF& pos, const QPointF& globalPos, int delta, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers).

Warning: no exact match found in C++ documentation. Below is the C++ documentation for QWheelEvent::QWheelEvent(QPointF pos, QPointF globalPos, QPoint pixelDelta, QPoint angleDelta, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, Qt::ScrollPhase phase, bool inverted, Qt::MouseEventSource source = Qt::MouseEventNotSynthesized):

Constructs a wheel event object.

The pos provides the location of the mouse cursor within the window. The position in global coordinates is specified by globalPos.

pixelDelta contains the scrolling distance in pixels on screen, while angleDelta contains the wheel rotation distance. pixelDelta is optional and can be null.

The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

The scrolling phase of the event is specified by phase.

If the wheel event comes from a physical mouse wheel, source is set to Qt::MouseEventNotSynthesized. If it comes from a gesture detected by the operating system, or from a non-mouse hardware device, such that pixelDelta is directly related to finger movement, source is set to Qt::MouseEventSynthesizedBySystem. If it comes from Qt, source would be set to Qt::MouseEventSynthesizedByQt.

If the system is configured to invert the delta values delivered with the event (such as natural scrolling of the touchpad on macOS), inverted should be true. Otherwise, inverted is false

This function was introduced in Qt 5.12.

See also position(), globalPosition(), angleDelta(), pixelDelta(), phase(), inverted(), and source().

source

pub unsafe fn from_2_q_point_f2_q_point_q_flags_mouse_button_q_flags_keyboard_modifier_scroll_phase_bool_mouse_event_source( pos: impl CastInto<Ref<QPointF>>, global_pos: impl CastInto<Ref<QPointF>>, pixel_delta: impl CastInto<Ref<QPoint>>, angle_delta: impl CastInto<Ref<QPoint>>, buttons: QFlags<MouseButton>, modifiers: QFlags<KeyboardModifier>, phase: ScrollPhase, inverted: bool, source: MouseEventSource ) -> CppBox<QWheelEvent>

Available on cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Constructs a wheel event object.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(QPointF pos, QPointF globalPos, QPoint pixelDelta, QPoint angleDelta, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers, Qt::ScrollPhase phase, bool inverted, Qt::MouseEventSource source = …).

C++ documentation:

Constructs a wheel event object.

The pos provides the location of the mouse cursor within the window. The position in global coordinates is specified by globalPos.

pixelDelta contains the scrolling distance in pixels on screen, while angleDelta contains the wheel rotation distance. pixelDelta is optional and can be null.

The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

The scrolling phase of the event is specified by phase.

If the wheel event comes from a physical mouse wheel, source is set to Qt::MouseEventNotSynthesized. If it comes from a gesture detected by the operating system, or from a non-mouse hardware device, such that pixelDelta is directly related to finger movement, source is set to Qt::MouseEventSynthesizedBySystem. If it comes from Qt, source would be set to Qt::MouseEventSynthesizedByQt.

If the system is configured to invert the delta values delivered with the event (such as natural scrolling of the touchpad on macOS), inverted should be true. Otherwise, inverted is false

See also posF(), globalPosF(), angleDelta(), pixelDelta(), and phase().

source

pub unsafe fn from_2_q_point_f2_q_point_q_flags_mouse_button_q_flags_keyboard_modifier_scroll_phase_bool( pos: impl CastInto<Ref<QPointF>>, global_pos: impl CastInto<Ref<QPointF>>, pixel_delta: impl CastInto<Ref<QPoint>>, angle_delta: impl CastInto<Ref<QPoint>>, buttons: QFlags<MouseButton>, modifiers: QFlags<KeyboardModifier>, phase: ScrollPhase, inverted: bool ) -> CppBox<QWheelEvent>

Available on cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Constructs a wheel event object.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(QPointF pos, QPointF globalPos, QPoint pixelDelta, QPoint angleDelta, QFlags<Qt::MouseButton> buttons, QFlags<Qt::KeyboardModifier> modifiers, Qt::ScrollPhase phase, bool inverted).

C++ documentation:

Constructs a wheel event object.

The pos provides the location of the mouse cursor within the window. The position in global coordinates is specified by globalPos.

pixelDelta contains the scrolling distance in pixels on screen, while angleDelta contains the wheel rotation distance. pixelDelta is optional and can be null.

The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

The scrolling phase of the event is specified by phase.

If the wheel event comes from a physical mouse wheel, source is set to Qt::MouseEventNotSynthesized. If it comes from a gesture detected by the operating system, or from a non-mouse hardware device, such that pixelDelta is directly related to finger movement, source is set to Qt::MouseEventSynthesizedBySystem. If it comes from Qt, source would be set to Qt::MouseEventSynthesizedByQt.

If the system is configured to invert the delta values delivered with the event (such as natural scrolling of the touchpad on macOS), inverted should be true. Otherwise, inverted is false

See also posF(), globalPosF(), angleDelta(), pixelDelta(), and phase().

source

pub unsafe fn new_copy( other: impl CastInto<Ref<QWheelEvent>> ) -> CppBox<QWheelEvent>

The QWheelEvent class contains parameters that describe a wheel event.

Calls C++ function: [constructor] void QWheelEvent::QWheelEvent(const QWheelEvent& other).

C++ documentation:

The QWheelEvent class contains parameters that describe a wheel event.

Wheel events are sent to the widget under the mouse cursor, but if that widget does not handle the event they are sent to the focus widget. Wheel events are generated for both mouse wheels and trackpad scroll gestures. There are two ways to read the wheel event delta: angleDelta() returns the delta in wheel degrees. This value is always provided. pixelDelta() returns the delta in screen pixels and is available on platforms that have high-resolution trackpads, such as macOS. If that is the case, source() will return Qt::MouseEventSynthesizedBySystem.

The functions pos() and globalPos() return the mouse cursor's location at the time of the event.

A wheel event contains a special accept flag that indicates whether the receiver wants the event. You should call ignore() if you do not handle the wheel event; this ensures that it will be sent to the parent widget.

The QWidget::setEnabled() function can be used to enable or disable mouse and keyboard events for a widget.

The event handler QWidget::wheelEvent() receives wheel events.

source

pub unsafe fn orientation(&self) -> Orientation

Returns the wheel's orientation.

Calls C++ function: Qt::Orientation QWheelEvent::orientation() const.

C++ documentation:

Returns the wheel’s orientation.

Use angleDelta() instead.

source

pub unsafe fn phase(&self) -> ScrollPhase

Returns the scrolling phase of this wheel event.

Calls C++ function: Qt::ScrollPhase QWheelEvent::phase() const.

C++ documentation:

Returns the scrolling phase of this wheel event.

Note: The Qt::ScrollBegin and Qt::ScrollEnd phases are currently supported only on macOS.

This function was introduced in Qt 5.2.

source

pub unsafe fn pixel_delta(&self) -> CppBox<QPoint>

Returns the scrolling distance in pixels on screen. This value is provided on platforms that support high-resolution pixel-based delta values, such as macOS. The value should be used directly to scroll content on screen.

Calls C++ function: QPoint QWheelEvent::pixelDelta() const.

C++ documentation:

Returns the scrolling distance in pixels on screen. This value is provided on platforms that support high-resolution pixel-based delta values, such as macOS. The value should be used directly to scroll content on screen.

Example:

void MyWidget::wheelEvent(QWheelEvent *event) { QPoint numPixels = event->pixelDelta(); QPoint numDegrees = event->angleDelta() / 8;

if (!numPixels.isNull()) { scrollWithPixels(numPixels); } else if (!numDegrees.isNull()) { QPoint numSteps = numDegrees / 15; scrollWithDegrees(numSteps); }

event->accept(); }

Note: On platforms that support scrolling phases, the delta may be null when:

  • scrolling is about to begin, but the distance did not yet change (Qt::ScrollBegin),
  • or scrolling has ended and the distance did not change anymore (Qt::ScrollEnd).

Note: On X11 this value is driver specific and unreliable, use angleDelta() instead

source

pub unsafe fn pos(&self) -> CppBox<QPoint>

Returns the position of the mouse cursor relative to the widget that received the event.

Calls C++ function: QPoint QWheelEvent::pos() const.

C++ documentation:

Returns the position of the mouse cursor relative to the widget that received the event.

If you move your widgets around in response to mouse events, use globalPos() instead of this function.

See also x(), y(), and globalPos().

source

pub unsafe fn pos_f(&self) -> Ref<QPointF>

Returns the position of the mouse cursor relative to the widget that received the event.

Calls C++ function: const QPointF& QWheelEvent::posF() const.

C++ documentation:

Returns the position of the mouse cursor relative to the widget that received the event.

If you move your widgets around in response to mouse events, use globalPosF() instead of this function.

See also globalPosF().

source

pub unsafe fn position(&self) -> CppBox<QPointF>

Available on cpp_lib_version="5.14.0" only.

Returns the position of the mouse cursor relative to the widget that received the event.

Calls C++ function: QPointF QWheelEvent::position() const.

C++ documentation:

Returns the position of the mouse cursor relative to the widget that received the event.

If you move your widgets around in response to mouse events, use globalPosition() instead of this function.

See also globalPosition().

source

pub unsafe fn source(&self) -> MouseEventSource

Returns information about the wheel event source.

Calls C++ function: Qt::MouseEventSource QWheelEvent::source() const.

C++ documentation:

Returns information about the wheel event source.

The source can be used to distinguish between events that come from a mouse with a physical wheel and events that are generated by some other means, such as a flick gesture on a touchpad.

Note: Many platforms provide no such information. On such platforms Qt::MouseEventNotSynthesized is returned always.

This function was introduced in Qt 5.5.

See also Qt::MouseEventSource.

source

pub unsafe fn x(&self) -> c_int

Returns the x position of the mouse cursor, relative to the widget that received the event.

Calls C++ function: int QWheelEvent::x() const.

C++ documentation:

Returns the x position of the mouse cursor, relative to the widget that received the event.

See also y() and pos().

source

pub unsafe fn y(&self) -> c_int

Returns the y position of the mouse cursor, relative to the widget that received the event.

Calls C++ function: int QWheelEvent::y() const.

C++ documentation:

Returns the y position of the mouse cursor, relative to the widget that received the event.

See also x() and pos().

Methods from Deref<Target = QInputEvent>§

source

pub unsafe fn copy_from( &self, other: impl CastInto<Ref<QInputEvent>> ) -> Ref<QInputEvent>

The QInputEvent class is the base class for events that describe user input.

Calls C++ function: QInputEvent& QInputEvent::operator=(const QInputEvent& other).

C++ documentation:

The QInputEvent class is the base class for events that describe user input.

source

pub unsafe fn modifiers(&self) -> QFlags<KeyboardModifier>

Returns the keyboard modifier flags that existed immediately before the event occurred.

Calls C++ function: QFlags<Qt::KeyboardModifier> QInputEvent::modifiers() const.

C++ documentation:

Returns the keyboard modifier flags that existed immediately before the event occurred.

See also QGuiApplication::keyboardModifiers().

source

pub unsafe fn set_modifiers(&self, amodifiers: QFlags<KeyboardModifier>)

Calls C++ function: void QInputEvent::setModifiers(QFlags<Qt::KeyboardModifier> amodifiers).

source

pub unsafe fn set_timestamp(&self, atimestamp: c_ulong)

Calls C++ function: void QInputEvent::setTimestamp(unsigned long atimestamp).

source

pub unsafe fn timestamp(&self) -> c_ulong

Returns the window system's timestamp for this event. It will normally be in milliseconds since some arbitrary point in time, such as the time when the system was started.

Calls C++ function: unsigned long QInputEvent::timestamp() const.

C++ documentation:

Returns the window system’s timestamp for this event. It will normally be in milliseconds since some arbitrary point in time, such as the time when the system was started.

Methods from Deref<Target = QEvent>§

source

pub unsafe fn accept(&self)

Sets the accept flag of the event object, the equivalent of calling setAccepted(true).

Calls C++ function: void QEvent::accept().

C++ documentation:

Sets the accept flag of the event object, the equivalent of calling setAccepted(true).

Setting the accept parameter indicates that the event receiver wants the event. Unwanted events might be propagated to the parent widget.

See also ignore().

source

pub unsafe fn copy_from(&self, other: impl CastInto<Ref<QEvent>>) -> Ref<QEvent>

Calls C++ function: QEvent& QEvent::operator=(const QEvent& other).

source

pub unsafe fn ignore(&self)

Clears the accept flag parameter of the event object, the equivalent of calling setAccepted(false).

Calls C++ function: void QEvent::ignore().

C++ documentation:

Clears the accept flag parameter of the event object, the equivalent of calling setAccepted(false).

Clearing the accept parameter indicates that the event receiver does not want the event. Unwanted events might be propagated to the parent widget.

See also accept().

source

pub unsafe fn is_accepted(&self) -> bool

the accept flag of the event object

Calls C++ function: bool QEvent::isAccepted() const.

C++ documentation:

the accept flag of the event object

Setting the accept parameter indicates that the event receiver wants the event. Unwanted events might be propagated to the parent widget. By default, isAccepted() is set to true, but don't rely on this as subclasses may choose to clear it in their constructor.

For convenience, the accept flag can also be set with accept(), and cleared with ignore().

Access functions:

bool isAccepted() const
void setAccepted(bool accepted)
source

pub unsafe fn set_accepted(&self, accepted: bool)

the accept flag of the event object

Calls C++ function: void QEvent::setAccepted(bool accepted).

C++ documentation:

the accept flag of the event object

Setting the accept parameter indicates that the event receiver wants the event. Unwanted events might be propagated to the parent widget. By default, isAccepted() is set to true, but don't rely on this as subclasses may choose to clear it in their constructor.

For convenience, the accept flag can also be set with accept(), and cleared with ignore().

Access functions:

bool isAccepted() const
void setAccepted(bool accepted)
source

pub unsafe fn spontaneous(&self) -> bool

Returns true if the event originated outside the application (a system event); otherwise returns false.

Calls C++ function: bool QEvent::spontaneous() const.

C++ documentation:

Returns true if the event originated outside the application (a system event); otherwise returns false.

The return value of this function is not defined for paint events.

source

pub unsafe fn type_(&self) -> Type

Returns the event type.

Calls C++ function: QEvent::Type QEvent::type() const.

C++ documentation:

Returns the event type.

Trait Implementations§

source§

impl CppDeletable for QWheelEvent

source§

unsafe fn delete(&self)

Calls C++ function: virtual [destructor] void QWheelEvent::~QWheelEvent().

source§

impl Deref for QWheelEvent

source§

fn deref(&self) -> &QInputEvent

Calls C++ function: QInputEvent* static_cast<QInputEvent*>(QWheelEvent* ptr).

§

type Target = QInputEvent

The resulting type after dereferencing.
source§

impl DynamicCast<QWheelEvent> for QEvent

source§

unsafe fn dynamic_cast(ptr: Ptr<QEvent>) -> Ptr<QWheelEvent>

Calls C++ function: QWheelEvent* dynamic_cast<QWheelEvent*>(QEvent* ptr).

source§

impl DynamicCast<QWheelEvent> for QInputEvent

source§

unsafe fn dynamic_cast(ptr: Ptr<QInputEvent>) -> Ptr<QWheelEvent>

Calls C++ function: QWheelEvent* dynamic_cast<QWheelEvent*>(QInputEvent* ptr).

source§

impl StaticDowncast<QWheelEvent> for QEvent

source§

unsafe fn static_downcast(ptr: Ptr<QEvent>) -> Ptr<QWheelEvent>

Calls C++ function: QWheelEvent* static_cast<QWheelEvent*>(QEvent* ptr).

source§

impl StaticDowncast<QWheelEvent> for QInputEvent

source§

unsafe fn static_downcast(ptr: Ptr<QInputEvent>) -> Ptr<QWheelEvent>

Calls C++ function: QWheelEvent* static_cast<QWheelEvent*>(QInputEvent* ptr).

source§

impl StaticUpcast<QEvent> for QWheelEvent

source§

unsafe fn static_upcast(ptr: Ptr<QWheelEvent>) -> Ptr<QEvent>

Calls C++ function: QEvent* static_cast<QEvent*>(QWheelEvent* ptr).

source§

impl StaticUpcast<QInputEvent> for QWheelEvent

source§

unsafe fn static_upcast(ptr: Ptr<QWheelEvent>) -> Ptr<QInputEvent>

Calls C++ function: QInputEvent* static_cast<QInputEvent*>(QWheelEvent* ptr).

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T, U> CastInto<U> for T
where U: CastFrom<T>,

source§

unsafe fn cast_into(self) -> U

Performs the conversion. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> StaticUpcast<T> for T

source§

unsafe fn static_upcast(ptr: Ptr<T>) -> Ptr<T>

Convert type of a const pointer. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.