|  | 
|  | SingleSelection (SingleSelection && src) noexcept | 
|  | 
| SingleSelection & | operator= (SingleSelection && src) noexcept | 
|  | 
|  | ~SingleSelection () noexcept override | 
|  | 
| GtkSingleSelection * | gobj () | 
|  | Provides access to the underlying C GObject. 
 | 
|  | 
| const GtkSingleSelection * | gobj () const | 
|  | Provides access to the underlying C GObject. 
 | 
|  | 
| GtkSingleSelection * | gobj_copy () | 
|  | Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. 
 | 
|  | 
| Glib::RefPtr< Gio::ListModel > | get_model () | 
|  | Gets the model that self is wrapping. 
 | 
|  | 
| Glib::RefPtr< const Gio::ListModel > | get_model () const | 
|  | Gets the model that self is wrapping. 
 | 
|  | 
| void | set_model (const Glib::RefPtr< Gio::ListModel > & model) | 
|  | Sets the model that self should wrap. 
 | 
|  | 
| guint | get_selected () const | 
|  | Gets the position of the selected item. 
 | 
|  | 
| void | set_selected (guint position) | 
|  | Selects the item at the given position. 
 | 
|  | 
| Glib::RefPtr< Glib::ObjectBase > | get_selected_item () | 
|  | Gets the selected item. 
 | 
|  | 
| Glib::RefPtr< const Glib::ObjectBase > | get_selected_item () const | 
|  | Gets the selected item. 
 | 
|  | 
| bool | get_autoselect () const | 
|  | Checks if autoselect has been enabled or disabled via set_autoselect(). 
 | 
|  | 
| void | set_autoselect (bool autoselect=true) | 
|  | Enables or disables autoselect. 
 | 
|  | 
| bool | get_can_unselect () const | 
|  | If true, Gtk::SelectionModel::unselect_item() is supported and allows unselecting the selected item.
 | 
|  | 
| void | set_can_unselect (bool can_unselect=true) | 
|  | If true, unselecting the current item via Gtk::SelectionModel::unselect_item() is supported.
 | 
|  | 
| Glib::PropertyProxy< bool > | property_autoselect () | 
|  | If the selection will always select an item. 
 | 
|  | 
| Glib::PropertyProxy_ReadOnly< bool > | property_autoselect () const | 
|  | If the selection will always select an item. 
 | 
|  | 
| Glib::PropertyProxy< bool > | property_can_unselect () | 
|  | If unselecting the selected item is allowed. 
 | 
|  | 
| Glib::PropertyProxy_ReadOnly< bool > | property_can_unselect () const | 
|  | If unselecting the selected item is allowed. 
 | 
|  | 
| Glib::PropertyProxy< guint > | property_selected () | 
|  | Position of the selected item. 
 | 
|  | 
| Glib::PropertyProxy_ReadOnly< guint > | property_selected () const | 
|  | Position of the selected item. 
 | 
|  | 
| Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Glib::ObjectBase > > | property_selected_item () const | 
|  | The selected item. 
 | 
|  | 
| Glib::PropertyProxy_ReadOnly< GType > | property_item_type () const | 
|  | The type of items. 
 | 
|  | 
| Glib::PropertyProxy< Glib::RefPtr< Gio::ListModel > > | property_model () | 
|  | The model being managed. 
 | 
|  | 
| Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gio::ListModel > > | property_model () const | 
|  | The model being managed. 
 | 
|  | 
| Glib::PropertyProxy_ReadOnly< unsigned int > | property_n_items () const | 
|  | The number of items. 
 | 
