GtkScrollable
GtkScrollable — Интерфейс для прокручиваемых виджетов
Функции
Свойства
| GtkAdjustment * | hadjustment | Чтение / Запись / Создание |
| GtkScrollablePolicy | hscroll-policy | Чтение / Запись |
| GtkAdjustment * | vadjustment | Чтение / Запись / Создание |
| GtkScrollablePolicy | vscroll-policy | Чтение / Запись |
Типы и значения
| GtkScrollable | |
| перечисление | GtkScrollablePolicy |
Иерархия объектов
GInterface ╰── GtkScrollable
Предварительные требования
GtkScrollable требует GObject.
Известные реализации
GtkScrollable реализуется в GtkIconView, GtkLayout, GtkTextView, GtkToolPalette, GtkTreeView и GtkViewport.
Файлы заголовков
#include <gtk/gtk.h>
Описание
GtkScrollable — это интерфейс, реализуемый виджетами с собственной возможностью прокрутки.
Для реализации этого интерфейса необходимо переопределить свойства “hadjustment” и “vadjustment”.
Создание прокручиваемого виджета
Все прокручиваемые виджеты должны выполнять следующие действия.
При установке родительским виджетом настроек прокручиваемого дочернего виджета, виджет должен заполнить свойства настроек “lower”, “upper”, “step-increment”, “page-increment” и “page-size” и подключиться к сигналу “value-changed”.
Поскольку предпочтительный размер — это размер полностью развернутого виджета, прокручиваемый виджет должен уметь справляться с недораспределениями. Это означает, что он должен принять любое значение, переданное его функции
GtkWidgetClass.size_allocate().При выделении пространства родительским элементом для прокручиваемого дочернего виджета виджет должен обновить свойства настроек новыми значениями.
При срабатывании любого из сигналов настроек “value-changed” прокручиваемый виджет должен прокрутить своё содержимое.
Функции
gtk_scrollable_get_hadjustment ()
GtkAdjustment *
gtk_scrollable_get_hadjustment (GtkScrollable *scrollable); Получает GtkAdjustment, используемый для горизонтальной прокрутки.
Параметры
scrollable |
С: 3.0
gtk_scrollable_set_hadjustment ()
void gtk_scrollable_set_hadjustment (GtkScrollable *scrollable,GtkAdjustment *hadjustment);
Устанавливает горизонтальную настройку GtkScrollable.
Параметры
scrollable | ||
hadjustment | [allow-none] |
С: 3.0
gtk_scrollable_get_vadjustment ()
GtkAdjustment *
gtk_scrollable_get_vadjustment (GtkScrollable *scrollable); Получает GtkAdjustment, используемый для вертикальной прокрутки.
Параметры
scrollable |
С: 3.0
gtk_scrollable_set_vadjustment ()
void gtk_scrollable_set_vadjustment (GtkScrollable *scrollable,GtkAdjustment *vadjustment);
Устанавливает вертикальную настойку GtkScrollable.
Параметры
scrollable | ||
vadjustment | [allow-none] |
С: 3.0
gtk_scrollable_get_hscroll_policy ()
GtkScrollablePolicy
gtk_scrollable_get_hscroll_policy (GtkScrollable *scrollable); Получает горизонтальную политику GtkScrollablePolicy.
Параметры
scrollable |
Возвращает
Горизонтальная политика GtkScrollablePolicy.
С: 3.0
gtk_scrollable_set_hscroll_policy ()
void gtk_scrollable_set_hscroll_policy (GtkScrollable *scrollable,GtkScrollablePolicy policy);
Устанавливает GtkScrollablePolicy, определяющую, следует ли начинать горизонтальную прокрутку ниже минимальной ширины или ниже естественной ширины.
Параметры
scrollable | ||
policy | горизонтальная GtkScrollablePolicy |
С: 3.0
gtk_scrollable_get_vscroll_policy ()
GtkScrollablePolicy
gtk_scrollable_get_vscroll_policy (GtkScrollable *scrollable); Получает вертикальную политику GtkScrollablePolicy.
Параметры
scrollable |
Возвращает
Вертикальная политика GtkScrollablePolicy.
С: 3.0
gtk_scrollable_set_vscroll_policy ()
void gtk_scrollable_set_vscroll_policy (GtkScrollable *scrollable,GtkScrollablePolicy policy);
Устанавливает GtkScrollablePolicy, определяющую, следует ли начинать вертикальную прокрутку ниже минимальной высоты или ниже естественной высоты.
Параметры
scrollable | ||
policy | вертикальная GtkScrollablePolicy |
С: 3.0
gtk_scrollable_get_border ()
gboolean gtk_scrollable_get_border (GtkScrollable *scrollable,GtkBorder *border);
Возвращает размер не прокручиваемого поля вокруг внешней стороны прокручиваемого элемента. Пример — заголовки treeview. GTK+ может использовать эту информацию для отображения наложенной графики, например, индикатора прокрутки, в правильном положении.
Параметры
scrollable | ||
border | место хранения результатов. | [out caller-allocates] |
Возвращает
TRUE, если border было установлено
С: 3.16
Типы и значения
GtkScrollable
typedef struct _GtkScrollable GtkScrollable;
перечисление GtkScrollablePolicy
Определяет политику, используемую в виджете прокрутки при обновлении настроек окна прокрутки в заданном направлении.
Элементы
GTK_SCROLL_MINIMUM | Настройки прокрутки основаны на минимальном размере | |
GTK_SCROLL_NATURAL | Настройки прокрутки основаны на естественном размере |
Подробное описание свойств
Свойство “hadjustment”
“hadjustment” GtkAdjustment *
Горизонтальная GtkAdjustment свёртываемого виджета. Эта настройка совместно используется свертываемым виджетом и его родителем.
Флаги: Чтение / Запись / Создание
С: 3.0
Свойство “hscroll-policy”
“hscroll-policy” GtkScrollablePolicy
Определяет, следует ли начинать горизонтальную прокрутку, когда свертываемый виджет выделен меньше своего минимального размера или меньше своего естественного размера.
Флаги: Чтение / Запись
Значение по умолчанию: GTK_SCROLL_MINIMUM
С: 3.0
Свойство “vadjustment”
“vadjustment” GtkAdjustment *
Вертикальная GtkAdjustment свёртываемого виджета. Эта настройка совместно используется свертываемым виджетом и его родителем.
Флаги: Чтение / Запись / Создание
С: 3.0
Свойство “vscroll-policy”
“vscroll-policy” GtkScrollablePolicy
Определяет, следует ли начинать вертикальную прокрутку, когда свертываемый виджет выделен меньше своей минимальной высоты или меньше своей естественной высоты.
Флаги: Чтение / Запись
Значение по умолчанию: GTK_SCROLL_MINIMUM
С: 3.0
© 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/GtkScrollable.html