Spec-Zone.ru › GTK 3.22

GtkToolItem

GtkToolItem — Базовый класс виджетов, которые могут быть добавлены в GtkToolShell

Функции

GtkToolItem * gtk_tool_item_new ()
void gtk_tool_item_set_homogeneous ()
gboolean gtk_tool_item_get_homogeneous ()
void gtk_tool_item_set_expand ()
gboolean gtk_tool_item_get_expand ()
void gtk_tool_item_set_tooltip_text ()
void gtk_tool_item_set_tooltip_markup ()
void gtk_tool_item_set_use_drag_window ()
gboolean gtk_tool_item_get_use_drag_window ()
void gtk_tool_item_set_visible_horizontal ()
gboolean gtk_tool_item_get_visible_horizontal ()
void gtk_tool_item_set_visible_vertical ()
gboolean gtk_tool_item_get_visible_vertical ()
void gtk_tool_item_set_is_important ()
gboolean gtk_tool_item_get_is_important ()
PangoEllipsizeMode gtk_tool_item_get_ellipsize_mode ()
GtkIconSize gtk_tool_item_get_icon_size ()
GtkOrientation gtk_tool_item_get_orientation ()
GtkToolbarStyle gtk_tool_item_get_toolbar_style ()
GtkReliefStyle gtk_tool_item_get_relief_style ()
gfloat gtk_tool_item_get_text_alignment ()
GtkOrientation gtk_tool_item_get_text_orientation ()
GtkWidget * gtk_tool_item_retrieve_proxy_menu_item ()
GtkWidget * gtk_tool_item_get_proxy_menu_item ()
void gtk_tool_item_set_proxy_menu_item ()
void gtk_tool_item_rebuild_menu ()
void gtk_tool_item_toolbar_reconfigured ()
GtkSizeGroup * gtk_tool_item_get_text_size_group ()

Свойства

gboolean is-important Чтение/Запись
gboolean visible-horizontal Чтение/Запись
gboolean visible-vertical Чтение/Запись

Сигналы

gboolean create-menu-proxy Выполнить последним
void toolbar-reconfigured Выполнить последним

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

struct GtkToolItem
struct GtkToolItemClass

Иерархия объектов

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkBin
                    ╰── GtkToolItem
                        ├── GtkToolButton
                        ╰── GtkSeparatorToolItem

Реализованные интерфейсы

GtkToolItem реализует AtkImplementorIface, GtkBuildable и GtkActivatable.

Файлы заголовков

#include <gtk/gtk.h>

Описание

GtkToolItems — это виджеты, которые могут отображаться на панели инструментов. Чтобы создать элемент панели инструментов, содержащий что-либо кроме кнопки, используйте gtk_tool_item_new(). Используйте gtk_container_add() для добавления дочернего виджета в элемент панели инструментов.

Для элементов панели инструментов, содержащих кнопки, см. классы GtkToolButton, GtkToggleToolButton и GtkRadioToolButton.

Описание виджета панели инструментов см. в классе GtkToolbar, а описание интерфейса оболочки инструментов — в классе GtkToolShell.

Функции

gtk_tool_item_new ()

GtkToolItem *
gtk_tool_item_new (void);

Создаёт новый GtkToolItem

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

новый GtkToolItem

С: 2.4

gtk_tool_item_set_homogeneous ()

void
gtk_tool_item_set_homogeneous (GtkToolItem *tool_item,
                               gboolean homogeneous);

Устанавливает, должен ли tool_item иметь такой же размер, как и другие однородные элементы. В результате все однородные элементы будут иметь одинаковую ширину, равную ширине самого широкого из них.

Параметры

tool_item

элемент GtkToolItem

homogeneous

устанавливает, имеет ли tool_item тот же размер, что и другие однородные элементы

С: 2.4

gtk_tool_item_get_homogeneous ()

gboolean
gtk_tool_item_get_homogeneous (GtkToolItem *tool_item);

Возвращает, имеет ли tool_item тот же размер, что и другие однородные элементы. См. gtk_tool_item_set_homogeneous().

Параметры

tool_item

элемент GtkToolItem

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

TRUE, если элемент имеет тот же размер, что и другие однородные элементы.

С: 2.4

gtk_tool_item_set_expand ()