|  | 
|  | Object (const Object &)=delete | 
|  | 
| Object & | operator= (const Object &)=delete | 
|  | 
|  | Object (Object &&src) noexcept | 
|  | 
| Object & | operator= (Object &&src) noexcept | 
|  | 
| void * | get_data (const QueryQuark &key) | 
|  | 
| void | set_data (const Quark &key, void *data) | 
|  | 
| void | set_data_with_c_callback (const Quark &key, void *data, GDestroyNotify notify) | 
|  | 
| void | set_data (const Quark &key, void *data, DestroyNotify notify) | 
|  | 
| void | remove_data (const QueryQuark &quark) | 
|  | 
| void * | steal_data (const QueryQuark &quark) | 
|  | 
| Glib::RefPtr< Glib::Object > | wrap (GObject *object, bool take_copy=false) | 
|  | 
|  | ObjectBase (const ObjectBase &)=delete | 
|  | 
| ObjectBase & | operator= (const ObjectBase &)=delete | 
|  | 
| void | set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value) | 
|  | 
| void | get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const | 
|  | 
| void | set_property (const Glib::ustring &property_name, const PropertyType &value) | 
|  | 
| void | get_property (const Glib::ustring &property_name, PropertyType &value) const | 
|  | 
| PropertyType | get_property (const Glib::ustring &property_name) const | 
|  | 
| sigc::connection | connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void()> &slot) | 
|  | 
| sigc::connection | connect_property_changed (const Glib::ustring &property_name, sigc::slot< void()> &&slot) | 
|  | 
| void | freeze_notify () | 
|  | 
| void | thaw_notify () | 
|  | 
| virtual void | reference () const | 
|  | 
| virtual void | unreference () const | 
|  | 
| GObject * | gobj () | 
|  | 
| const GObject * | gobj () const | 
|  | 
| GObject * | gobj_copy () const | 
|  | 
|  | ListModel (ListModel &&src) noexcept | 
|  | 
| ListModel & | operator= (ListModel &&src) noexcept | 
|  | 
|  | ~ListModel () noexcept override | 
|  | 
| GListModel * | gobj () | 
|  | 
| const GListModel * | gobj () const | 
|  | 
| GType | get_item_type () const | 
|  | 
| guint | get_n_items () const | 
|  | 
| Glib::RefPtr< Glib::ObjectBase > | get_object (guint position) | 
|  | 
| Glib::RefPtr< const Glib::ObjectBase > | get_object (guint position) const | 
|  | 
| Glib::RefPtr< T_item > | get_typed_object (guint position) | 
|  | 
| Glib::RefPtr< const T_item > | get_typed_object (guint position) const | 
|  | 
| Glib::SignalProxy< void(guint, guint, guint)> | signal_items_changed () | 
|  | 
| Glib::RefPtr< Gio::ListModel > | wrap (GListModel *object, bool take_copy=false) | 
|  | 
|  | Interface () | 
|  | 
|  | Interface (Interface &&src) noexcept | 
|  | 
| Interface & | operator= (Interface &&src) noexcept | 
|  | 
|  | Interface (const Glib::Interface_Class &interface_class) | 
|  | 
|  | Interface (GObject *castitem) | 
|  | 
|  | ~Interface () noexcept override | 
|  | 
|  | Interface (const Interface &)=delete | 
|  | 
| Interface & | operator= (const Interface &)=delete | 
|  | 
| GObject * | gobj () | 
|  | 
| const GObject * | gobj () const | 
|  | 
|  | SelectionModel (SelectionModel && src) noexcept | 
|  | 
| SelectionModel & | operator= (SelectionModel && src) noexcept | 
|  | 
|  | ~SelectionModel () noexcept override | 
|  | 
| GtkSelectionModel * | gobj () | 
|  | Provides access to the underlying C GObject. 
 | 
|  | 
| const GtkSelectionModel * | gobj () const | 
|  | Provides access to the underlying C GObject. 
 | 
|  | 
| bool | is_selected (guint position) const | 
|  | Checks if the given item is selected. 
 | 
|  | 
| Glib::RefPtr< const Bitset > | get_selection () const | 
|  | Gets the set containing all currently selected items in the model. 
 | 
