// GENERATED — DO NOT EDIT
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/class.Popover.html).
pub type Popover
///|
pub(open) trait IPopover {
fn as_popover(Self) -> Popover
fn get_autohide(Self) -> Bool = _
fn get_cascade_popdown(Self) -> Bool = _
fn get_child(Self) -> Widget? = _
fn get_has_arrow(Self) -> Bool = _
fn get_mnemonics_visible(Self) -> Bool = _
fn get_offset(Self) -> (Int, Int) = _
fn get_pointing_to(Self) -> (@gdk.Rectangle, Bool) = _
fn get_position(Self) -> PositionType = _
fn popdown(Self) -> Unit = _
fn popup(Self) -> Unit = _
fn present(Self) -> Unit = _
fn set_autohide(Self, Bool) -> Unit = _
fn set_cascade_popdown(Self, Bool) -> Unit = _
fn set_child(Self, &IWidget?) -> Unit = _
fn set_default_widget(Self, &IWidget?) -> Unit = _
fn set_has_arrow(Self, Bool) -> Unit = _
fn set_mnemonics_visible(Self, Bool) -> Unit = _
fn set_offset(Self, Int, Int) -> Unit = _
fn set_pointing_to(Self, @gdk.Rectangle?) -> Unit = _
fn set_position(Self, PositionType) -> Unit = _
fn connect_activate_default(Self, (Popover) -> Unit) -> UInt64 = _
fn connect_closed(Self, (Popover) -> Unit) -> UInt64 = _
}
///|
pub impl IPopover for Popover with fn as_popover(self) {
self
}
///|
/// Implementation contract for Popover.activate_default. Self is the retained MoonBit state; the second parameter is the invoked Popover object.
pub(open) trait VPopoverActivateDefault {
fn activate_default(Self, Popover) -> Unit
}
///|
/// Implementation contract for Popover.closed. Self is the retained MoonBit state; the second parameter is the invoked Popover object.
pub(open) trait VPopoverClosed {
fn closed(Self, Popover) -> Unit
}
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/ctor.Popover.new.html).
pub extern "c" fn Popover::new() -> Popover = "moonbit_gtk_popover_new"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.get_autohide.html).
#borrow(self)
pub extern "c" fn Popover::get_autohide(self : Popover) -> Bool = "moonbit_gtk_popover_get_autohide"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.get_cascade_popdown.html).
#borrow(self)
pub extern "c" fn Popover::get_cascade_popdown(self : Popover) -> Bool = "moonbit_gtk_popover_get_cascade_popdown"
///|
#borrow(self_)
extern "c" fn moonbit_gtk_popover_get_child(
self_ : Popover,
) -> @glib.Nullable[Widget] = "moonbit_gtk_popover_get_child"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.get_child.html).
pub fn Popover::get_child(self : Popover) -> Widget? {
let raw_result = moonbit_gtk_popover_get_child(self)
raw_result.to_option()
}
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.get_has_arrow.html).
#borrow(self)
pub extern "c" fn Popover::get_has_arrow(self : Popover) -> Bool = "moonbit_gtk_popover_get_has_arrow"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.get_mnemonics_visible.html).
#borrow(self)
pub extern "c" fn Popover::get_mnemonics_visible(self : Popover) -> Bool = "moonbit_gtk_popover_get_mnemonics_visible"
///|
#borrow(self_, x_offset, y_offset)
extern "c" fn moonbit_gtk_popover_get_offset(
self_ : Popover,
x_offset : Ref[Int],
y_offset : Ref[Int],
) = "moonbit_gtk_popover_get_offset"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.get_offset.html).
pub fn Popover::get_offset(self : Popover) -> (Int, Int) {
let x_offset = Ref(0)
let y_offset = Ref(0)
moonbit_gtk_popover_get_offset(self, x_offset, y_offset)
(x_offset.val, y_offset.val)
}
///|
#borrow(self_, native_result)
extern "c" fn moonbit_gtk_popover_get_pointing_to(
self_ : Popover,
native_result : Ref[Int],
) -> @gdk.Rectangle = "moonbit_gtk_popover_get_pointing_to"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.get_pointing_to.html).
pub fn Popover::get_pointing_to(self : Popover) -> (@gdk.Rectangle, Bool) {
let native_result = Ref(0)
let __result = moonbit_gtk_popover_get_pointing_to(self, native_result)
(__result, native_result.val != 0)
}
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.get_position.html).
#borrow(self)
pub extern "c" fn Popover::get_position(self : Popover) -> PositionType = "moonbit_gtk_popover_get_position"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.popdown.html).
#borrow(self)
pub extern "c" fn Popover::popdown(self : Popover) = "moonbit_gtk_popover_popdown"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.popup.html).
#borrow(self)
pub extern "c" fn Popover::popup(self : Popover) = "moonbit_gtk_popover_popup"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.present.html).
#borrow(self)
pub extern "c" fn Popover::present(self : Popover) = "moonbit_gtk_popover_present"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.set_autohide.html).
#borrow(self)
pub extern "c" fn Popover::set_autohide(self : Popover, autohide : Bool) = "moonbit_gtk_popover_set_autohide"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.set_cascade_popdown.html).
#borrow(self)
pub extern "c" fn Popover::set_cascade_popdown(
self : Popover,
cascade_popdown : Bool,
) = "moonbit_gtk_popover_set_cascade_popdown"
///|
#borrow(self_, child)
extern "c" fn moonbit_gtk_popover_set_child(
self_ : Popover,
child : @glib.Nullable[Widget],
) = "moonbit_gtk_popover_set_child"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.set_child.html).
pub fn Popover::set_child(self : Popover, child : &IWidget?) -> Unit {
moonbit_gtk_popover_set_child(
self,
match child {
Some(v) => @glib.Nullable::some(v.as_widget())
None => @glib.Nullable::null()
},
)
}
///|
#borrow(self_, widget)
extern "c" fn moonbit_gtk_popover_set_default_widget(
self_ : Popover,
widget : @glib.Nullable[Widget],
) = "moonbit_gtk_popover_set_default_widget"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.set_default_widget.html).
pub fn Popover::set_default_widget(self : Popover, widget : &IWidget?) -> Unit {
moonbit_gtk_popover_set_default_widget(
self,
match widget {
Some(v) => @glib.Nullable::some(v.as_widget())
None => @glib.Nullable::null()
},
)
}
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.set_has_arrow.html).
#borrow(self)
pub extern "c" fn Popover::set_has_arrow(self : Popover, has_arrow : Bool) = "moonbit_gtk_popover_set_has_arrow"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.set_mnemonics_visible.html).
#borrow(self)
pub extern "c" fn Popover::set_mnemonics_visible(
self : Popover,
mnemonics_visible : Bool,
) = "moonbit_gtk_popover_set_mnemonics_visible"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.set_offset.html).
#borrow(self)
pub extern "c" fn Popover::set_offset(
self : Popover,
x_offset : Int,
y_offset : Int,
) = "moonbit_gtk_popover_set_offset"
///|
#borrow(self_, rect)
extern "c" fn moonbit_gtk_popover_set_pointing_to(
self_ : Popover,
rect : @glib.Nullable[@gdk.Rectangle],
) = "moonbit_gtk_popover_set_pointing_to"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.set_pointing_to.html).
pub fn Popover::set_pointing_to(self : Popover, rect : @gdk.Rectangle?) -> Unit {
moonbit_gtk_popover_set_pointing_to(
self,
match rect {
Some(v) => @glib.Nullable::some(v)
None => @glib.Nullable::null()
},
)
}
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.Popover.set_position.html).
#borrow(self)
pub extern "c" fn Popover::set_position(
self : Popover,
position : PositionType,
) = "moonbit_gtk_popover_set_position"
///|
#borrow(instance)
extern "c" fn gtk_popover_connect_activate_default(
instance : Popover,
function : FuncRef[(Popover, (Popover) -> Unit) -> Unit],
closure : (Popover) -> Unit,
) -> UInt64 = "moonbit_gtk_popover_connect_activate_default"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.Popover.activate-default.html).
pub fn Popover::connect_activate_default(
self : Popover,
f : (Popover) -> Unit,
) -> UInt64 {
gtk_popover_connect_activate_default(
self,
fn(instance_, f) { f(instance_) },
f,
)
}
///|
#borrow(instance)
extern "c" fn gtk_popover_connect_closed(
instance : Popover,
function : FuncRef[(Popover, (Popover) -> Unit) -> Unit],
closure : (Popover) -> Unit,
) -> UInt64 = "moonbit_gtk_popover_connect_closed"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.Popover.closed.html).
pub fn Popover::connect_closed(self : Popover, f : (Popover) -> Unit) -> UInt64 {
gtk_popover_connect_closed(self, fn(instance_, f) { f(instance_) }, f)
}
///|
#borrow(self_)
extern "c" fn moonbit_gtk_popover_get_default_widget(
self_ : Popover,
) -> @glib.Nullable[Widget] = "moonbit_gtk_popover_get_default_widget"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/property.Popover.default-widget.html).
pub fn Popover::get_default_widget(self : Popover) -> Widget? {
moonbit_gtk_popover_get_default_widget(self).to_option()
}
///|
impl IPopover with fn get_autohide(self) -> Bool {
self.as_popover().get_autohide()
}
///|
impl IPopover with fn get_cascade_popdown(self) -> Bool {
self.as_popover().get_cascade_popdown()
}
///|
impl IPopover with fn get_child(self) -> Widget? {
self.as_popover().get_child()
}
///|
impl IPopover with fn get_has_arrow(self) -> Bool {
self.as_popover().get_has_arrow()
}
///|
impl IPopover with fn get_mnemonics_visible(self) -> Bool {
self.as_popover().get_mnemonics_visible()
}
///|
impl IPopover with fn get_offset(self) -> (Int, Int) {
self.as_popover().get_offset()
}
///|
impl IPopover with fn get_pointing_to(self) -> (@gdk.Rectangle, Bool) {
self.as_popover().get_pointing_to()
}
///|
impl IPopover with fn get_position(self) -> PositionType {
self.as_popover().get_position()
}
///|
impl IPopover with fn popdown(self) -> Unit {
self.as_popover().popdown()
}
///|
impl IPopover with fn popup(self) -> Unit {
self.as_popover().popup()
}
///|
impl IPopover with fn present(self) -> Unit {
self.as_popover().present()
}
///|
impl IPopover with fn set_autohide(self, autohide) -> Unit {
self.as_popover().set_autohide(autohide)
}
///|
impl IPopover with fn set_cascade_popdown(self, cascade_popdown) -> Unit {
self.as_popover().set_cascade_popdown(cascade_popdown)
}
///|
impl IPopover with fn set_child(self, child) -> Unit {
self.as_popover().set_child(child)
}
///|
impl IPopover with fn set_default_widget(self, widget) -> Unit {
self.as_popover().set_default_widget(widget)
}
///|
impl IPopover with fn set_has_arrow(self, has_arrow) -> Unit {
self.as_popover().set_has_arrow(has_arrow)
}
///|
impl IPopover with fn set_mnemonics_visible(self, mnemonics_visible) -> Unit {
self.as_popover().set_mnemonics_visible(mnemonics_visible)
}
///|
impl IPopover with fn set_offset(self, x_offset, y_offset) -> Unit {
self.as_popover().set_offset(x_offset, y_offset)
}
///|
impl IPopover with fn set_pointing_to(self, rect) -> Unit {
self.as_popover().set_pointing_to(rect)
}
///|
impl IPopover with fn set_position(self, position) -> Unit {
self.as_popover().set_position(position)
}
///|
impl IPopover with fn connect_activate_default(self, f) -> UInt64 {
self.as_popover().connect_activate_default(f)
}
///|
impl IPopover with fn connect_closed(self, f) -> UInt64 {
self.as_popover().connect_closed(f)
}
///|
pub fn Popover::as_widget(self : Popover) -> Widget = "%identity"
///|
pub impl IWidget for Popover with fn as_widget(self) {
self.as_widget()
}
///|
pub fn Popover::as_gobject_object(self : Popover) -> @gobject.Object = "%identity"
///|
pub impl @gobject.IObject for Popover with fn as_object(self) {
self.as_gobject_object()
}
///|
pub fn Popover::as_native(self : Popover) -> Native = "%identity"
///|
pub impl INative for Popover with fn as_native(self) {
self.as_native()
}