class Gtk::TreeListRowSorter

Overview

Gtk::TreeListRowSorter is a special-purpose sorter that will apply a given sorter to the levels in a tree.

Here is an example for setting up a column view with a tree model and a Gtk::TreeListSorter:

WARNING ⚠️ The following code is in c ⚠️

column_sorter = gtk_column_view_get_sorter (view);
sorter = gtk_tree_list_row_sorter_new (g_object_ref (column_sorter));
sort_model = gtk_sort_list_model_new (tree_model, sorter);
selection = gtk_single_selection_new (sort_model);
gtk_column_view_set_model (view, G_LIST_MODEL (selection));

Defined in:

lib/gi-crystal/src/auto/gtk-4.0/tree_list_row_sorter.cr

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class Gtk::Sorter

changed(change : Gtk::SorterChange) : Nil changed, changed_signal changed_signal, compare(item1 : GObject::Object, item2 : GObject::Object) : Gtk::Ordering compare, order : Gtk::SorterOrder order

Constructor methods inherited from class Gtk::Sorter

new new

Class methods inherited from class Gtk::Sorter

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

def self.new(sorter : Gtk::Sorter?) : self #

Create a special-purpose sorter that applies the sorting of @sorter to the levels of a Gtk::TreeListModel.

Note that this sorter relies on Gtk::TreeListModel#passthrough being false as it can only sort Gtk::TreeListRows.


def self.new #

Initialize a new TreeListRowSorter.


def self.new(*, sorter : Gtk::Sorter? = nil) #

Class Method Detail

def self.g_type : UInt64 #

Returns the type id (GType) registered in GLib type system.


Instance Method Detail

def sorter : Gtk::Sorter? #

Returns the sorter used by @self.


def sorter=(sorter : Gtk::Sorter?) : Nil #

Sets the sorter to use for items with the same parent.

This sorter will be passed the Gtk::TreeListRow#item of the tree list rows passed to @self.