void
gtk_tool_item_set_expand (GtkToolItem *tool_item,
                          gboolean expand);

Устанавливает, будет ли tool_item занимать дополнительное пространство, если на панели инструментов места больше, чем необходимо для элементов. В результате элемент увеличивается, когда панель инструментов увеличивается, и уменьшается, когда она уменьшается.

Параметры

tool_item

элемент GtkToolItem

expand

Указывает, будет ли tool_item занимать дополнительное пространство

С: 2.4

gtk_tool_item_get_expand ()

gboolean
gtk_tool_item_get_expand (GtkToolItem *tool_item);

Возвращает, будет ли tool_item занимать дополнительное пространство. См. gtk_tool_item_set_expand().

Параметры

tool_item

элемент GtkToolItem

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

TRUE, если tool_item занимает дополнительное пространство.

С: 2.4

gtk_tool_item_set_tooltip_text ()

void
gtk_tool_item_set_tooltip_text (GtkToolItem *tool_item,
                                const gchar *text);

Устанавливает текст, который будет отображаться в подсказке к элементу. См. gtk_widget_set_tooltip_text().

Параметры

tool_item

элемент GtkToolItem

text

текст, используемый в качестве подсказки для tool_item

С: 2.12

gtk_tool_item_set_tooltip_markup ()

void
gtk_tool_item_set_tooltip_markup (GtkToolItem *tool_item,
                                  const gchar *markup);

Устанавливает разметку текста, который будет отображаться в подсказке к элементу. См. gtk_widget_set_tooltip_markup().

Параметры

tool_item

элемент GtkToolItem

markup

разметка текста, используемого в качестве подсказки для tool_item

С: 2.12

gtk_tool_item_set_use_drag_window ()

void
gtk_tool_item_set_use_drag_window (GtkToolItem *tool_item,
                                   gboolean use_drag_window);

Устанавливает, имеет ли tool_item окно перетаскивания. Если TRUE, то элемент может использоваться в качестве источника перетаскивания через gtk_drag_source_set(). Если tool_item имеет окно перетаскивания, оно будет перехватывать все события, даже те, которые в противном случае были бы отправлены в дочерний элемент tool_item .

Параметры

tool_item

элемент GtkToolItem

use_drag_window

Указывает, имеет ли tool_item окно перетаскивания.

С: 2.4

gtk_tool_item_get_use_drag_window ()

gboolean
gtk_tool_item_get_use_drag_window (GtkToolItem *tool_item);

Возвращает, имеет ли tool_item окно перетаскивания. См. gtk_tool_item_set_use_drag_window().

Параметры

tool_item

элемент GtkToolItem

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

TRUE, если tool_item использует окно перетаскивания.

С: 2.4

gtk_tool_item_set_visible_horizontal ()

void
gtk_tool_item_set_visible_horizontal (GtkToolItem *tool_item,
                                      gboolean visible_horizontal);

Устанавливает, будет ли tool_item отображаться, когда панель инструментов прикреплена горизонтально.

Параметры

tool_item

элемент GtkToolItem

visible_horizontal

Указывает, будет ли tool_item отображаться в горизонтальном режиме

С: 2.4

gtk_tool_item_get_visible_horizontal ()

gboolean
gtk_tool_item_get_visible_horizontal (GtkToolItem *tool_item);

Возвращает, отображается ли tool_item на панелях инструментов, прикреплённых горизонтально.

Параметры

tool_item

элемент GtkToolItem

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

TRUE, если tool_item отображается на панелях инструментов, прикреплённых горизонтально.

С: 2.4

gtk_tool_item_set_visible_vertical ()

void
gtk_tool_item_set_visible_vertical (GtkToolItem *tool_item,
                                    gboolean visible_vertical);

Устанавливает, будет ли tool_item видимым, когда панель инструментов пристыкована вертикально. Некоторые элементы панели инструментов, такие как текстовые поля, слишком широкие, чтобы быть полезными на вертикально пристыкованной панели инструментов. Если visible_vertical равен FALSE, tool_item не будет отображаться на панелях инструментов, пристыкованных вертикально.

Параметры

tool_item

элемент GtkToolItem

visible_vertical

будет ли tool_item видимым, когда панель инструментов находится в вертикальном режиме

