GtkToolbar
GtkToolbar — Создание панелей кнопок и других виджетов
Функции
Свойства
| GtkIconSize | icon-size | Чтение / Запись |
| gboolean | icon-size-set | Чтение / Запись |
| gboolean | show-arrow | Чтение / Запись |
| GtkToolbarStyle | toolbar-style | Чтение / Запись |
Свойства дочерних элементов
| gboolean | expand | Чтение / Запись |
| gboolean | homogeneous | Чтение / Запись |
Стилизованные свойства
| GtkReliefStyle | button-relief | Чтение |
| gint | internal-padding | Чтение |
| gint | max-child-expand | Чтение |
| GtkShadowType | shadow-type | Чтение |
| gint | space-size | Чтение |
| GtkToolbarSpaceStyle | space-style | Чтение |
Сигналы
Типы и значения
| struct | GtkToolbar |
| enum | GtkToolbarSpaceStyle |
Иерархия объектов
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkContainer ╰── GtkToolbar
Реализованные интерфейсы
GtkToolbar реализует AtkImplementorIface, GtkBuildable, GtkToolShell и GtkOrientable.
Файлы заголовков
#include <gtk/gtk.h>
Описание
Панель инструментов создается вызовом gtk_toolbar_new().
Панель инструментов может содержать экземпляры подкласса GtkToolItem. Чтобы добавить GtkToolItem на панель инструментов, используйте gtk_toolbar_insert(). Чтобы удалить элемент с панели инструментов, используйте gtk_container_remove(). Чтобы добавить кнопку на панель инструментов, добавьте экземпляр GtkToolButton.
Элементы панели инструментов можно визуально сгруппировать, добавив экземпляры GtkSeparatorToolItem на панель инструментов. Если свойство GtkToolbar child “expand” имеет значение TRUE, а свойство “draw” имеет значение FALSE, это заставит все последующие элементы переместиться в конец панели инструментов.
Создание контекстного меню для панели инструментов выполняется путем подключения к сигналу “popup-context-menu”.
Узлы CSS
GtkToolbar имеет один узел CSS с именем toolbar.
Функции
gtk_toolbar_new ()
GtkWidget *
gtk_toolbar_new (void); Создаёт новую панель инструментов.
Возвращаемое значение
созданная панель инструментов.
gtk_toolbar_insert ()
void gtk_toolbar_insert (GtkToolbar *toolbar,GtkToolItem *item,gint pos);
Вставляет GtkToolItem в панель инструментов в позиции pos . Если pos равно 0, элемент добавляется в начало панели инструментов. Если pos отрицательно, элемент добавляется в конец панели инструментов.
Параметры
toolbar | панель инструментов GtkToolbar | |
item | элемент GtkToolItem | |
pos | позиция нового элемента |
С версии: 2.4
gtk_toolbar_get_item_index ()
gint gtk_toolbar_get_item_index (GtkToolbar *toolbar,GtkToolItem *item);
Возвращает позицию item на панели инструментов, начиная с 0. Ошибка произойдёт, если item не является дочерним элементом панели инструментов.
Параметры
toolbar | панель инструментов GtkToolbar | |
item | GtkToolItem является дочерним элементом |
Возвращаемое значение
позиция элемента на панели инструментов.
С версии: 2.4
gtk_toolbar_get_n_items ()
gint
gtk_toolbar_get_n_items (GtkToolbar *toolbar); Возвращает количество элементов на панели инструментов.
Параметры
toolbar | панель инструментов GtkToolbar |
Возвращаемое значение
количество элементов на панели инструментов
С версии: 2.4
gtk_toolbar_get_nth_item ()
GtkToolItem * gtk_toolbar_get_nth_item (GtkToolbar *toolbar,gint n);
Возвращает n -ый элемент на toolbar , или NULL, если на панели инструментов нет n -ого элемента.
Параметры
toolbar | панель инструментов GtkToolbar | |
n | Позиция на панели инструментов |
Возвращаемое значение
n -ый GtkToolItem на toolbar , или NULL, если такого элемента нет.
[nullable][transfer none]
С версии: 2.4
gtk_toolbar_get_drop_index ()
gint gtk_toolbar_get_drop_index (GtkToolbar *toolbar,gint x,gint y);
Возвращает позицию, соответствующую указанной точке на toolbar . Это полезно при перетаскивании элементов в панель инструментов: эта функция возвращает позицию, в которую следует вставить новый элемент.
x и y в координатах toolbar.
Параметры
toolbar | панель инструментов GtkToolbar | |
x | координата x точки на панели инструментов | |
y | координата y точки на панели инструментов |
Возвращаемое значение
Позиция, соответствующая точке (x, y) на панели инструментов.
С версии: 2.4
gtk_toolbar_set_drop_highlight_item ()
void gtk_toolbar_set_drop_highlight_item (GtkToolbar *toolbar,GtkToolItem *tool_item,gint index_);
Выделяет toolbar, чтобы показать, как бы выглядел виджет, если item был добавлен к toolbar в позиции, указанной index_. Если item равен NULL, выделение отключается. В этом случае index_ игнорируется.
Элемент tool_item, переданный в эту функцию, не должен быть частью иерархии виджетов. Когда элемент установлен как выделенный элемент для падения, он не может быть добавлен к иерархии виджетов или использован в качестве выделенного элемента для другой панели инструментов.
Параметры
toolbar | панель инструментов GtkToolbar | |
tool_item | элемент GtkToolItem или | [allow-none] |
index_ | позиция на |
С версии: 2.4
gtk_toolbar_set_show_arrow ()
void gtk_toolbar_set_show_arrow (GtkToolbar *toolbar,gboolean show_arrow);
Устанавливает, отображать ли всплывающее меню, когда на toolbar не хватает места для всех элементов. Если TRUE, элементы, для которых не хватает места, доступны через всплывающее меню.
Параметры
toolbar | панель инструментов GtkToolbar | |
show_arrow | Показывать ли всплывающее меню |
С версии: 2.4
gtk_toolbar_unset_icon_size ()
void
gtk_toolbar_unset_icon_size (GtkToolbar *toolbar); Снимает установку размера значка панели инструментов, установленного с помощью gtk_toolbar_set_icon_size(), таким образом, что для определения размера значка будут использоваться пользовательские настройки.
Параметры
toolbar | панель инструментов GtkToolbar |
gtk_toolbar_get_show_arrow ()
gboolean
gtk_toolbar_get_show_arrow (GtkToolbar *toolbar); Возвращает, имеет ли панель инструментов всплывающее меню. См. gtk_toolbar_set_show_arrow().
Параметры
toolbar | панель инструментов GtkToolbar |
Возвращаемое значение
TRUE, если панель инструментов имеет всплывающее меню.
С версии: 2.4
gtk_toolbar_get_style ()
GtkToolbarStyle
gtk_toolbar_get_style (GtkToolbar *toolbar); Возвращает, отображаются ли в панели инструментов текст, значки или оба. См. gtk_toolbar_set_style().
Параметры
toolbar |
Возвращаемое значение
текущий стиль toolbar
gtk_toolbar_get_icon_size ()
GtkIconSize
gtk_toolbar_get_icon_size (GtkToolbar *toolbar); Возвращает размер значка для панели инструментов. См. gtk_toolbar_set_icon_size().
Параметры
toolbar |
Возвращаемое значение
текущий размер значка для значков на панели инструментов.
gtk_toolbar_get_relief_style ()
GtkReliefStyle
gtk_toolbar_get_relief_style (GtkToolbar *toolbar); Возвращает стиль рельефа кнопок на toolbar . См. gtk_button_set_relief().
Параметры
toolbar |
Возвращаемое значение
Стиль рельефа кнопок на toolbar .
С версии: 2.4
gtk_toolbar_set_style ()
void gtk_toolbar_set_style (GtkToolbar *toolbar,GtkToolbarStyle style);
Изменяет отображение toolbar, чтобы отображались только значки, только текст или оба.
Параметры
toolbar | a GtkToolbar. | |
style | новый стиль для |
gtk_toolbar_set_icon_size ()
void gtk_toolbar_set_icon_size (GtkToolbar *toolbar,GtkIconSize icon_size);
Эта функция устанавливает размер значков в панели инструментов. Вы можете вызвать её как до добавления значков, так и после. Установленный размер переопределит пользовательские настройки для размера значка по умолчанию.
Следует использовать только для панелей инструментов со специальными целями; обычные панели инструментов приложения должны учитывать пользовательские настройки для размера значков.
Параметры
toolbar | ||
icon_size | The GtkIconSize размер значков в панели инструментов. |
gtk_toolbar_unset_style ()
void
gtk_toolbar_unset_style (GtkToolbar *toolbar); Снимает установленный стиль панели инструментов с помощью gtk_toolbar_set_style(), так что пользовательские настройки будут использоваться для определения стиля панели инструментов.
Параметры
toolbar |
Типы и значения
struct GtkToolbar
struct GtkToolbar;
enum GtkToolbarSpaceStyle
GtkToolbarSpaceStyle устарел с версии 3.20 и не должен использоваться в новом коде.
Определяет, являются ли разделители вертикальными линиями или просто пустотой.
Члены
GTK_TOOLBAR_SPACE_EMPTY | Использовать пустые разделители. | |
GTK_TOOLBAR_SPACE_LINE | Использовать вертикальные линии в качестве разделителей. |
Подробности свойств
Свойство “icon-size”
“icon-size” GtkIconSize
Размер значков в панели инструментов обычно определяется настройкой toolbar-icon-size. Когда это свойство установлено, оно переопределяет настройку.
Следует использовать только для панелей инструментов со специальными целями; обычные панели инструментов приложения должны учитывать пользовательские настройки для размера значков.
Флаги: Чтение / Запись
Значение по умолчанию: GTK_ICON_SIZE_LARGE_TOOLBAR
С версии: 2.10
Свойство “icon-size-set”
“icon-size-set” gboolean
Равно TRUE, если свойство icon-size было установлено.
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С версии: 2.10
Свойство “show-arrow”
“show-arrow” gboolean
Определяет, нужно ли отображать стрелку, если панель инструментов не помещается.
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
Свойство “toolbar-style”
“toolbar-style” GtkToolbarStyle
Как отображать панель инструментов.
Флаги: Чтение / Запись
Значение по умолчанию: GTK_TOOLBAR_BOTH_HORIZ
Подробности свойств дочерних элементов
Свойство “expand” дочернего элемента
“expand” gboolean
Определяет, должен ли элемент получать дополнительное место, когда панель инструментов расширяется.
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “homogeneous” дочернего элемента
“homogeneous” gboolean
Определяет, должен ли элемент иметь тот же размер, что и другие однородные элементы.
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Подробности свойств стиля
Свойство стиля “button-relief”
“button-relief” GtkReliefStyle
Тип фаски вокруг кнопок панели инструментов.
Флаги: Чтение
Значение по умолчанию: GTK_RELIEF_NONE
Свойство стиля “internal-padding”
“internal-padding” gint
Количество отступов между тенью панели инструментов и кнопками.
GtkToolbar:internal-padding устарел с версии 3.6 и не должен использоваться в новом коде.
Используйте стандартное свойство отступа CSS (через такие объекты, как GtkStyleContext и GtkCssProvider); значение этого свойства стиля игнорируется.
Флаги: Чтение
Допустимые значения: >= 0
Значение по умолчанию: 0
Свойство стиля “max-child-expand”
“max-child-expand” gint
Максимальное количество места, которое будет предоставлено расширяемому элементу.
Флаги: Чтение
Допустимые значения: >= 0
Значение по умолчанию: 2147483647
Свойство стиля “shadow-type”
“shadow-type” GtkShadowType
Стиль фаски вокруг панели инструментов.
GtkToolbar:shadow-type устарел с версии 3.6 и не должен использоваться в новом коде.
Используйте стандартное свойство границы CSS (через такие объекты, как GtkStyleContext и GtkCssProvider); значение этого свойства стиля игнорируется.
Флаги: Чтение
Значение по умолчанию: GTK_SHADOW_OUT
Свойство стиля “space-size”
“space-size” gint
Размер разделителей на панели инструментов.
GtkToolbar:space-size устарел с версии 3.20 и не должен использоваться в новом коде.
Используйте стандартные свойства отступов/полей CSS для элементов разделителя; значение этого свойства стиля игнорируется.
Флаги: Чтение
Допустимые значения: >= 0
Значение по умолчанию: 12
Свойство стиля “space-style”
“space-style” GtkToolbarSpaceStyle
Стиль разделителей на панели инструментов.
GtkToolbar:space-style устарел с версии 3.20 и не должен использоваться в новом коде.
Используйте свойства CSS для элементов разделителя для стилизации разделителей на панели инструментов; значение этого свойства стиля игнорируется.
Флаги: Чтение
Значение по умолчанию: GTK_TOOLBAR_SPACE_LINE
Подробные сведения о сигналах
Сигнал “focus-home-or-end”
gboolean user_function (GtkToolbar *toolbar, gboolean focus_home, gpointer user_data)
Сигнал для привязки клавиш, используемый внутри GTK+. Этот сигнал нельзя использовать в коде приложения.
Параметры
toolbar | панель инструментов GtkToolbar, которая отправила сигнал | |
focus_home |
| |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “orientation-changed”
void user_function (GtkToolbar *toolbar, GtkOrientation orientation, gpointer user_data)
Отправляется при изменении ориентации панели инструментов.
Параметры
toolbar | объект, который отправил сигнал | |
orientation | новая ориентация GtkOrientation панели инструментов | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполнить сначала
Сигнал “popup-context-menu”
gboolean user_function (GtkToolbar *toolbar, gint x, gint y, gint button, gpointer user_data)
Отправляется, когда пользователь щелкает правой кнопкой мыши по панели инструментов или использует сочетание клавиш для отображения всплывающего меню.
Разработчики приложений должны обрабатывать этот сигнал, если они хотят отобразить контекстное меню на панели инструментов. Контекстное меню должно отображаться по координатам, заданным параметрами x и y. Номер кнопки мыши указан в параметре button. Если меню было вызвано с клавиатуры, button равно -1.
Параметры
toolbar | панель инструментов GtkToolbar, которая отправила сигнал | |
x | координата x точки, где должно отображаться меню | |
y | координата y точки, где должно отображаться меню | |
button | кнопка мыши, нажатая пользователем, или -1 | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Сигнал “style-changed”
void user_function (GtkToolbar *toolbar, GtkToolbarStyle style, gpointer user_data)
Отправляется при изменении стиля панели инструментов.
Параметры
toolbar | Панель инструментов GtkToolbar, которая отправила сигнал | |
style | новый стиль GtkToolbarStyle панели инструментов | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполнить сначала
См. также
© 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/GtkToolbar.html