// GENERATED — DO NOT EDIT
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/class.EventControllerScroll.html).
pub type EventControllerScroll
///|
pub(open) trait IEventControllerScroll {
fn as_event_controller_scroll(Self) -> EventControllerScroll
fn get_flags(Self) -> EventControllerScrollFlags = _
fn get_unit(Self) -> @gdk.ScrollUnit = _
fn set_flags(Self, EventControllerScrollFlags) -> Unit = _
fn connect_decelerate(Self, (EventControllerScroll, Double, Double) -> Unit) -> UInt64 = _
fn connect_scroll(Self, (EventControllerScroll, Double, Double) -> Bool) -> UInt64 = _
fn connect_scroll_begin(Self, (EventControllerScroll) -> Unit) -> UInt64 = _
fn connect_scroll_end(Self, (EventControllerScroll) -> Unit) -> UInt64 = _
}
///|
pub impl IEventControllerScroll for EventControllerScroll with fn as_event_controller_scroll(
self,
) {
self
}
///|
extern "c" fn moonbit_gtk_event_controller_scroll_new(
flags : Int,
) -> EventControllerScroll = "moonbit_gtk_event_controller_scroll_new"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/ctor.EventControllerScroll.new.html).
pub fn EventControllerScroll::new(
flags : EventControllerScrollFlags,
) -> EventControllerScroll {
moonbit_gtk_event_controller_scroll_new(flags.to_int())
}
///|
#borrow(self_)
extern "c" fn moonbit_gtk_event_controller_scroll_get_flags(
self_ : EventControllerScroll,
) -> Int = "moonbit_gtk_event_controller_scroll_get_flags"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EventControllerScroll.get_flags.html).
pub fn EventControllerScroll::get_flags(
self : EventControllerScroll,
) -> EventControllerScrollFlags {
EventControllerScrollFlags::from_int(
moonbit_gtk_event_controller_scroll_get_flags(self),
)
}
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EventControllerScroll.get_unit.html).
#borrow(self)
pub extern "c" fn EventControllerScroll::get_unit(
self : EventControllerScroll,
) -> @gdk.ScrollUnit = "moonbit_gtk_event_controller_scroll_get_unit"
///|
#borrow(self_)
extern "c" fn moonbit_gtk_event_controller_scroll_set_flags(
self_ : EventControllerScroll,
flags : Int,
) = "moonbit_gtk_event_controller_scroll_set_flags"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EventControllerScroll.set_flags.html).
pub fn EventControllerScroll::set_flags(
self : EventControllerScroll,
flags : EventControllerScrollFlags,
) -> Unit {
moonbit_gtk_event_controller_scroll_set_flags(self, flags.to_int())
}
///|
#borrow(instance)
extern "c" fn gtk_event_controller_scroll_connect_decelerate(
instance : EventControllerScroll,
function : FuncRef[
(
EventControllerScroll,
Double,
Double,
(EventControllerScroll, Double, Double) -> Unit,
) -> Unit,
],
closure : (EventControllerScroll, Double, Double) -> Unit,
) -> UInt64 = "moonbit_gtk_event_controller_scroll_connect_decelerate"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.EventControllerScroll.decelerate.html).
pub fn EventControllerScroll::connect_decelerate(
self : EventControllerScroll,
f : (EventControllerScroll, Double, Double) -> Unit,
) -> UInt64 {
gtk_event_controller_scroll_connect_decelerate(
self,
fn(instance_, vel_x, vel_y, f) { f(instance_, vel_x, vel_y) },
f,
)
}
///|
#borrow(instance)
extern "c" fn gtk_event_controller_scroll_connect_scroll(
instance : EventControllerScroll,
function : FuncRef[
(
EventControllerScroll,
Double,
Double,
(EventControllerScroll, Double, Double) -> Bool,
) -> Bool,
],
closure : (EventControllerScroll, Double, Double) -> Bool,
) -> UInt64 = "moonbit_gtk_event_controller_scroll_connect_scroll"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.EventControllerScroll.scroll.html).
pub fn EventControllerScroll::connect_scroll(
self : EventControllerScroll,
f : (EventControllerScroll, Double, Double) -> Bool,
) -> UInt64 {
gtk_event_controller_scroll_connect_scroll(
self,
fn(instance_, dx, dy, f) { f(instance_, dx, dy) },
f,
)
}
///|
#borrow(instance)
extern "c" fn gtk_event_controller_scroll_connect_scroll_begin(
instance : EventControllerScroll,
function : FuncRef[
(EventControllerScroll, (EventControllerScroll) -> Unit) -> Unit,
],
closure : (EventControllerScroll) -> Unit,
) -> UInt64 = "moonbit_gtk_event_controller_scroll_connect_scroll_begin"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.EventControllerScroll.scroll-begin.html).
pub fn EventControllerScroll::connect_scroll_begin(
self : EventControllerScroll,
f : (EventControllerScroll) -> Unit,
) -> UInt64 {
gtk_event_controller_scroll_connect_scroll_begin(
self,
fn(instance_, f) { f(instance_) },
f,
)
}
///|
#borrow(instance)
extern "c" fn gtk_event_controller_scroll_connect_scroll_end(
instance : EventControllerScroll,
function : FuncRef[
(EventControllerScroll, (EventControllerScroll) -> Unit) -> Unit,
],
closure : (EventControllerScroll) -> Unit,
) -> UInt64 = "moonbit_gtk_event_controller_scroll_connect_scroll_end"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.EventControllerScroll.scroll-end.html).
pub fn EventControllerScroll::connect_scroll_end(
self : EventControllerScroll,
f : (EventControllerScroll) -> Unit,
) -> UInt64 {
gtk_event_controller_scroll_connect_scroll_end(
self,
fn(instance_, f) { f(instance_) },
f,
)
}
///|
impl IEventControllerScroll with fn get_flags(self) -> EventControllerScrollFlags {
self.as_event_controller_scroll().get_flags()
}
///|
impl IEventControllerScroll with fn get_unit(self) -> @gdk.ScrollUnit {
self.as_event_controller_scroll().get_unit()
}
///|
impl IEventControllerScroll with fn set_flags(self, flags) -> Unit {
self.as_event_controller_scroll().set_flags(flags)
}
///|
impl IEventControllerScroll with fn connect_decelerate(self, f) -> UInt64 {
self.as_event_controller_scroll().connect_decelerate(f)
}
///|
impl IEventControllerScroll with fn connect_scroll(self, f) -> UInt64 {
self.as_event_controller_scroll().connect_scroll(f)
}
///|
impl IEventControllerScroll with fn connect_scroll_begin(self, f) -> UInt64 {
self.as_event_controller_scroll().connect_scroll_begin(f)
}
///|
impl IEventControllerScroll with fn connect_scroll_end(self, f) -> UInt64 {
self.as_event_controller_scroll().connect_scroll_end(f)
}
///|
pub fn EventControllerScroll::as_event_controller(
self : EventControllerScroll,
) -> EventController = "%identity"
///|
pub impl IEventController for EventControllerScroll with fn as_event_controller(
self,
) {
self.as_event_controller()
}
///|
pub fn EventControllerScroll::as_gobject_object(
self : EventControllerScroll,
) -> @gobject.Object = "%identity"
///|
pub impl @gobject.IObject for EventControllerScroll with fn as_object(self) {
self.as_gobject_object()
}