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 | Позиция на панели инструментов |
С: 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 | панель инструментов GtkToolbar |
Возвращаемое значение
текущий стиль toolbar
gtk_toolbar_get_icon_size ()
GtkIconSize
gtk_toolbar_get_icon_size (GtkToolbar *toolbar); Возвращает размер значков для панели инструментов. См. gtk_toolbar_set_icon_size().
Параметры
toolbar | панель инструментов GtkToolbar |
Возвращаемое значение
текущий размер значков на панели инструментов.
gtk_toolbar_get_relief_style ()
GtkReliefStyle
gtk_toolbar_get_relief_style (GtkToolbar *toolbar); Возвращает стиль рельефа кнопок на toolbar. См. gtk_button_set_relief().
Параметры
toolbar | панель инструментов GtkToolbar |
Возвращаемое значение
Стиль рельефа кнопок на toolbar.
С: 2.4
gtk_toolbar_set_style ()
void gtk_toolbar_set_style (GtkToolbar *toolbar,GtkToolbarStyle style);
Изменяет отображение toolbar на отображение только значков, только текста или и того, и другого.
Параметры
toolbar | панель инструментов GtkToolbar. | |
style | новый стиль для |
gtk_toolbar_set_icon_size ()
void gtk_toolbar_set_icon_size (GtkToolbar *toolbar,GtkIconSize icon_size);
Эта функция устанавливает размер значков в панели инструментов. Вы можете вызвать её как до добавления значков, так и после. Установленный размер переопределит настройки пользователя для размера значка по умолчанию.
Используйте её только для панелей инструментов специального назначения; обычные панели инструментов приложения должны учитывать настройки пользователей для размера значков.
Параметры
toolbar | панель инструментов GtkToolbar | |
icon_size | Значение GtkIconSize значков на панели инструментов. |
gtk_toolbar_unset_style ()
void
gtk_toolbar_unset_style (GtkToolbar *toolbar); Снимает стиль панели инструментов, установленный с помощью gtk_toolbar_set_style(), чтобы настройки пользователя использовались для определения стиля панели инструментов.
Параметры
toolbar | панель инструментов GtkToolbar |
Типы и значения
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.20/GtkToolbar.html