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_pixbuf () |
| 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 () |
| gboolean | gtk_cell_view_get_size_of_row () |
| void | gtk_cell_view_set_background_color () |
| void | gtk_cell_view_set_background_rgba () |
| 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 () |
Свойства
| char * | 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 во время создания, чтобы сохранить cellview в контексте группы cell view, это гарантирует, что отображаемые элементы будут правильно выровнены друг с другом (как выровненные ячейки в меню GtkComboBox).
GtkCellView является GtkOrientable, чтобы определить, в какой ориентации должен быть выделен контекст GtkCellAreaContext. Пример с меню GtkComboBox: cellview должны быть ориентированы горизонтально, если меню перечислены сверху вниз и, следовательно, все разделяют одну ширину, но могут иметь отдельные высоты (меню слева направо должны быть распределены вертикально, так как все они разделяют одну высоту, но могут иметь переменные ширины).
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.
Указание одного контекста для нескольких ячеек позволяет базовому классу синхронизировать геометрию этих ячеек, что позволяет выравнивать ячейки в других строках.
Параметры
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 | a GtkTreeModel. | [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 | a 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 |
Возвращаемое значение
текущая отображаемая строка или NULL.
[nullable][transfer full]
С: 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] |
Возвращаемое значение
TRUE
С: 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 на кнопке combo box всегда получает достаточно места и не изменяет размер при изменении выбора.
Параметры
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” char *
Цвет фона в виде строки.
Владелец: GtkCellView
Флаги: Запись
Значение по умолчанию: NULL
Свойство “background-gdk”
“background-gdk” GdkColor *
Цвет фона в виде GdkColor.
GtkCellView:background-gdk устарело начиная с версии 3.4 и не должно использоваться в новых кодах.
Используйте свойство “background-rgba” вместо этого.
Владелец: GtkCellView
Флаги: Чтение / Запись
Свойство “background-rgba”
“background-rgba” GdkRGBA *
Цвет фона в виде GdkRGBA.
Владелец: GtkCellView
Флаги: Чтение / Запись
С версии: 3.0
Свойство “background-set”
“background-set” gboolean
Определяет, влияет ли этот тег на цвет фона.
Владелец: GtkCellView
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “cell-area”
“cell-area” GtkCellArea *
Объект GtkCellArea для отрисовки ячеек
Если область не указана при создании представления ячеек с помощью gtk_cell_view_new_with_context(), будет использоваться горизонтальная область GtkCellAreaBox.
с версии 3.0
Владелец: GtkCellView
Флаги: Чтение / Запись / Только для создания
Свойство “cell-area-context”
“cell-area-context” GtkCellAreaContext *
Объект GtkCellAreaContext, используемый для вычисления геометрии представления ячеек.
Несколько представлений ячеек могут быть назначены одному контексту, чтобы обеспечить соответствие размеров и выравнивания ячеек во всех представлениях с одним контекстом.
Меню GtkComboBox использует это для назначения одного контекста всем представлениям ячеек в элементах меню для одного меню (каждый подменю создаёт свой контекст, так как размер каждого подменю не зависит от родительского или соседних меню).
с версии 3.0
Владелец: GtkCellView
Флаги: Чтение / Запись / Только для создания
Свойство “draw-sensitive”
“draw-sensitive” gboolean
Указывает, должны ли все ячейки отображаться как чувствительные для этого представления независимо от фактических свойств ячеек (используется для отображения меню с подменю как чувствительные, когда элементы в подменю могут быть нечувствительными).
с версии 3.0
Владелец: GtkCellView
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “fit-model”
“fit-model” gboolean
Указывает, должно ли представление запрашивать достаточно места, чтобы всегда поместить размер каждой строки в модели (используется в ComboBox для предотвращения изменения размера ComboBox при выборе разных элементов).
с версии 3.0
Владелец: GtkCellView
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “model”
“model” GtkTreeModel *
Модель для представления ячеек
с версии 2.10
Владелец: GtkCellView
Флаги: Чтение / Запись
© 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/GtkCellView.html