С: 2.4

gtk_tool_item_get_visible_vertical ()

gboolean
gtk_tool_item_get_visible_vertical (GtkToolItem *tool_item);

Возвращает значение, определяющее видимость tool_item при вертикальной привязке панели инструментов. См. gtk_tool_item_set_visible_vertical().

Параметры

tool_item

элемент GtkToolItem

Возвращает

значение, определяющее, будет ли tool_item видимым при вертикальной привязке панели инструментов

С: 2.4

gtk_tool_item_set_is_important ()

void
gtk_tool_item_set_is_important (GtkToolItem *tool_item,
                                gboolean is_important);

Устанавливает, является ли tool_item важным. Класс GtkToolButton использует это свойство для определения, нужно ли показывать или скрывать метку, когда стиль панели инструментов GTK_TOOLBAR_BOTH_HORIZ. В результате, только кнопки инструментов со свойством «is_important», установленным в значение «истина», будут иметь метки, что известно как «текст с приоритетом»

Параметры

tool_item

элемент GtkToolItem

is_important

является ли элемент инструмента важным

С: 2.4

gtk_tool_item_get_is_important ()

gboolean
gtk_tool_item_get_is_important (GtkToolItem *tool_item);

Возвращает значение, указывающее, считается ли tool_item важным. См. gtk_tool_item_set_is_important()

Параметры

tool_item

элемент GtkToolItem

Возвращает

TRUE, если tool_item считается важным.

С: 2.4

gtk_tool_item_get_ellipsize_mode ()

PangoEllipsizeMode
gtk_tool_item_get_ellipsize_mode (GtkToolItem *tool_item);

Возвращает режим обрезания, используемый для tool_item. Пользовательские подклассы GtkToolItem должны вызывать эту функцию, чтобы узнать, как должен быть обрезан текст.

Параметры

tool_item

элемент GtkToolItem

Возвращает

значение PangoEllipsizeMode, указывающее, как должен быть обрезан текст в tool_item.

С: 2.20

gtk_tool_item_get_icon_size ()

GtkIconSize
gtk_tool_item_get_icon_size (GtkToolItem *tool_item);

Возвращает размер иконки, используемый для tool_item. Пользовательские подклассы GtkToolItem должны вызывать эту функцию, чтобы узнать, какие иконки использовать.

Параметры

tool_item

элемент GtkToolItem

Возвращает

значение GtkIconSize, указывающее размер иконки, используемый для tool_item.

[type int]

С: 2.4

gtk_tool_item_get_orientation ()

GtkOrientation
gtk_tool_item_get_orientation (GtkToolItem *tool_item);

Возвращает ориентацию, используемую для tool_item. Пользовательские подклассы GtkToolItem должны вызывать эту функцию, чтобы узнать, какие иконки использовать.

Параметры

tool_item

элемент GtkToolItem

Возвращает

значение GtkOrientation, указывающее ориентацию, используемую для tool_item

С: 2.4

gtk_tool_item_get_toolbar_style ()

GtkToolbarStyle
gtk_tool_item_get_toolbar_style (GtkToolItem *tool_item);

Возвращает стиль панели инструментов, используемый для tool_item. Пользовательские подклассы GtkToolItem должны вызывать эту функцию в обработчике сигнала GtkToolItem::toolbar_reconfigured, чтобы узнать, в каком стиле отображается панель инструментов, и соответствующим образом изменить себя.

Возможные значения:

  • GTK_TOOLBAR_BOTH, что означает, что элемент панели инструментов должен отображать как иконку, так и метку, расположенные вертикально

  • GTK_TOOLBAR_ICONS, что означает, что на панели инструментов отображаются только иконки

  • GTK_TOOLBAR_TEXT, что означает, что элемент панели инструментов должен отображать только текст

  • GTK_TOOLBAR_BOTH_HORIZ, что означает, что элемент панели инструментов должен отображать как иконку, так и метку, расположенные горизонтально

Параметры

tool_item

элемент GtkToolItem

Возвращает

значение GtkToolbarStyle, указывающее стиль панели инструментов, используемый для tool_item.

С: 2.4

gtk_tool_item_get_relief_style ()

GtkReliefStyle
gtk_tool_item_get_relief_style (GtkToolItem *tool_item);

