Package: gtk
Class gtk:event-controller-scroll
Superclassesgtk:event-controller, gobject:object, common-lisp:standard-object, common-lisp:t Documented Subclasses
None
Direct SlotsDetails The gtk:event-controller-scroll object is an event controller meant
to handle scroll events from mice and touchpads.
It is capable of handling both discrete and continuous scroll events, abstracting them both on the "scroll" signal. Deltas in the discrete
case are multiples of 1. In the case of continuous scroll events, the gtk:event-controller-scroll object encloses all "scroll" events between two "scroll-begin" and "scroll-end" signals. The behavior of the event controller can be modified by the flags given at creation time, or modified at a later point through the gtk:event-controller-scroll-flags function, e.g. because the scrolling conditions of the widget changed. The controller can be set up to emit motion for either/both vertical and horizontal scroll events through :vertical, :horizontal and :both-axes. If any axis is disabled, the respective "scroll" delta will be 0. Vertical scroll events will be translated to horizontal motion for the devices incapable of horizontal scrolling. The event controller can also be forced to emit discrete events on all devices through :discrete. This can be used to implement discrete actions triggered through scroll events, e.g. switching across combobox options. The :kinetic flag toggles the emission of the "decelerate" signal, emitted at the end of scrolling with two X/Y velocity arguments that are consistent with the motion that was received. This object was added in 3.24. Signal DetailsThe "decelerate" signallambda (controller xvel yvel) :run-firstEmitted after scroll is finished if the :kinetic flag is set. xvel and yvel express the initial velocity that was imprinted by the scroll events. xvel and yvel are expressed in pixels/ms.
The "scroll" signallambda (controller dx dy) :run-firstSignals that the widget should scroll by the amount specified by dx and dy.
The "scroll-begin" signallambda (controller) :run-firstSignals that a new scrolling operation has begun. It will only be emitted on devices capable of it.
The "scroll-end" signallambda (controller) :run-firstSignals that a new scrolling operation has finished. It will only be emitted on devices capable of it.
| Returned bySlot Access FunctionsInherited Slot Access Functions
See also |
#2023-3-1