// GENERATED — DO NOT EDIT
///|
/// [Upstream documentation](https://docs.gtk.org/gio/class.Emblem.html).
pub type Emblem
///|
pub(open) trait IEmblem {
fn as_emblem(Self) -> Emblem
fn get_icon(Self) -> Icon = _
fn get_origin(Self) -> EmblemOrigin = _
}
///|
pub impl IEmblem for Emblem with fn as_emblem(self) {
self
}
///|
#borrow(icon)
extern "c" fn moonbit_g_emblem_new(icon : Icon) -> Emblem = "moonbit_g_emblem_new"
///|
/// [Upstream documentation](https://docs.gtk.org/gio/ctor.Emblem.new.html).
pub fn Emblem::new(icon : &IIcon) -> Emblem {
moonbit_g_emblem_new(icon.as_icon())
}
///|
#borrow(icon)
extern "c" fn moonbit_g_emblem_new_with_origin(
icon : Icon,
origin : EmblemOrigin,
) -> Emblem = "moonbit_g_emblem_new_with_origin"
///|
/// [Upstream documentation](https://docs.gtk.org/gio/ctor.Emblem.new_with_origin.html).
pub fn Emblem::new_with_origin(icon : &IIcon, origin : EmblemOrigin) -> Emblem {
moonbit_g_emblem_new_with_origin(icon.as_icon(), origin)
}
///|
/// [Upstream documentation](https://docs.gtk.org/gio/method.Emblem.get_icon.html).
#borrow(self)
pub extern "c" fn Emblem::get_icon(self : Emblem) -> Icon = "moonbit_g_emblem_get_icon"
///|
/// [Upstream documentation](https://docs.gtk.org/gio/method.Emblem.get_origin.html).
#borrow(self)
pub extern "c" fn Emblem::get_origin(self : Emblem) -> EmblemOrigin = "moonbit_g_emblem_get_origin"
///|
impl IEmblem with fn get_icon(self) -> Icon {
self.as_emblem().get_icon()
}
///|
impl IEmblem with fn get_origin(self) -> EmblemOrigin {
self.as_emblem().get_origin()
}
///|
pub fn Emblem::as_gobject_object(self : Emblem) -> @gobject.Object = "%identity"
///|
pub impl @gobject.IObject for Emblem with fn as_object(self) {
self.as_gobject_object()
}
///|
pub fn Emblem::as_icon(self : Emblem) -> Icon = "%identity"
///|
pub impl IIcon for Emblem with fn as_icon(self) {
self.as_icon()
}