The
gtk:gesture-click class is a
gtk:gesture implementation
for clicks.
It is able to recognize multiple clicks on a nearby zone, which can be listened for through the
"pressed" signal. Whenever time or distance between clicks exceed the GTK defaults, the
"stopped" signal is
emitted, and the click counter is reset.
Signal Details
The "pressed" signal
lambda (gesture n x y) :run-last
- gesture
- The gtk:gesture-click object which received the signal.
- n
- The integer of how many touch/button press happened with this one.
- x
- The double float with the x coordinate, in widget allocation coordinates.
- y
- The double float with the y coordinate, in widget allocation coordinates.
The signal is emitted whenever a button or touch press happens.
The "released" signal
lambda (gesture n x y) :run-last
- gesture
- The gtk:gesture-click object which received the signal.
- n
- The integer with the number of presses that is paired with this release.
- x
- The double float with the x coordinate, in widget allocation coordinates.
- y
- The double float with the y coordinate, in widget allocation coordinates.
The signal is emitted when a button or touch is released. The
n
argument will report the number of press that is paired to this event, note that the
"stopped" signal may have been emitted between the press and its release,
n will only start over at the next press.
The "stopped" signal
lambda (gesture) :run-last
- gesture
- The gtk:gesture-click object which received the signal.
The signal is emitted whenever any time/distance threshold has been
exceeded.
The "unpaired-release" signal
lambda (gesture x y button sequence) :run-last
- gesture
- The gtk:gesture-click object which received the signal.
- x
- The double float with the x coordinate of the event.
- y
- The double float with the y coordinate of the event.
- button
- The unsigned integer with the button being released.
- sequence
- The gdk:event-sequence instance being released.
The signal is emitted whenever the gesture receives a release event that
had no previous corresponding press. Due to implicit grabs, this can only
happen on situations where input is grabbed elsewhere mid-press or the
pressed widget voluntarily relinquishes its implicit grab.