Возвращает стиль рельефа tool_item. См. gtk_button_set_relief(). Пользовательские подклассы GtkToolItem должны вызывать эту функцию в обработчике сигнала “toolbar_reconfigured” для определения стиля рельефа кнопок.

Параметры

tool_item

элемент GtkToolItem

Возвращает

значение GtkReliefStyle, указывающее стиль рельефа, используемый для tool_item.

С: 2.4

gtk_tool_item_get_text_alignment ()

gfloat
gtk_tool_item_get_text_alignment (GtkToolItem *tool_item);

Возвращает выравнивание текста, используемого для tool_item. Пользовательские подклассы GtkToolItem должны вызывать эту функцию, чтобы узнать, как следует выравнивать текст.

Параметры

tool_item

a GtkToolItem:

Возвращает

a gfloat указывающий горизонтальное выравнивание текста, используемого для tool_item

Since: 2.20

gtk_tool_item_get_text_orientation ()

GtkOrientation
gtk_tool_item_get_text_orientation (GtkToolItem *tool_item);

Возвращает ориентацию текста, используемого для tool_item. Пользовательские подклассы GtkToolItem должны вызывать эту функцию, чтобы узнать, как следует ориентировать текст.

Параметры

tool_item

a GtkToolItem

Возвращает

a GtkOrientation указывающий ориентацию текста, используемого для tool_item

Since: 2.20

gtk_tool_item_retrieve_proxy_menu_item ()

GtkWidget *
gtk_tool_item_retrieve_proxy_menu_item
                               (GtkToolItem *tool_item);

Возвращает GtkMenuItem, который был последним установлен с помощью gtk_tool_item_set_proxy_menu_item(), т.е. GtkMenuItem, который будет отображаться в меню переполнения.

Параметры

tool_item

a GtkToolItem

Возвращает

The GtkMenuItem, который будет отображаться в меню переполнения для tool_item .

[transfer none]

Since: 2.4

gtk_tool_item_get_proxy_menu_item ()

GtkWidget *
gtk_tool_item_get_proxy_menu_item (GtkToolItem *tool_item,
                                   const gchar *menu_item_id);

Если menu_item_id соответствует строке, переданной в gtk_tool_item_set_proxy_menu_item(), возвращает соответствующий GtkMenuItem.

Пользовательские подклассы GtkToolItem должны использовать эту функцию для обновления элемента меню, когда GtkToolItem изменяется. Требование, чтобы menu_item_ids соответствовало, гарантирует, что GtkToolItem не изменит случайно элемент меню, который он не создавал.

Параметры

tool_item

a GtkToolItem

menu_item_id

строка, используемая для идентификации элемента меню

Возвращает

The GtkMenuItem, переданный в gtk_tool_item_set_proxy_menu_item(), если menu_item_ids совпадают.

[transfer none]

Since: 2.4

gtk_tool_item_set_proxy_menu_item ()

void
gtk_tool_item_set_proxy_menu_item (GtkToolItem *tool_item,
                                   const gchar *menu_item_id,
                                   GtkWidget *menu_item);

Устанавливает GtkMenuItem, используемый в контекстном меню панели инструментов. menu_item_id используется для идентификации вызывающего функцию и должен также использоваться с gtk_tool_item_get_proxy_menu_item().

Параметры

tool_item

a GtkToolItem

menu_item_id

a string used to identify menu_item

menu_item

a GtkMenuItem to be used in the overflow menu

Since: 2.4

gtk_tool_item_rebuild_menu ()

void
gtk_tool_item_rebuild_menu (GtkToolItem *tool_item);

Вызов этой функции сигнализирует панели инструментов о том, что элемент меню переполнения для tool_item изменился. Если меню переполнения видно при вызове этой функции, меню будет перестроено.

Функция должна вызываться, когда элемент инструмента изменяет то, как он будет реагировать на сигнал “create-menu-proxy”.

Параметры

tool_item

a GtkToolItem

Since: 2.6

gtk_tool_item_toolbar-reconfigured ()

void
gtk_tool_item_toolbar_reconfigured (GtkToolItem *tool_item);

