GtkCellRendererCombo
GtkCellRendererCombo — Отображает раскрывающийся список в ячейке
Функции
Свойства
| gboolean | has-entry | Чтение/Запись |
| GtkTreeModel * | model | Чтение/Запись |
| gint | text-column | Чтение/Запись |
Типы и значения
| 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. Например, вы можете привязать свойство «текст» ячейка-рендерера к строковому значению в модели, тем самым отображая разные строки в каждой строке GtkTreeView.
Возвращаемое значение
новый ячейка-рендерер
С: 2.6
Типы и значения
struct GtkCellRendererCombo
struct GtkCellRendererCombo;
Подробности свойств
Свойство “has-entry”
“has-entry” gboolean
Если TRUE, ячейка-рендерер будет включать поле ввода и позволит вводить значения, отличные от тех, которые находятся в всплывающем списке.
Флаги: Чтение/Запись
Значение по умолчанию: TRUE
С: 2.6
Свойство “model”
“model” GtkTreeModel *
Содержит модель дерева, содержащую возможные значения для раскрывающегося списка. Используйте свойство text_column для указания столбца, содержащего значения.
Флаги: Чтение/Запись
С: 2.6
Свойство “text-column”
“text-column” gint
Указывает столбец модели, который содержит возможные значения для раскрывающегося списка.
Обратите внимание, что это относится к модели, указанной в свойстве model, а не к модели, которая поддерживает представление дерева, к которому прикреплён этот ячейка-рендерер.
GtkCellRendererCombo автоматически добавляет текстовый ячейка-рендерер для этого столбца в свой раскрывающийся список.
Флаги: Чтение/Запись
Допустимые значения: >= -1
Значение по умолчанию: -1
С: 2.6
Подробности сигналов
Сигнал “changed”
void user_function (GtkCellRendererCombo *combo, gchar *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 | пользовательские данные, установленные при подключении обработчика сигналов. |
Флаги: Run Last
С: 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.22/GtkCellRendererCombo.html