class Gtk::SingleSelection
- Gtk::SingleSelection
- GObject::Object
- Reference
- Object
Overview
Gtk::SingleSelection
is a Gtk::SelectionModel
that allows selecting a single
item.
Note that the selection is persistent -- if the selected item is removed and re-added in the same [signal@Gio.ListModel::items-changed] emission, it stays selected. In particular, this means that changing the sort order of an underlying sort model will preserve the selection.
Included Modules
Defined in:
lib/gi-crystal/src/auto/gtk-4.0/single_selection.crConstructors
-
.new(model : Gio::ListModel | Nil) : self
Creates a new selection to handle model.
-
.new
Initialize a new
SingleSelection
. - .new(*, autoselect : Bool | Nil = nil, can_unselect : Bool | Nil = nil, model : Gio::ListModel | Nil = nil, selected : UInt32 | Nil = nil, selected_item : GObject::Object | Nil = nil)
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. -
#autoselect : Bool
Checks if autoselect has been enabled or disabled via gtk_single_selection_set_autoselect().
-
#autoselect=(autoselect : Bool) : Nil
Enables or disables autoselect.
- #autoselect? : Bool
-
#can_unselect : Bool
If
true
, gtk_selection_model_unselect_item() is supported and allows unselecting the selected item. -
#can_unselect=(can_unselect : Bool) : Nil
If
true
, unselecting the current item via gtk_selection_model_unselect_item() is supported. - #can_unselect? : Bool
-
#hash(hasher)
See
Object#hash(hasher)
-
#model : Gio::ListModel | Nil
Gets the model that self is wrapping.
-
#model=(model : Gio::ListModel | Nil) : Nil
Sets the model that self should wrap.
-
#selected : UInt32
Gets the position of the selected item.
-
#selected=(position : UInt32) : Nil
Selects the item at the given position.
-
#selected_item : GObject::Object | Nil
Gets the selected item.
Instance methods inherited from module Gtk::SelectionModel
is_selected(position : UInt32) : Bool
is_selected,
select_all : Bool
select_all,
select_item(position : UInt32, unselect_rest : Bool) : Bool
select_item,
select_range(position : UInt32, n_items : UInt32, unselect_rest : Bool) : Bool
select_range,
selection : Gtk::Bitset
selection,
selection_changed(position : UInt32, n_items : UInt32) : Nil
selection_changed,
selection_changed_signal
selection_changed_signal,
selection_in_range(position : UInt32, n_items : UInt32) : Gtk::Bitset
selection_in_range,
set_selection(selected : Gtk::Bitset, mask : Gtk::Bitset) : Bool
set_selection,
to_unsafe
to_unsafe,
unselect_all : Bool
unselect_all,
unselect_item(position : UInt32) : Bool
unselect_item,
unselect_range(position : UInt32, n_items : UInt32) : Bool
unselect_range
Constructor methods inherited from module Gtk::SelectionModel
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::SelectionModel
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 selection to handle model.
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?
.
Checks if autoselect has been enabled or disabled via gtk_single_selection_set_autoselect().
Enables or disables autoselect.
If autoselect is true
, self will enforce that an item is always
selected. It will select a new item when the currently selected
item is deleted and it will disallow unselecting the current item.
If true
, gtk_selection_model_unselect_item() is supported and allows
unselecting the selected item.
If true
, unselecting the current item via
gtk_selection_model_unselect_item() is supported.
Note that setting Gtk::SingleSelection#autoselect
will
cause unselecting to not work, so it practically makes no sense
to set both at the same time the same time.
Sets the model that self should wrap.
If model is nil
, self will be empty.
Gets the position of the selected item.
If no item is selected, %GTK_INVALID_LIST_POSITION is returned.
Selects the item at the given position.
If the list does not have an item at position or
%GTK_INVALID_LIST_POSITION is given, the behavior depends on the
value of the Gtk::SingleSelection#autoselect
property:
If it is set, no change will occur and the old item will stay
selected. If it is unset, the selection will be unset and no item
will be selected.
Gets the selected item.
If no item is selected, nil
is returned.