class Gtk::TreeListModel
- Gtk::TreeListModel
- GObject::Object
- Reference
- Object
Overview
Gtk::TreeListModel
is a list model that can create child models on demand.
Included Modules
Defined in:
lib/gi-crystal/src/auto/gtk-4.0/tree_list_model.crConstructors
-
.new(root : Gio::ListModel, passthrough : Bool, autoexpand : Bool, create_func : Gtk::TreeListModelCreateModelFunc) : self
Creates a new empty
Gtk::TreeListModel
displaying @root with all rows collapsed. -
.new
Initialize a new
TreeListModel
. - .new(*, autoexpand : Bool? = nil, item_type : UInt64? = nil, model : Gio::ListModel? = nil, n_items : UInt32? = nil, passthrough : Bool? = nil)
Class Method Summary
-
.g_type : UInt64
Returns the type id (GType) registered in GLib type system.
Instance Method Summary
-
#autoexpand : Bool
Gets whether the model is set to automatically expand new rows that get added.
-
#autoexpand=(autoexpand : Bool) : Nil
Sets whether the model should autoexpand.
- #autoexpand? : Bool
-
#child_row(position : UInt32) : Gtk::TreeListRow?
Gets the row item corresponding to the child at index @position for @self's root model.
- #item_type : UInt64
-
#model : Gio::ListModel
Gets the root model that @self was created with.
- #n_items : UInt32
-
#passthrough : Bool
Gets whether the model is passing through original row items.
- #passthrough=(value : Bool) : Bool
- #passthrough? : Bool
-
#row(position : UInt32) : Gtk::TreeListRow?
Gets the row object for the given row.
Instance methods inherited from module Gio::ListModel
item(position : UInt32) : GObject::Object?
item,
item_type : UInt64
item_type,
items_changed(position : UInt32, removed : UInt32, added : UInt32) : Nil
items_changed,
items_changed_signal
items_changed_signal,
n_items : UInt32
n_items,
to_unsafe
to_unsafe
Class methods inherited from module Gio::ListModel
g_type : UInt64
g_type
Instance methods inherited from class GObject::Object
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)?
data,
finalize
finalize,
freeze_notify : Nil
freeze_notify,
getv(names : Enumerable(String), values : Enumerable(_)) : Nil
getv,
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)?
qdata,
ref_count : UInt32
ref_count,
run_dispose : Nil
run_dispose,
set_data(key : String, data : Pointer(Void)?) : Nil
set_data,
set_property(property_name : String, value : _) : Nil
set_property,
steal_data(key : String) : Pointer(Void)?
steal_data,
steal_qdata(quark : UInt32) : Pointer(Void)?
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,
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
compat_control(what : UInt64, data : Pointer(Void)?) : 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
Constructor Detail
Creates a new empty Gtk::TreeListModel
displaying @root
with all rows collapsed.
Class Method Detail
Instance Method Detail
Gets whether the model is set to automatically expand new rows that get added.
This can be either rows added by changes to the underlying
models or via Gtk::TreeListRow#expanded=
.
Sets whether the model should autoexpand.
If set to true
, the model will recursively expand all rows that
get added to the model. This can be either rows added by changes
to the underlying models or via Gtk::TreeListRow#expanded=
.
Gets the row item corresponding to the child at index @position for @self's root model.
If @position is greater than the number of children in the root model,
nil
is returned.
Do not confuse this function with Gtk::TreeListModel#row
.
Gets whether the model is passing through original row items.
If this function returns false
, the GListModel
functions for @self
return custom Gtk::TreeListRow
objects. You need to call
Gtk::TreeListRow#item
on these objects to get the original
item.
If true
, the values of the child models are passed through in their
original state. You then need to call Gtk::TreeListModel#row
to get the custom Gtk::TreeListRow
s.
Gets the row object for the given row.
If @position is greater than the number of items in @self,
nil
is returned.
The row object can be used to expand and collapse rows as well as to inspect its position in the tree. See its documentation for details.
This row object is persistent and will refer to the current item as long as the row is present in @self, independent of other rows being added or removed.
If @self is set to not be passthrough, this function is equivalent to calling g_list_model_get_item().
Do not confuse this function with Gtk::TreeListModel#child_row
.