// GENERATED — DO NOT EDIT
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/class.GestureClick.html).
pub type GestureClick
///|
pub(open) trait IGestureClick {
fn as_gesture_click(Self) -> GestureClick
fn connect_pressed(Self, (GestureClick, Int, Double, Double) -> Unit) -> UInt64 = _
fn connect_released(Self, (GestureClick, Int, Double, Double) -> Unit) -> UInt64 = _
fn connect_stopped(Self, (GestureClick) -> Unit) -> UInt64 = _
fn connect_unpaired_release(
Self,
(GestureClick, Double, Double, UInt, @gdk.EventSequence?) -> Unit,
) -> UInt64 = _
}
///|
pub impl IGestureClick for GestureClick with fn as_gesture_click(self) {
self
}
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/ctor.GestureClick.new.html).
pub extern "c" fn GestureClick::new() -> GestureClick = "moonbit_gtk_gesture_click_new"
///|
#borrow(instance)
extern "c" fn gtk_gesture_click_connect_pressed(
instance : GestureClick,
function : FuncRef[
(
GestureClick,
Int,
Double,
Double,
(GestureClick, Int, Double, Double) -> Unit,
) -> Unit,
],
closure : (GestureClick, Int, Double, Double) -> Unit,
) -> UInt64 = "moonbit_gtk_gesture_click_connect_pressed"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.GestureClick.pressed.html).
pub fn GestureClick::connect_pressed(
self : GestureClick,
f : (GestureClick, Int, Double, Double) -> Unit,
) -> UInt64 {
gtk_gesture_click_connect_pressed(
self,
fn(instance_, n_press, x, y, f) { f(instance_, n_press, x, y) },
f,
)
}
///|
#borrow(instance)
extern "c" fn gtk_gesture_click_connect_released(
instance : GestureClick,
function : FuncRef[
(
GestureClick,
Int,
Double,
Double,
(GestureClick, Int, Double, Double) -> Unit,
) -> Unit,
],
closure : (GestureClick, Int, Double, Double) -> Unit,
) -> UInt64 = "moonbit_gtk_gesture_click_connect_released"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.GestureClick.released.html).
pub fn GestureClick::connect_released(
self : GestureClick,
f : (GestureClick, Int, Double, Double) -> Unit,
) -> UInt64 {
gtk_gesture_click_connect_released(
self,
fn(instance_, n_press, x, y, f) { f(instance_, n_press, x, y) },
f,
)
}
///|
#borrow(instance)
extern "c" fn gtk_gesture_click_connect_stopped(
instance : GestureClick,
function : FuncRef[(GestureClick, (GestureClick) -> Unit) -> Unit],
closure : (GestureClick) -> Unit,
) -> UInt64 = "moonbit_gtk_gesture_click_connect_stopped"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.GestureClick.stopped.html).
pub fn GestureClick::connect_stopped(
self : GestureClick,
f : (GestureClick) -> Unit,
) -> UInt64 {
gtk_gesture_click_connect_stopped(self, fn(instance_, f) { f(instance_) }, f)
}
///|
#borrow(instance)
extern "c" fn gtk_gesture_click_connect_unpaired_release(
instance : GestureClick,
function : FuncRef[
(
GestureClick,
Double,
Double,
UInt,
@gdk.EventSequence?,
(GestureClick, Double, Double, UInt, @gdk.EventSequence?) -> Unit,
) -> Unit,
],
closure : (GestureClick, Double, Double, UInt, @gdk.EventSequence?) -> Unit,
) -> UInt64 = "moonbit_gtk_gesture_click_connect_unpaired_release"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.GestureClick.unpaired-release.html).
pub fn GestureClick::connect_unpaired_release(
self : GestureClick,
f : (GestureClick, Double, Double, UInt, @gdk.EventSequence?) -> Unit,
) -> UInt64 {
gtk_gesture_click_connect_unpaired_release(
self,
fn(instance_, x, y, button, sequence, f) {
f(instance_, x, y, button, sequence)
},
f,
)
}
///|
impl IGestureClick with fn connect_pressed(self, f) -> UInt64 {
self.as_gesture_click().connect_pressed(f)
}
///|
impl IGestureClick with fn connect_released(self, f) -> UInt64 {
self.as_gesture_click().connect_released(f)
}
///|
impl IGestureClick with fn connect_stopped(self, f) -> UInt64 {
self.as_gesture_click().connect_stopped(f)
}
///|
impl IGestureClick with fn connect_unpaired_release(self, f) -> UInt64 {
self.as_gesture_click().connect_unpaired_release(f)
}
///|
pub fn GestureClick::as_gesture_single(self : GestureClick) -> GestureSingle = "%identity"
///|
pub impl IGestureSingle for GestureClick with fn as_gesture_single(self) {
self.as_gesture_single()
}
///|
pub fn GestureClick::as_gesture(self : GestureClick) -> Gesture = "%identity"
///|
pub impl IGesture for GestureClick with fn as_gesture(self) {
self.as_gesture()
}
///|
pub fn GestureClick::as_event_controller(
self : GestureClick,
) -> EventController = "%identity"
///|
pub impl IEventController for GestureClick with fn as_event_controller(self) {
self.as_event_controller()
}
///|
pub fn GestureClick::as_gobject_object(self : GestureClick) -> @gobject.Object = "%identity"
///|
pub impl @gobject.IObject for GestureClick with fn as_object(self) {
self.as_gobject_object()
}