|  | 
| Glib::RefPtr< const Bitset > | get_selection (guint position, guint n_items) const | 
|  | Gets the set of selected items in a range. 
 | 
|  | 
| bool | select_item (guint position, bool unselect_rest) | 
|  | Requests to select an item in the model. 
 | 
|  | 
| bool | unselect_item (guint position) | 
|  | Requests to unselect an item in the model. 
 | 
|  | 
| bool | select_range (guint position, guint n_items, bool unselect_rest) | 
|  | Requests to select a range of items in the model. 
 | 
|  | 
| bool | unselect_range (guint position, guint n_items) | 
|  | Requests to unselect a range of items in the model. 
 | 
|  | 
| bool | select_all () | 
|  | Requests to select all items in the model. 
 | 
|  | 
| bool | unselect_all () | 
|  | Requests to unselect all items in the model. 
 | 
|  | 
| bool | set_selection (const Glib::RefPtr< const Bitset > & selected, const Glib::RefPtr< const Bitset > &mask) | 
|  | Make selection changes. 
 | 
|  | 
| Glib::SignalProxy< void(guint, guint)> | signal_selection_changed () | 
|  | 
|  | 
|  | SingleSelection () | 
|  | 
|  | SingleSelection (const Glib::RefPtr< Gio::ListModel > & model) | 
|  | 
|  | Object () | 
|  | 
|  | Object (const Glib::ConstructParams &construct_params) | 
|  | 
|  | Object (GObject *castitem) | 
|  | 
|  | ~Object () noexcept override | 
|  | 
|  | ObjectBase () | 
|  | 
|  | ObjectBase (const char *custom_type_name) | 
|  | 
|  | ObjectBase (const std::type_info &custom_type_info) | 
|  | 
|  | ObjectBase (ObjectBase &&src) noexcept | 
|  | 
| ObjectBase & | operator= (ObjectBase &&src) noexcept | 
|  | 
| virtual | ~ObjectBase () noexcept=0 | 
|  | 
| void | initialize (GObject *castitem) | 
|  | 
| void | initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper) | 
|  | 
|  | ListModel () | 
|  | 
| void | items_changed (guint position, guint removed, guint added) | 
|  | 
| virtual GType | get_item_type_vfunc () | 
|  | 
| virtual guint | get_n_items_vfunc () | 
|  | 
| virtual gpointer | get_item_vfunc (guint position) | 
|  | 
|  | SelectionModel () | 
|  | You should derive from this class to use it. 
 | 
|  | 
| void | selection_changed (guint position, guint n_items) | 
|  | Helper function for implementations of Gtk::SelectionModel.
 | 
|  | 
| virtual bool | is_selected_vfunc (guint position) const | 
|  | 
| virtual Glib::RefPtr< const Bitset > | get_selection_vfunc (guint position, guint n_items) | 
|  | 
| virtual bool | select_item_vfunc (guint position, bool unselect_rest) | 
|  | 
| virtual bool | unselect_item_vfunc (guint position) | 
|  | 
| virtual bool | select_range_vfunc (guint position, guint n_items, bool unselect_rest) | 
|  | 
| virtual bool | unselect_range_vfunc (guint position, guint n_items) | 
|  | 
| virtual bool | select_all_vfunc () | 
|  | 
| virtual bool | unselect_all_vfunc () | 
|  | 
| virtual bool | set_selection_vfunc (const Glib::RefPtr< const Bitset > & selected, const Glib::RefPtr< const Bitset > &mask) | 
|  | 
A selection model that allows selecting a single item. 
Gtk::SingleSelection is an implementation of the Gtk::SelectionModel interface that allows selecting a single element. It is the default selection method used by list widgets in GTK.
Note that the selection is persistent – if the selected item is removed and re-added in the same Gio::ListModel::signal_items_changed() emission, it stays selected. In particular, this means that changing the sort order of an underlying sort model will preserve the selection.
- See also
- SelectionModel
- Since gtkmm 3.96