GtkCellView
GtkCellView — Виджет для отображения одной строки GtkTreeModel
Функции
Свойства
| gchar * | background | Запись |
| GdkColor * | background-gdk | Чтение / Запись |
| GdkRGBA * | background-rgba | Чтение / Запись |
| gboolean | background-set | Чтение / Запись |
| GtkCellArea * | cell-area | Чтение / Запись / Только для создания |
| GtkCellAreaContext * | cell-area-context | Чтение / Запись / Только для создания |
| gboolean | draw-sensitive | Чтение / Запись |
| gboolean | fit-model | Чтение / Запись |
| GtkTreeModel * | model | Чтение / Запись |
Типы и значения
| struct | GtkCellView |
| struct | GtkCellViewClass |
Иерархия объектов
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkCellView
Реализованные интерфейсы
GtkCellView реализует AtkImplementorIface, GtkBuildable, GtkCellLayout и GtkOrientable.
Файлы заголовков
#include <gtk/gtk.h>
Описание
A GtkCellView отображает один ряд GtkTreeModel с помощью GtkCellArea и GtkCellAreaContext. GtkCellAreaContext может быть предоставлен GtkCellView во время создания, чтобы сохранить область отображения ячейки в контексте группы областей отображения ячеек. Это гарантирует, что отображаемые элементы рендеринга будут правильно выровнены друг с другом (как выровненные ячейки в меню GtkComboBox).
GtkCellView является GtkOrientable, чтобы определить, в какой ориентации должна быть размещена базовая GtkCellAreaContext. Взяв за пример меню GtkComboBox, области отображения ячеек должны быть ориентированы горизонтально, если меню перечислены сверху вниз, и, следовательно, все они имеют одинаковую ширину, но могут иметь отдельные высоты. Вертикальное размещение (слева направо) необходимо, если меню имеют одинаковую высоту, но могут иметь разные ширины.
CSS-узлы
GtkCellView имеет один CSS-узел с именем cellview.
Функции
gtk_cell_view_new ()
GtkWidget *
gtk_cell_view_new (void); Создаёт новый виджет GtkCellView.
Возвращает
Новый созданный виджет GtkCellView.
С: 2.6
gtk_cell_view_new_with_context ()
GtkWidget * gtk_cell_view_new_with_context (GtkCellArea *area,GtkCellAreaContext *context);
Создаёт новый виджет GtkCellView со специфическим GtkCellArea для расположения ячеек и специфическим GtkCellAreaContext.
Указание одного и того же контекста для нескольких ячеек позволяет подлежащей области синхронизировать геометрию этих ячеек, таким образом, возможны выравнивания с cellview для других строк.
Параметры
area | GtkCellArea для расположения ячеек | |
context | GtkCellAreaContext, в котором вычисляется геометрия ячеек |
Возвращает
Новый созданный виджет GtkCellView.
С: 2.6
gtk_cell_view_new_with_text ()
GtkWidget *
gtk_cell_view_new_with_text (const gchar *text); Создаёт новый виджет GtkCellView, добавляет GtkCellRendererText в него и отображает text .
Параметры
text | текст для отображения в представлении ячейки |
Возвращает
Новый созданный виджет GtkCellView.
С: 2.6
gtk_cell_view_new_with_markup ()
GtkWidget *
gtk_cell_view_new_with_markup (const gchar *markup); Создаёт новый виджет GtkCellView, добавляет GtkCellRendererText в него и отображает markup . Текст может быть форматирован с помощью языка разметки Pango.
Параметры
markup | текст для отображения в представлении ячейки |
Возвращает
Новый созданный виджет GtkCellView.
С: 2.6
gtk_cell_view_new_with_pixbuf ()
GtkWidget *
gtk_cell_view_new_with_pixbuf (GdkPixbuf *pixbuf); Создаёт новый виджет GtkCellView, добавляет GtkCellRendererPixbuf в него и отображает pixbuf .
Параметры
pixbuf | изображение для отображения в представлении ячейки |
Возвращает
Новый созданный виджет GtkCellView.
С: 2.6
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 | [allow-none] |
С: 2.6
gtk_cell_view_get_model ()
GtkTreeModel *
gtk_cell_view_get_model (GtkCellView *cell_view); Возвращает модель для cell_view . Если модель не используется, возвращается NULL.
Параметры
cell_view |
С: 2.16
gtk_cell_view_set_displayed_row ()
void gtk_cell_view_set_displayed_row (GtkCellView *cell_view,GtkTreePath *path);
Устанавливает строку модели, которая в настоящее время отображается в GtkCellView. Если путь не задан, содержимое cellview сохраняется в последнем значении; это обычно нежелательный результат, но может быть необходимым промежуточным состоянием, если, скажем, модель для GtkCellView временно станет пустой.
Параметры
cell_view | ||
path | GtkTreePath или | [allow-none] |
С: 2.6
gtk_cell_view_get_displayed_row ()
GtkTreePath *
gtk_cell_view_get_displayed_row (GtkCellView *cell_view); Возвращает GtkTreePath, относящийся к текущей отображаемой строке. Если строка в данный момент не отображается, возвращается NULL.
Параметры
cell_view |
С: 2.6
gtk_cell_view_get_size_of_row ()
gboolean gtk_cell_view_get_size_of_row (GtkCellView *cell_view,GtkTreePath *path,GtkRequisition *requisition);
gtk_cell_view_get_size_of_row устарело начиная с версии 3.0 и не должно использоваться в новом коде.
Комбо-бокс ранее использовал это для расчёта размеров для cellview, теперь вы можете этого добиться, используя свойство “fit-model” или установив текущую отображаемую строку GtkCellView и используя gtk_widget_get_preferred_size().
Устанавливает requisition до размера, необходимого cell_view для отображения строки модели, на которую указывает path .
Параметры
cell_view | ||
path | ||
requisition | место для возврата размера. | [out] |
Возвращаемое значение
С: 2.6
gtk_cell_view_set_background_color ()
void gtk_cell_view_set_background_color (GtkCellView *cell_view,const GdkColor *color);
gtk_cell_view_set_background_color устарело начиная с версии 3.4 и не должно использоваться в новом коде.
Используйте gtk_cell_view_set_background_rgba() вместо этого.
Устанавливает цвет фона view .
Параметры
cell_view | ||
color | новый цвет фона |
С: 2.6
gtk_cell_view_set_background_rgba ()
void gtk_cell_view_set_background_rgba (GtkCellView *cell_view,const GdkRGBA *rgba);
Устанавливает цвет фона cell_view .
Параметры
cell_view | ||
rgba | новый цвет фона |
С: 3.0
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 | отображать все ячейки в чувствительном состоянии. |
С: 3.0
gtk_cell_view_get_draw_sensitive ()
gboolean
gtk_cell_view_get_draw_sensitive (GtkCellView *cell_view); Получает, сконфигурировано ли cell_view для отображения всех своих ячеек в чувствительном состоянии.
Параметры
cell_view |
Возвращаемое значение
отображает ли cell_view все свои ячейки в чувствительном состоянии
С: 3.0
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 | должен ли |
С: 3.0
gtk_cell_view_get_fit_model ()
gboolean
gtk_cell_view_get_fit_model (GtkCellView *cell_view); Получает, сконфигурировано ли cell_view для запроса пространства для соответствия всему GtkTreeModel.
Параметры
cell_view |
Возвращаемое значение
запрашивает ли cell_view пространство для соответствия всей GtkTreeModel.
С: 3.0
Типы и значения
struct GtkCellView
struct GtkCellView;
struct GtkCellViewClass
struct GtkCellViewClass {
GtkWidgetClass parent_class;
};
Члены
Подробное описание свойств
Свойство “background”
“background” gchar *
Цвет фона в виде строки.
Флаги: Запись
Значение по умолчанию: NULL
Свойство “background-gdk”
“background-gdk” GdkColor *
Цвет фона как GdkColor
GtkCellView:background-gdk устарел с версии 3.4 и не должен использоваться в новых кодах.
Используйте “background-rgba” вместо этого.
Флаги: Чтение / Запись
Свойство “background-rgba”
“background-rgba” GdkRGBA *
Цвет фона как GdkRGBA
Флаги: Чтение / Запись
С версии: 3.0
Свойство “background-set”
“background-set” gboolean
Влияет ли этот тег на цвет фона.
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “cell-area”
“cell-area” GtkCellArea *
Объект GtkCellArea для отрисовки ячеек
Если при создании представления ячеек с помощью gtk_cell_view_new_with_context() область не указана, будет использоваться горизонтальная GtkCellAreaBox.
с версии 3.0
Флаги: Чтение / Запись / Только для создания
Свойство “cell-area-context”
“cell-area-context” GtkCellAreaContext *
Объект GtkCellAreaContext для вычисления геометрии представления ячеек.
Несколько представлений ячеек могут быть назначены одному контексту, чтобы обеспечить соответствие размеров и выравнивания ячеек во всех представлениях с одним контекстом.
Например, меню GtkComboBox использует это для назначения одного контекста всем представлениям ячеек в элементах меню для одного меню (каждое подменю создает свой контекст, так как размер каждого подменю не зависит от родительских или дочерних меню).
с версии 3.0
Флаги: Чтение / Запись / Только для создания
Свойство “draw-sensitive”
“draw-sensitive” gboolean
Определяет, должны ли все ячейки отображаться как чувствительные для этого представления независимо от фактических свойств ячейки (используется для отображения меню с подменю как чувствительные, когда элементы в подменю могут быть нечувствительными).
с версии 3.0
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “fit-model”
“fit-model” gboolean
Определяет, должно ли представление запрашивать достаточно места, чтобы всегда соответствовать размеру каждой строки в модели (используется в комбинации, чтобы убедиться, что размер комбинации не меняется при выборе различных элементов).
с версии 3.0
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “model”
“model” GtkTreeModel *
Модель представления ячеек
с версии 2.10
Флаги: Чтение / Запись
© 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/GtkCellView.html