class Gtk::StringList
- Gtk::StringList
- GObject::Object
- Reference
- Object
Overview
Gtk::StringList
is a list model that wraps an array of strings.
The objects in the model have a "string" property.
Gtk::StringList
is well-suited for any place where you would
typically use a char*[]
, but need a list model.
Gtk::StringList as Gtk::Buildable
The Gtk::StringList
implementation of the Gtk::Buildable
interface
supports adding items directly using the
Here is a UI definition fragment specifying a Gtk::StringList
WARNING ⚠️ The following code is in xml ⚠️
<object class="Gtk::StringList">
<items>
<item translatable="yes">Factory</item>
<item translatable="yes">Home</item>
<item translatable="yes">Subway</item>
</items>
</object>
Included Modules
Defined in:
lib/gi-crystal/src/auto/gtk-4.0/string_list.crConstructors
-
.new(strings : Enumerable(String) | Nil) : self
Creates a new
Gtk::StringList
with the given strings. -
.new
Initialize a new
StringList
. - .new(*strings : String)
Class Method Summary
-
.g_type : UInt64
Returns the type id (GType) registered in GLib type system.
Instance Method Summary
-
#==(other : self)
Returns
true
if this reference is the same as other. -
#append(string : String) : Nil
Appends string to self.
-
#hash(hasher)
See
Object#hash(hasher)
-
#remove(position : UInt32) : Nil
Removes the string at position from self.
-
#splice(position : UInt32, n_removals : UInt32, additions : Enumerable(String) | Nil) : Nil
Changes self by removing n_removals strings and adding additions to it.
-
#string(position : UInt32) : String | Nil
Gets the string that is at position in self.
-
#take(string : String) : Nil
Adds string to self at the end, and takes ownership of it.
Instance methods inherited from module Gtk::Buildable
buildable_id : String | Nil
buildable_id,
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::Buildable
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Buildable
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gio::ListModel
item(position : UInt32) : GObject::Object | Nil
item,
item_type : UInt64
item_type,
items_changed(position : UInt32, removed : UInt32, added : UInt32) : Nilitems_changed(position : Int, removed : Int, added : Int) : Nil items_changed, items_changed_signal items_changed_signal, n_items : UInt32 n_items, to_unsafe to_unsafe
Constructor methods inherited from module Gio::ListModel
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gio::ListModel
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from class GObject::Object
==(other : self)
==,
bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding
bind_property,
bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding
bind_property_full,
data(key : String) : Pointer(Void) | Nil
data,
finalize
finalize,
freeze_notify : Nil
freeze_notify,
getv(names : Enumerable(String), values : Enumerable(_)) : Nil
getv,
hash(hasher)
hash,
notify(property_name : String) : Nil
notify,
notify_by_pspec(pspec : GObject::ParamSpec) : Nil
notify_by_pspec,
notify_signal
notify_signal,
property(property_name : String, value : _) : Nil
property,
qdata(quark : UInt32) : Pointer(Void) | Nil
qdata,
ref_count : UInt32
ref_count,
run_dispose : Nil
run_dispose,
set_data(key : String, data : Pointer(Void) | Nil) : Nil
set_data,
set_property(property_name : String, value : _) : Nil
set_property,
steal_data(key : String) : Pointer(Void) | Nil
steal_data,
steal_qdata(quark : UInt32) : Pointer(Void) | Nil
steal_qdata,
thaw_notify : Nil
thaw_notify,
to_unsafe : Pointer(Void)
to_unsafe,
watch_closure(closure : GObject::Closure) : Nil
watch_closure
Constructor methods inherited from class GObject::Object
cast(obj : GObject::Object) : self
cast,
new(pointer : Pointer(Void), transfer : GICrystal::Transfer)new new, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv
Class methods inherited from class GObject::Object
cast?(obj : GObject::Object) : self | Nil
cast?,
compat_control(what : UInt64, data : Pointer(Void) | Nil) : UInt64
compat_control,
g_type : UInt64
g_type,
interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec
interface_find_property,
interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec)
interface_list_properties
Macros inherited from class GObject::Object
previous_vfunc(*args)
previous_vfunc,
previous_vfunc!(*args)
previous_vfunc!,
signal(signature)
signal
Constructor Detail
Creates a new Gtk::StringList
with the given strings.
Class Method Detail
Returns the type id (GType) registered in GLib type system.
Instance Method Detail
Returns true
if this reference is the same as other. Invokes same?
.
Appends string to self.
The string will be copied. See
Gtk::StringList#take
for a way to avoid that.
Removes the string at position from self. position must be smaller than the current length of the list.
Changes self by removing n_removals strings and adding additions to it.
This function is more efficient than Gtk::StringList#append
and Gtk::StringList#remove
, because it only emits the
::items-changed signal once for the change.
This function copies the strings in additions.
The parameters position and n_removals must be correct (ie: position + n_removals must be less than or equal to the length of the list at the time this function is called).
Gets the string that is at position in self.
If self does not contain position items, nil
is returned.
This function returns the const char *. To get the object wrapping it, use g_list_model_get_item().
Adds string to self at the end, and takes ownership of it.
This variant of Gtk::StringList#append
is convenient for formatting strings:
WARNING ⚠️ The following code is in c ⚠️
gtk_string_list_take (self, g_strdup_print ("%d dollars", lots));