### Class

# Gtk SingleSelection

#### Description [src]

    final class Gtk.SingleSelection : GObject.Object {
      /* No available fields */
    }

`GtkSingleSelection` is a `GtkSelectionModel` that allows selecting a single item.

Note that the selection is persistent — if the selected item is removed and re-added in the same ::items-changed emission, it stays selected. In particular, this means that changing the sort order of an underlying sort model will preserve the selection.

#### Hierarchy

#### Ancestors

- GObject

#### Implements

- GListModel
- GtkSelectionModel

#### Constructors

###### gtk_single_selection_new

Creates a new selection to handle `model`.

#### Instance methods

###### gtk_single_selection_get_autoselect

Checks if autoselect has been enabled or disabled via gtk_single_selection_set_autoselect().

###### gtk_single_selection_get_can_unselect

If `TRUE`, gtk_selection_model_unselect_item() is supported and allows unselecting the selected item.

###### gtk_single_selection_get_model

Gets the model that `self` is wrapping.

###### gtk_single_selection_get_selected

Gets the position of the selected item.

###### gtk_single_selection_get_selected_item

Gets the selected item.

###### gtk_single_selection_set_autoselect

Enables or disables autoselect.

###### gtk_single_selection_set_can_unselect

If `TRUE`, unselecting the current item via gtk_selection_model_unselect_item() is supported.

###### gtk_single_selection_set_model

Sets the model that `self` should wrap.

###### gtk_single_selection_set_selected

Selects the item at the given position.

##### Methods inherited from GtkSelectionModel (11)

###### gtk_selection_model_get_selection

Gets the set containing all currently selected items in the model.

###### gtk_selection_model_get_selection_in_range

Gets the set of selected items in a range.

###### gtk_selection_model_is_selected

Checks if the given item is selected.

###### gtk_selection_model_select_all

Requests to select all items in the model.

###### gtk_selection_model_select_item

Requests to select an item in the model.

###### gtk_selection_model_select_range

Requests to select a range of items in the model.

###### gtk_selection_model_selection_changed

Helper function for implementations of `GtkSelectionModel`.

###### gtk_selection_model_set_selection

Make selection changes.

###### gtk_selection_model_unselect_all

Requests to unselect all items in the model.

###### gtk_selection_model_unselect_item

Requests to unselect an item in the model.

###### gtk_selection_model_unselect_range

Requests to unselect a range of items in the model.

#### Properties

###### Gtk.SingleSelection:autoselect

If the selection will always select an item.

###### Gtk.SingleSelection:can-unselect

If unselecting the selected item is allowed.

###### Gtk.SingleSelection:model

The model being managed.

###### Gtk.SingleSelection:selected

Position of the selected item.

###### Gtk.SingleSelection:selected-item

The selected item.

#### Class structure

    struct GtkSingleSelectionClass {
      GObjectClass parent_class;

    }

###### Class members

`parent_class` |
    GObjectClass
| No description available.