GtkCellRendererCombo
GtkCellRendererCombo — Отображает раскрывающийся список в ячейке
Функции
Свойства
| gboolean | has-entry | Чтение / Запись |
| GtkTreeModel * | model | Чтение / Запись |
| int | text-column | Чтение / Запись |
Сигналы
| void | changed | Выполнить последним |
Типы и значения
| struct | GtkCellRendererCombo |
Иерархия объектов
GObject
╰── GInitiallyUnowned
╰── GtkCellRenderer
╰── GtkCellRendererText
╰── GtkCellRendererCombo
Файлы
#include <gtk/gtk.h>
Описание
GtkCellRendererCombo отображает текст в ячейке, как и GtkCellRendererText, от которого он унаследован. Но в то время как GtkCellRendererText предлагает простое поле для редактирования текста, GtkCellRendererCombo предлагает виджет GtkComboBox для редактирования текста. Значения, которые должны отображаться в раскрывающемся списке, берутся из модели дерева, указанной в свойстве “model”.
Ячейка-комбо реализует добавление ячейки текстового рендерера в раскрывающийся список и устанавливает отображение столбца, указанного в свойстве “text-column”. Дальнейшие свойства раскрывающегося списка можно настроить в обработчике сигнала “editing-started”.
Ячейка рендеринга GtkCellRendererCombo была добавлена в GTK+ 2.6.
Функции
gtk_cell_renderer_combo_new ()
GtkCellRenderer *
gtk_cell_renderer_combo_new (void); Создает новую ячейку GtkCellRendererCombo. Настраивает отображение текста с помощью свойств объекта. Свойства объекта можно установить глобально (с g_object_set()). Также, с помощью GtkTreeViewColumn можно связать свойство со значением в GtkTreeModel. Например, можно связать свойство «text» в ячейке рендерера со строковым значением в модели, тем самым отображая различную строку в каждой строке GtkTreeView.
Возвращает
новый рендерер ячейки
С версии: 2.6
Типы и значения
struct GtkCellRendererCombo
struct GtkCellRendererCombo;
Подробности свойств
Свойство “has-entry”
“has-entry” gboolean
Если TRUE, ячейка рендерера будет включать поле ввода и позволит вводить значения, отличные от значений в всплывающем списке.
Владелец: GtkCellRendererCombo
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
С версии: 2.6
Свойство “model”
“model” GtkTreeModel *
Содержит модель дерева, содержащую возможные значения для раскрывающегося списка. Используйте свойство text_column, чтобы указать столбец, содержащий значения.
Владелец: GtkCellRendererCombo
Флаги: Чтение / Запись
С версии: 2.6
Свойство “text-column”
“text-column” int
Указывает столбец модели, который содержит возможные значения для раскрывающегося списка.
Обратите внимание, что это относится к модели, указанной в свойстве model, а не к модели, поддерживающей виджет дерева, к которому прикреплен этот рендерер ячейки.
GtkCellRendererCombo автоматически добавляет текстовый рендерер ячейки для этого столбца в свой раскрывающийся список.
Владелец: GtkCellRendererCombo
Флаги: Чтение / Запись
Разрешенные значения: >= -1
Значение по умолчанию: -1
С версии: 2.6
Подробности сигналов
Сигнал “changed”
void user_function (GtkCellRendererCombo *combo, char *path_string, GtkTreeIter *new_iter, gpointer user_data)
Этот сигнал испускается каждый раз после того, как пользователь выбрал элемент в раскрывающемся списке, используя мышь или клавиши со стрелками. В отличие от GtkComboBox, GtkCellRendererCombo::changed не испускается для изменений, внесенных в выбранный элемент в поле ввода. Аргумент new_iter соответствует вновь выбранному элементу в раскрывающемся списке, и он относиться к GtkTreeModel, установленной через свойство model на GtkCellRendererCombo.
Обратите внимание, что как только вы измените отображаемую в дереве модель, дерево просмотра немедленно прекратит операцию редактирования. Это означает, что вы, скорее всего, захотите воздержаться от изменения модели до тех пор, пока ячейка-рендерер combo не испустит сигнал edited или editing_canceled.
Параметры
combo | объект, на котором испускается сигнал | |
path_string | строка пути, идентифицирующая отредактированную ячейку (относительно модели дерева просмотра) | |
new_iter | новый итератор, выбранный в раскрывающемся списке (относительно модели раскрывающегося списка) | |
user_data | данные пользователя, установленные при подключении обработчика сигналов. |
Флаги: Выполнить последним
С версии: 2.14
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkCellRendererCombo.html