GtkSingleSelection
GtkSingleSelection — Модель выбора, позволяющая выбрать один элемент
Функции
| GtkSingleSelection * | gtk_single_selection_new () |
| GListModel * | gtk_single_selection_get_model () |
| void | gtk_single_selection_set_model () |
| guint | gtk_single_selection_get_selected () |
| void | gtk_single_selection_set_selected () |
| gpointer | gtk_single_selection_get_selected_item () |
| gboolean | gtk_single_selection_get_autoselect () |
| void | gtk_single_selection_set_autoselect () |
| gboolean | gtk_single_selection_get_can_unselect () |
| void | gtk_single-selection-set-can-unselect () |
Свойства
| gboolean | autoselect | Чтение / Запись |
| gboolean | can-unselect | Чтение / Запись |
| GListModel * | model | Чтение / Запись |
| guint | selected | Чтение / Запись |
| GObject * | selected-item | Чтение |
Типы и значения
Иерархия объектов
GObject
╰── GtkSingleSelection
Реализованные интерфейсы
GtkSingleSelection реализует GListModel и GtkSelectionModel.
Файлы заголовков
#include <gtk/gtk.h>
Описание
GtkSingleSelection — это реализация интерфейса GtkSelectionModel, которая позволяет выбрать один элемент. Это метод выбора по умолчанию, используемый виджетами списков в GTK.
Обратите внимание, что выбор является *постоянным* — если выбранный элемент удаляется и повторно добавляется в том же событии “items-changed”, он остаётся выбранным. В частности, это означает, что изменение порядка сортировки в базовой модели сортировки сохранит выбор.
Функции
gtk_single_selection_new ()
GtkSingleSelection *
gtk_single_selection_new (GListModel *model); Создаёт новую селекцию для обработки model.
Параметры
model | управляемый GListModel, или | [allow-none][transfer full] |
gtk_single_selection_get_model ()
GListModel *
gtk_single_selection_get_model (GtkSingleSelection *self); Возвращает модель, которую оборачивает self.
Параметры
self | объект GtkSingleSelection |
Возвращаемое значение
Оборачиваемая модель.
[transfer none]
gtk_single_selection_set_model ()
void gtk_single_selection_set_model (GtkSingleSelection *self,GListModel *model);
Устанавливает модель, которую должен обернуть self. Если model равно NULL, self будет пустой.
Параметры
self | объект GtkSingleSelection | |
model | GListModel для обёртывания. | [allow-none] |
gtk_single_selection_get_selected ()
guint
gtk_single_selection_get_selected (GtkSingleSelection *self); Возвращает позицию выбранного элемента. Если элемент не выбран, возвращается GTK_INVALID_LIST_POSITION.
Параметры
self | объект GtkSingleSelection |
Возвращаемое значение
Позиция выбранного элемента.
gtk_single_selection_set_selected ()
void gtk_single_selection_set_selected (GtkSingleSelection *self,guint position);
Выбирает элемент по заданной позиции.
Если в списке нет элемента по position или указано GTK_INVALID_LIST_POSITION, поведение зависит от значения свойства «autoselect»: если оно установлено, изменение не произойдёт, и старый элемент останется выбранным. Если оно не установлено, выбор будет снят, и ни один элемент не будет выбран.
Параметры
self | объект GtkSingleSelection | |
position | выбираемый элемент или GTK_INVALID_LIST_POSITION |
gtk_single_selection_get_selected_item ()
gpointer
gtk_single_selection_get_selected_item
(GtkSingleSelection *self); Возвращает выбранный элемент.
Если элемент не выбран, возвращается NULL.
Параметры
self | объект GtkSingleSelection |
Возвращаемое значение
Выбранный элемент.
[transfer none]
gtk_single_selection_get_autoselect ()
gboolean
gtk_single_selection_get_autoselect (GtkSingleSelection *self); Проверяет, включен или выключен автовыбор с помощью gtk_single_selection_set_autoselect().
Параметры
self | объект GtkSingleSelection |
Возвращаемое значение
TRUE если автовыбор включён
gtk_single_selection_set_autoselect ()
void gtk_single_selection_set_autoselect (GtkSingleSelection *self,gboolean autoselect);
Если autoselect равно TRUE, self будет обеспечивать, чтобы элемент всегда был выбран. Он будет выбирать новый элемент, когда текущий выбранный элемент удалён, и он запретит снятие выбора с текущего элемента.
Параметры
self | объект GtkSingleSelection | |
autoselect |
|
gtk_single_selection_get_can_unselect ()
gboolean
gtk_single_selection_get_can_unselect (GtkSingleSelection *self); Если TRUE, gtk_selection_model_unselect_item() поддерживается и позволяет снять выбор с выбранного элемента.
Параметры
self | объект GtkSingleSelection |
Возвращаемое значение
TRUE для поддержки снятия выбора
gtk_single_selection_set_can_unselect ()
void gtk_single_selection_set_can_unselect (GtkSingleSelection *self,gboolean can_unselect);
Если TRUE, снятие выбора текущего элемента с помощью gtk_selection_model_unselect_item() поддерживается.
Обратите внимание, что установка «autoselect» приведёт к тому, что снятие выбора не будет работать, поэтому в данном случае устанавливать и то и другое не имеет смысла.
Параметры
self | объект GtkSingleSelection | |
can_unselect |
|
Типы и значения
GtkSingleSelection
typedef struct _GtkSingleSelection GtkSingleSelection;
GTK_INVALID_LIST_POSITION
#define GTK_INVALID_LIST_POSITION (G_MAXUINT)
Значение, используемое для обозначения гарантированно недействительной позиции в GListModel. Это значение может возвращаться некоторыми функциями, другие могут принимать его в качестве входных данных. Его интерпретация может отличаться для разных функций.
Обратитесь к документации каждой функции, чтобы узнать, разрешено ли это значение и что оно делает.
Подробное описание свойств
Свойство “autoselect”
“autoselect” gboolean
Если выделение элемента всегда происходит автоматически
Владелец: GtkSingleSelection
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
Свойство “can-unselect”
“can-unselect” gboolean
Разрешено ли снятие выделения с выбранного элемента
Владелец: GtkSingleSelection
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “model”
“model” GListModel *
Управляемый список (модель)
Владелец: GtkSingleSelection
Флаги: Чтение / Запись
Свойство “selected”
“selected” guint
Позиция выделенного элемента
Владелец: GtkSingleSelection
Флаги: Чтение / Запись
Значение по умолчанию: 4294967295
Свойство “selected-item”
“selected-item” GObject *
Выделенный элемент
Владелец: GtkSingleSelection
Флаги: Чтение
См. также
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer-old.gnome.org/gtk4/4.0/GtkSingleSelection.html