GtkCellView
GtkCellView — Виджет, отображающий одну строку GtkTreeModel
Функции
| GtkWidget * | gtk_cell_view_new () |
| GtkWidget * | gtk_cell_view_new_with_context () |
| GtkWidget * | gtk_cell_view_new_with_text () |
| GtkWidget * | gtk_cell_view_new_with_markup () |
| GtkWidget * | gtk_cell_view_new_with_texture () |
| void | gtk_cell_view_set_model () |
| GtkTreeModel * | gtk_cell_view_get_model () |
| void | gtk_cell_view_set_displayed_row () |
| GtkTreePath * | gtk_cell_view_get_displayed_row () |
| void | gtk_cell_view_set_draw_sensitive () |
| gboolean | gtk_cell_view_get_draw_sensitive () |
| void | gtk_cell_view_set_fit_model () |
| gboolean | gtk_cell_view_get_fit_model () |
Свойства
| GtkCellArea * | cell-area | Чтение/Запись/Только для создания |
| GtkCellAreaContext * | cell-area-context | Чтение/Запись/Только для создания |
| gboolean | draw-sensitive | Чтение/Запись |
| gboolean | fit-model | Чтение/Запись |
| GtkTreeModel * | model | Чтение/Запись |
Типы и значения
Иерархия объектов
GObject
╰── GInitiallyUnowned
╰── GtkWidget
╰── GtkCellView
Реализованные интерфейсы
GtkCellView реализует GtkAccessible, GtkBuildable, GtkConstraintTarget, GtkCellLayout и GtkOrientable.
Включенные заголовки
#include <gtk/gtk.h>
Описание
A GtkCellView отображает одну строку GtkTreeModel с помощью GtkCellArea и GtkCellAreaContext. GtkCellAreaContext может быть предоставлен GtkCellView во время создания, чтобы сохранить cellview в контексте группы cell view, это гарантирует, что отображаемые renderers будут правильно выровнены друг с другом (например, выровненные ячейки в меню GtkComboBox).
GtkCellView является GtkOrientable, чтобы определить, в какой ориентации следует разместить базовый GtkCellAreaContext. Примером может служить меню GtkComboBox, где cellview должны быть ориентированы горизонтально, если меню перечислены сверху вниз и, следовательно, все разделяют одинаковую ширину, но могут иметь отдельные индивидуальные высоты (горизонтальные меню слева направо должны быть размещены вертикально, поскольку все они разделяют одинаковую высоту, но могут иметь переменные ширины).
Узлы CSS
GtkCellView имеет один CSS-узел с именем cellview.
Функции
gtk_cell_view_new ()
GtkWidget *
gtk_cell_view_new (void); Создаёт новый виджет GtkCellView.
Возвращает
Новый созданный виджет GtkCellView.
gtk_cell_view_new_with_context ()
GtkWidget * gtk_cell_view_new_with_context (GtkCellArea *area,GtkCellAreaContext *context);
Создаёт новый виджет GtkCellView со специфическим GtkCellArea для выравнивания ячеек и специфическим GtkCellAreaContext.
Использование одного контекста для нескольких ячеек позволит подлежащей области синхронизировать геометрию этих ячеек, таким образом позволяя выравнивание с cellviews для других строк.
Параметры
area | the GtkCellArea to layout cells | |
context | the GtkCellAreaContext in which to calculate cell geometry |
Возвращает
Новый созданный виджет GtkCellView.
gtk_cell_view_new_with_text ()
GtkWidget *
gtk_cell_view_new_with_text (const char *text); Создаёт новый виджет GtkCellView, добавляет в него GtkCellRendererText и делает его отображающим text .
Параметры
text | текст для отображения в представлении ячейки |
Возвращает
Новый созданный виджет GtkCellView.
gtk_cell_view_new_with_markup ()
GtkWidget *
gtk_cell_view_new_with_markup (const char *markup); Создаёт новый виджет GtkCellView, добавляет в него GtkCellRendererText и делает его отображающим markup . Текст может быть отформатирован с использованием языка разметки текста Pango.
Параметры
markup | текст для отображения в представлении ячейки |
Возвращает
Новый созданный виджет GtkCellView.
gtk_cell_view_new_with_texture ()
GtkWidget *
gtk_cell_view_new_with_texture (GdkTexture *texture); Создаёт новый виджет GtkCellView, добавляет в него GtkCellRendererPixbuf и делает его отображающим texture .
Параметры
texture | изображение для отображения в представлении ячейки |
Возвращает
Новый созданный виджет GtkCellView.
gtk_cell_view_set_model ()
void gtk_cell_view_set_model (GtkCellView *cell_view,GtkTreeModel *model);
Устанавливает модель для cell_view . Если у cell_view уже установлена модель, она будет удалена перед установкой новой модели. Если model является NULL, то старая модель будет удалена.
Параметры
cell_view | ||
model | a GtkTreeModel. | [allow-none] |
gtk_cell_view_get_model ()
GtkTreeModel *
gtk_cell_view_get_model (GtkCellView *cell_view); Возвращает модель для cell_view . Если модель не используется, возвращается NULL.
Параметры
cell_view |
gtk_cell_view_set_displayed_row ()
void gtk_cell_view_set_displayed_row (GtkCellView *cell_view,GtkTreePath *path);
Устанавливает строку модели, которая в настоящее время отображается GtkCellView. Если путь не задан, содержимое cellview сохраняется в последнем значении; обычно это нежелательный результат, но может быть необходимым промежуточным состоянием, если, например, модель для GtkCellView временно становится пустой.
Параметры
cell_view | ||
path | a GtkTreePath или | [allow-none] |
gtk_cell_view_get_displayed_row ()
GtkTreePath *
gtk_cell_view_get_displayed_row (GtkCellView *cell_view); Возвращает GtkTreePath, указывающий на текущую отображаемую строку. Если в настоящее время строка не отображается, возвращается NULL.
Параметры
cell_view |
Возвращает
текущая отображаемая строка или NULL.
[nullable][transfer full]
gtk_cell_view_set_draw_sensitive ()
void gtk_cell_view_set_draw_sensitive (GtkCellView *cell_view,gboolean draw_sensitive);
Устанавливает, нужно ли cell_view отрисовывать все ячейки в чувствительном состоянии, это используется меню GtkComboBox для обеспечения того, чтобы строки с нечувствительными ячейками, содержащими дочерние элементы, отображались как чувствительные в родительском пункте меню.
Параметры
cell_view | ||
draw_sensitive | является ли отрисовка всех ячеек в чувствительном состоянии. |
gtk_cell_view_get_draw_sensitive ()
gboolean
gtk_cell_view_get_draw_sensitive (GtkCellView *cell_view); Получает, настроен ли cell_view на отрисовку всех ячеек в чувствительном состоянии.
Параметры
cell_view |
Возвращает
является ли отрисовка всех ячеек в чувствительном состоянии для cell_view
gtk_cell_view_set_fit_model ()
void gtk_cell_view_set_fit_model (GtkCellView *cell_view,gboolean fit_model);
Устанавливает, должен ли cell_view запрашивать место для отображения всего GtkTreeModel.
Это используется GtkComboBox для обеспечения того, что представление ячейки, отображаемое на кнопке раскрывающегося списка, всегда получает достаточно места и не изменяет размер при изменении выбора.
Параметры
cell_view | ||
fit_model | указывает, должен ли |
gtk_cell_view_get_fit_model ()
gboolean
gtk_cell_view_get_fit_model (GtkCellView *cell_view); Получает, настроен ли cell_view на запрос места для отображения всего GtkTreeModel.
Параметры
cell_view |
Возвращает
указывает, запрашивает ли cell_view место для отображения всего GtkTreeModel.
Типы и значения
GtkCellView
typedef struct _GtkCellView GtkCellView;
Подробности свойств
Свойство “cell-area”
“cell-area” GtkCellArea *
The GtkCellArea рендеринга ячеек
Если область не указана при создании представления ячеек с помощью gtk_cell_view_new_with_context(), будет использоваться горизонтально ориентированная GtkCellAreaBox.
since 3.0
Владелец: GtkCellView
Флаги: Чтение / Запись / Только для создания
Свойство “cell-area-context”
“cell-area-context” GtkCellAreaContext *
The GtkCellAreaContext используемый для вычисления геометрии представления ячейки.
Группа представлений ячеек может быть назначена одному и тому же контексту, чтобы обеспечить соответствие размеров и выравнивания ячеек во всех представлениях с тем же контекстом.
GtkComboBox меню использует это для назначения одного и того же контекста всем представлениям ячеек в элементах меню для одного меню (каждый подменю создает свой собственный контекст, так как размер каждого подменю не зависит от родительских или дочерних меню).
since 3.0
Владелец: GtkCellView
Флаги: Чтение / Запись / Только для создания
Свойство “draw-sensitive”
“draw-sensitive” gboolean
Указывает, следует ли отображать все ячейки как чувствительные для этого представления независимо от фактических свойств ячейки (используется для того, чтобы меню с подменю отображались как чувствительные, даже если элементы в подменю могут быть нечувствительными).
since 3.0
Владелец: GtkCellView
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “fit-model”
“fit-model” gboolean
Указывает, должно ли представление запрашивать достаточно места, чтобы всегда помещаться в размер каждой строки в модели (используется раскрывающимся списком для обеспечения того, что размер раскрывающегося списка не изменяется при выборе разных элементов).
since 3.0
Владелец: GtkCellView
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “model”
“model” GtkTreeModel *
Модель для представления ячеек
since 2.10
Владелец: GtkCellView
Флаги: Чтение / Запись
© 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/GtkCellView.html