Отправляет сигнал “toolbar_reconfigured” на tool_item. Реализации GtkToolbar и других GtkToolShell используют эту функцию для уведомления потомков, когда изменяется какой-либо аспект их конфигурации.

Параметры

tool_item

a GtkToolItem

Since: 2.14

gtk_tool_item_get_text-size-group ()

GtkSizeGroup *
gtk_tool_item_get_text_size_group (GtkToolItem *tool_item);

Возвращает группу размеров, используемую для меток в tool_item. Пользовательские подклассы GtkToolItem должны вызывать эту функцию и использовать группу размеров для меток.

Параметры

tool_item

a GtkToolItem

Возвращает

a GtkSizeGroup.

[transfer none]

Since: 2.20

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

Структура GtkToolItem

struct GtkToolItem;

Структура GtkToolItem содержит только приватные данные. К ней следует обращаться только через функции, описанные ниже.

Структура GtkToolItemClass

struct GtkToolItemClass {
  GtkBinClass parent_class;

  /* signals */
  gboolean   (* create_menu_proxy)    (GtkToolItem *tool_item);
  void       (* toolbar_reconfigured) (GtkToolItem *tool_item);
};

Члены

create_menu_proxy ()

Сигнал, испускаемый, когда панель инструментов нуждается в информации от tool_item о том, следует ли отображать элемент в контекстном меню.

toolbar_reconfigured ()

Сигнал, испускаемый, когда изменяется какой-либо атрибут панели инструментов, являющейся родителем элемента.

Подробности свойств

Свойство “is-important”

  “is-important”             gboolean

Определяет, считается ли элемент панели инструментов важным. Если TRUE, кнопки панели инструментов отображают текст в режиме GTK_TOOLBAR_BOTH_HORIZ.

Флаги: Чтение / Запись

Значение по умолчанию: FALSE

Свойство “visible-horizontal”

  “visible-horizontal”       gboolean

Определяет, отображается ли элемент панели инструментов при горизонтальной ориентации панели.

Флаги: Чтение / Запись

Значение по умолчанию: TRUE

Свойство “visible-vertical”

  “visible-vertical”         gboolean

Определяет, отображается ли элемент панели инструментов при вертикальной ориентации панели.

Флаги: Чтение / Запись

Значение по умолчанию: TRUE

Подробности сигналов

Сигнал “create-menu-proxy”

gboolean
user_function (GtkToolItem *tool_item,
               gpointer     user_data)

Этот сигнал испускается, когда панель инструментов нуждается в информации от tool_item о том, следует ли отображать элемент в контекстном меню панели инструментов. В ответ элемент должен либо

  • вызвать gtk_tool_item_set_proxy_menu_item() с указателем NULL и вернуть TRUE, чтобы указать, что элемент не должен отображаться в контекстном меню;

  • вызвать gtk_tool_item_set_proxy_menu_item() с новым элементом меню и вернуть TRUE, или;

  • вернуть FALSE, чтобы указать, что сигнал не был обработан элементом. Это означает, что элемент не будет отображаться в контекстном меню, если позже обработчик не установит элемент меню.

Панель инструментов может кэшировать результат этого сигнала. Когда элемент изменяет способ реакции на этот сигнал, он должен вызвать gtk_tool_item_rebuild_menu(), чтобы обновить кэш и убедиться, что панель инструментов перестроит свое контекстное меню.

Параметры

tool_item

объект, на котором был испущен сигнал

user_data

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

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

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

Флаги: TRUE

Сигнал “toolbar-reconfigured”

void
user_function (GtkToolItem *tool_item,
               gpointer     user_data)

Этот сигнал испускается, когда изменяется какой-либо атрибут панели инструментов, являющейся родителем элемента. Для пользовательских подклассов GtkToolItem стандартный обработчик этого сигнала использует функции

  • gtk_tool_shell_get_orientation()

  • gtk_tool_shell_get_style()

  • gtk_tool_shell_get_icon_size()

  • gtk_tool_shell_get_relief_style() для определения внешнего вида панели инструментов и соответствующей корректировки.

Параметры

tool_item

объект, на котором был испущен сигнал

user_data

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

Флаги: TRUE

См. также

GtkToolbar, GtkToolButton, GtkSeparatorToolItem

© 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/GtkToolItem.html

Spec-Zone.ru

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