Spec-Zone.ru › GTK 3.20

GtkToolbar

GtkToolbar — Создание панелей кнопок и других виджетов

Функции

GtkWidget * gtk_toolbar_new ()
void gtk_toolbar_insert ()
gint gtk_toolbar_get_item_index ()
gint gtk_toolbar_get_n_items ()
GtkToolItem * gtk_toolbar_get_nth_item ()
gint gtk_toolbar_get_drop_index ()
void gtk_toolbar_set_drop_highlight_item ()
void gtk_toolbar_set_show_arrow ()
void gtk_toolbar_unset_icon_size ()
gboolean gtk_toolbar_get_show_arrow ()
GtkToolbarStyle gtk_toolbar_get_style ()
GtkIconSize gtk_toolbar_get_icon_size ()
GtkReliefStyle gtk_toolbar_get_relief_style ()
void gtk_toolbar_set_style ()
void gtk_toolbar_set_icon_size ()
void gtk_toolbar_unset_style ()

Свойства

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 Чтение

Сигналы

gboolean focus-home-or-end Действие
void orientation-changed Выполнить сначала
gboolean popup-context-menu Выполнить последним
void style-changed Выполнить сначала

Типы и значения

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, дочерний элемент toolbar

Возвращает

позицию элемента на панели инструментов.

С: 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, если n-го элемента нет.

[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, или NULL для отключения подсветки.

[allow-none]

index_

позиция на toolbar

С: 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

новый стиль для toolbar.

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

TRUE, если необходимо сфокусировать первый элемент

user_data

данные пользователя, заданные при подключении обработчика сигнала.

Возвращаемое значение

TRUE, если сигнал обработался, FALSE, если нет

Флаги: Действие

Сигнал “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

данные пользователя, заданные при подключении обработчика сигнала.

Возвращаемое значение

возвращает TRUE, если сигнал обработался, FALSE, если нет

Флаги: Выполнить последним

Сигнал “style-changed”

void
user_function (GtkToolbar     *toolbar,
               GtkToolbarStyle style,
               gpointer        user_data)

Испускается при изменении стиля панели инструментов.

Параметры

toolbar

Панель инструментов GtkToolbar, которая испустила сигнал

style

новый стиль GtkToolbarStyle панели инструментов

user_data

данные пользователя, заданные при подключении обработчика сигнала.

Флаги: Выполнить сначала

См. также

GtkToolItem

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API