// GENERATED — DO NOT EDIT
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/class.EntryBuffer.html).
pub type EntryBuffer
///|
pub(open) trait IEntryBuffer {
fn as_entry_buffer(Self) -> EntryBuffer
fn delete_text(Self, UInt, Int) -> UInt = _
fn emit_deleted_text(Self, UInt, UInt) -> Unit = _
fn emit_inserted_text(Self, UInt, String, UInt) -> Unit = _
fn get_bytes(Self) -> UInt64 = _
fn get_length(Self) -> UInt = _
fn get_max_length(Self) -> Int = _
fn get_text(Self) -> String = _
fn insert_text(Self, UInt, String, Int) -> UInt = _
fn set_max_length(Self, Int) -> Unit = _
fn set_text(Self, String, Int) -> Unit = _
fn connect_deleted_text(Self, (EntryBuffer, UInt, UInt) -> Unit) -> UInt64 = _
fn connect_inserted_text(Self, (EntryBuffer, UInt, String, UInt) -> Unit) -> UInt64 = _
}
///|
pub impl IEntryBuffer for EntryBuffer with fn as_entry_buffer(self) {
self
}
///|
/// Implementation contract for EntryBuffer.deleted_text. Self is the retained MoonBit state; the second parameter is the invoked EntryBuffer object.
pub(open) trait VEntryBufferDeletedText {
fn deleted_text(Self, EntryBuffer, UInt, UInt) -> Unit
}
///|
/// Implementation contract for EntryBuffer.inserted_text. Self is the retained MoonBit state; the second parameter is the invoked EntryBuffer object.
pub(open) trait VEntryBufferInsertedText {
fn inserted_text(Self, EntryBuffer, UInt, String, UInt) -> Unit
}
///|
#borrow(initial_chars)
extern "c" fn moonbit_gtk_entry_buffer_new(
initial_chars : @glib.Nullable[Bytes],
n_initial_chars : Int,
) -> EntryBuffer = "moonbit_gtk_entry_buffer_new"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/ctor.EntryBuffer.new.html).
pub fn EntryBuffer::new(
initial_chars : String?,
n_initial_chars : Int,
) -> EntryBuffer {
moonbit_gtk_entry_buffer_new(
match initial_chars {
Some(s) => @glib.Nullable::some(@encoding/utf8.encode(s))
None => @glib.Nullable::null()
},
n_initial_chars,
)
}
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EntryBuffer.delete_text.html).
#borrow(self)
pub extern "c" fn EntryBuffer::delete_text(
self : EntryBuffer,
position : UInt,
n_chars : Int,
) -> UInt = "moonbit_gtk_entry_buffer_delete_text"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EntryBuffer.emit_deleted_text.html).
#borrow(self)
pub extern "c" fn EntryBuffer::emit_deleted_text(
self : EntryBuffer,
position : UInt,
n_chars : UInt,
) = "moonbit_gtk_entry_buffer_emit_deleted_text"
///|
#borrow(self_, chars)
extern "c" fn moonbit_gtk_entry_buffer_emit_inserted_text(
self_ : EntryBuffer,
position : UInt,
chars : Bytes,
n_chars : UInt,
) = "moonbit_gtk_entry_buffer_emit_inserted_text"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EntryBuffer.emit_inserted_text.html).
pub fn EntryBuffer::emit_inserted_text(
self : EntryBuffer,
position : UInt,
chars : String,
n_chars : UInt,
) -> Unit {
moonbit_gtk_entry_buffer_emit_inserted_text(
self,
position,
@encoding/utf8.encode(chars),
n_chars,
)
}
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EntryBuffer.get_bytes.html).
#borrow(self)
pub extern "c" fn EntryBuffer::get_bytes(self : EntryBuffer) -> UInt64 = "moonbit_gtk_entry_buffer_get_bytes"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EntryBuffer.get_length.html).
#borrow(self)
pub extern "c" fn EntryBuffer::get_length(self : EntryBuffer) -> UInt = "moonbit_gtk_entry_buffer_get_length"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EntryBuffer.get_max_length.html).
#borrow(self)
pub extern "c" fn EntryBuffer::get_max_length(self : EntryBuffer) -> Int = "moonbit_gtk_entry_buffer_get_max_length"
///|
#borrow(self_)
extern "c" fn moonbit_gtk_entry_buffer_get_text(self_ : EntryBuffer) -> Bytes = "moonbit_gtk_entry_buffer_get_text"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EntryBuffer.get_text.html).
pub fn EntryBuffer::get_text(self : EntryBuffer) -> String {
@encoding/utf8.decode_lossy(moonbit_gtk_entry_buffer_get_text(self))
}
///|
#borrow(self_, chars)
extern "c" fn moonbit_gtk_entry_buffer_insert_text(
self_ : EntryBuffer,
position : UInt,
chars : Bytes,
n_chars : Int,
) -> UInt = "moonbit_gtk_entry_buffer_insert_text"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EntryBuffer.insert_text.html).
pub fn EntryBuffer::insert_text(
self : EntryBuffer,
position : UInt,
chars : String,
n_chars : Int,
) -> UInt {
moonbit_gtk_entry_buffer_insert_text(
self,
position,
@encoding/utf8.encode(chars),
n_chars,
)
}
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EntryBuffer.set_max_length.html).
#borrow(self)
pub extern "c" fn EntryBuffer::set_max_length(
self : EntryBuffer,
max_length : Int,
) = "moonbit_gtk_entry_buffer_set_max_length"
///|
#borrow(self_, chars)
extern "c" fn moonbit_gtk_entry_buffer_set_text(
self_ : EntryBuffer,
chars : Bytes,
n_chars : Int,
) = "moonbit_gtk_entry_buffer_set_text"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/method.EntryBuffer.set_text.html).
pub fn EntryBuffer::set_text(
self : EntryBuffer,
chars : String,
n_chars : Int,
) -> Unit {
moonbit_gtk_entry_buffer_set_text(self, @encoding/utf8.encode(chars), n_chars)
}
///|
#borrow(instance)
extern "c" fn gtk_entry_buffer_connect_deleted_text(
instance : EntryBuffer,
function : FuncRef[
(EntryBuffer, UInt, UInt, (EntryBuffer, UInt, UInt) -> Unit) -> Unit,
],
closure : (EntryBuffer, UInt, UInt) -> Unit,
) -> UInt64 = "moonbit_gtk_entry_buffer_connect_deleted_text"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.EntryBuffer.deleted-text.html).
pub fn EntryBuffer::connect_deleted_text(
self : EntryBuffer,
f : (EntryBuffer, UInt, UInt) -> Unit,
) -> UInt64 {
gtk_entry_buffer_connect_deleted_text(
self,
fn(instance_, position, n_chars, f) { f(instance_, position, n_chars) },
f,
)
}
///|
#borrow(instance)
extern "c" fn gtk_entry_buffer_connect_inserted_text(
instance : EntryBuffer,
function : FuncRef[
(EntryBuffer, UInt, Bytes, UInt, (EntryBuffer, UInt, String, UInt) -> Unit) -> Unit,
],
closure : (EntryBuffer, UInt, String, UInt) -> Unit,
) -> UInt64 = "moonbit_gtk_entry_buffer_connect_inserted_text"
///|
/// [Upstream documentation](https://docs.gtk.org/gtk4/signal.EntryBuffer.inserted-text.html).
pub fn EntryBuffer::connect_inserted_text(
self : EntryBuffer,
f : (EntryBuffer, UInt, String, UInt) -> Unit,
) -> UInt64 {
gtk_entry_buffer_connect_inserted_text(
self,
fn(instance_, position, chars, n_chars, f) {
f(instance_, position, @encoding/utf8.decode_lossy(chars), n_chars)
},
f,
)
}
///|
impl IEntryBuffer with fn delete_text(self, position, n_chars) -> UInt {
self.as_entry_buffer().delete_text(position, n_chars)
}
///|
impl IEntryBuffer with fn emit_deleted_text(self, position, n_chars) -> Unit {
self.as_entry_buffer().emit_deleted_text(position, n_chars)
}
///|
impl IEntryBuffer with fn emit_inserted_text(self, position, chars, n_chars) -> Unit {
self.as_entry_buffer().emit_inserted_text(position, chars, n_chars)
}
///|
impl IEntryBuffer with fn get_bytes(self) -> UInt64 {
self.as_entry_buffer().get_bytes()
}
///|
impl IEntryBuffer with fn get_length(self) -> UInt {
self.as_entry_buffer().get_length()
}
///|
impl IEntryBuffer with fn get_max_length(self) -> Int {
self.as_entry_buffer().get_max_length()
}
///|
impl IEntryBuffer with fn get_text(self) -> String {
self.as_entry_buffer().get_text()
}
///|
impl IEntryBuffer with fn insert_text(self, position, chars, n_chars) -> UInt {
self.as_entry_buffer().insert_text(position, chars, n_chars)
}
///|
impl IEntryBuffer with fn set_max_length(self, max_length) -> Unit {
self.as_entry_buffer().set_max_length(max_length)
}
///|
impl IEntryBuffer with fn set_text(self, chars, n_chars) -> Unit {
self.as_entry_buffer().set_text(chars, n_chars)
}
///|
impl IEntryBuffer with fn connect_deleted_text(self, f) -> UInt64 {
self.as_entry_buffer().connect_deleted_text(f)
}
///|
impl IEntryBuffer with fn connect_inserted_text(self, f) -> UInt64 {
self.as_entry_buffer().connect_inserted_text(f)
}
///|
pub fn EntryBuffer::as_gobject_object(self : EntryBuffer) -> @gobject.Object = "%identity"
///|
pub impl @gobject.IObject for EntryBuffer with fn as_object(self) {
self.as_gobject_object()
}