GtkUIManager
GtkUIManager — Создание меню и панелей инструментов по описанию в XML
Функции
| GtkUIManager * | gtk_ui_manager_new () |
| void | gtk_ui_manager_set_add_tearoffs () |
| gboolean | gtk_ui_manager_get_add_tearoffs () |
| void | gtk_ui_manager_insert_action_group () |
| void | gtk_ui_manager_remove_action_group () |
| GList * | gtk_ui_manager_get_action_groups () |
| GtkAccelGroup * | gtk_ui_manager_get_accel_group () |
| GtkWidget * | gtk_ui_manager_get_widget () |
| GSList * | gtk_ui_manager_get_toplevels () |
| GtkAction * | gtk_ui_manager_get_action () |
| guint | gtk_ui_manager_add_ui_from_resource () |
| guint | gtk_ui_manager_add_ui_from_string () |
| guint | gtk_ui_manager_add_ui_from_file () |
| guint | gtk_ui_manager_new_merge_id () |
| void | gtk_ui_manager_add_ui () |
| void | gtk_ui_manager_remove_ui () |
| gchar * | gtk_ui_manager_get_ui () |
| void | gtk_ui_manager_ensure_update () |
Свойства
| gboolean | add-tearoffs | Чтение/Запись |
| char * | ui | Чтение |
Сигналы
| void | actions-changed | Без рекурсии |
| void | add-widget | Без рекурсии |
| void | connect-proxy | Без рекурсии |
| void | disconnect-proxy | Без рекурсии |
| void | post-activate | Без рекурсии |
| void | pre-activate | Без рекурсии |
Типы и значения
| struct | GtkUIManager |
| enum | GtkUIManagerItemType |
Иерархия объектов
GObject
╰── GtkUIManager
Реализованные интерфейсы
GtkUIManager реализует GtkBuildable.
Файлы заголовков
#include <gtk/gtk.h>
Описание
GtkUIManager устарел с GTK+ 3.10. Для построения пользовательских интерфейсов из определений XML следует использовать GtkBuilder, GMenuModel и т. д. Для работы с действиями используйте GAction, GtkActionable и т. д. Эти новые классы поддерживают более богатые возможности и интеграцию с различными оболочками рабочего стола. Возможность мигрировать большинство/все функции из GtkUIManager.
A GtkUIManager строит пользовательский интерфейс (меню и панели инструментов) из одного или нескольких определений пользовательского интерфейса, которые ссылаются на действия из одной или нескольких групп действий.
Определения пользовательского интерфейса
Определения пользовательского интерфейса задаются в формате XML, который можно примерно описать с помощью следующего DTD.
Не путайте определения пользовательского интерфейса GtkUIManager, описанные здесь, с определениями пользовательского интерфейса GtkBuilder с аналогичным названием Определения пользовательского интерфейса GtkBuilder.
Существуют некоторые дополнительные ограничения, помимо тех, что указаны в DTD, например, каждый элемент панели инструментов должен иметь панель инструментов в своём предке, а каждый элемент меню должен иметь строку меню или всплывающее меню в своём предке. Поскольку для анализа описания пользовательского интерфейса используется GMarkupParser, оно должно быть не только корректным XML, но и корректной разметкой.
Если имя не указано, оно по умолчанию равно действию. Если действие также не указано, используется имя элемента. Атрибуты name и action не должны содержать символов «/» после разбора (так как это нарушило бы поиск пути) и должны быть применимы в качестве атрибутов XML, когда заключены в двойные кавычки, поэтому они не должны содержать символов «"» или ссылки на сущность ".
Определение пользовательского интерфейса
Построенная иерархия виджетов очень похожа на дерево элементов XML, за исключением того, что заполнители объединяются с их родителями. Соответствие элементов XML виджетам должно быть почти очевидным:
-
menubar
-
toolbar
-
popup
a toplevel GtkMenu
-
menu
a GtkMenu прикреплённый к элементу меню
-
menuitem
a GtkMenuItem подкласс, точный тип зависит от действия
-
toolitem
a GtkToolItem подкласс, точный тип зависит от действия. Обратите внимание, что элементы toolitem могут содержать элемент menu, но только если связанное с ними действие определяет GtkMenuToolButton в качестве прокси.
-
separator
-
accelerator
ускоритель ввода с клавиатуры
Атрибут «position» определяет, где построенный виджет размещается относительно своих соседей в частично построенном дереве. Если он равен «top», виджет добавляется в начало, в противном случае он добавляется в конец.
Объединение пользовательских интерфейсов
Наиболее примечательная особенность GtkUIManager заключается в том, что он может наложить набор элементов меню и элементов инструментов поверх другого и затем разъединить их.
Объединение выполняется на основе имён элементов XML. Каждый элемент идентифицируется путём, состоящим из имён его предков, разделённых косыми чертами. Например, элемент меню с именем «Left» в приведённом выше примере имеет путь /ui/menubar/JustifyMenu/Left и элемент панели инструментов с тем же именем имеет путь /ui/toolbar1/JustifyToolItems/Left.
Ускорители
Каждое действие имеет путь ускорителя. Ускорители устанавливаются вместе с прокси элементами меню, но их также можно явно добавить с помощью элементов <accelerator> в определении пользовательского интерфейса. Это позволяет иметь ускорители для действий, даже если у них нет видимых прокси.
Умные разделители
Разделители, созданные GtkUIManager, являются «умными», т. е. они не отображаются в пользовательском интерфейсе, если они не оказываются между двумя видимыми элементами меню или панели инструментов. Разделители, которые расположены в самом начале или конце меню или панели инструментов, содержащих их, или несколько разделителей рядом друг с другом, скрываются. Это полезная функция, так как объединение элементов пользовательского интерфейса из нескольких источников может затруднить или сделать невозможным предварительное определение того, окажется ли разделитель в таком неудачном положении.
Для разделителей на панелях инструментов можно установить expand="true" для преобразования их из маленького видимого разделителя в расширяющийся невидимый. Элементы панели инструментов, следующие за расширяющимся разделителем, фактически выравниваются справа.
Пустые меню
Всплывающие меню создают аналогичные проблемы с разделителями в связи с объединением. Невозможно заранее узнать, окажутся ли они пустыми после объединения. GtkUIManager предлагает два способа обработки пустых всплывающих меню:
сделать их невидимыми, скрыв элемент меню, к которому они прикреплены
добавить неактивный элемент «Пусто»
Поведение выбирается на основе свойства «hide_if_empty» действия, к которому относится всплывающее меню.
GtkUIManager в качестве GtkBuildable
Реализация GtkUIManager интерфейса GtkBuildable принимает объекты GtkActionGroup в качестве элементов <child> в определениях пользовательского интерфейса.
Определение пользовательского интерфейса GtkUIManager, описанное выше, может быть встроено в элемент <object> GtkUIManager в определении пользовательского интерфейса GtkBuilder.
Виджеты, которые строятся GtkUIManager, могут быть встроены в другие части построенного пользовательского интерфейса с помощью атрибута «constructor». См. пример ниже.
Встроенное определение пользовательского интерфейса GtkUIManager
Функции
gtk_ui_manager_new ()
GtkUIManager *
gtk_ui_manager_new (void); gtk_ui_manager_new устарела с версии 3.10 и не должна использоваться в новых кодах.
Создаёт новый объект менеджера пользовательского интерфейса.
Возвращает
новый объект менеджера пользовательского интерфейса.
С версии: 2.4
gtk_ui_manager_set_add_tearoffs ()
void gtk_ui_manager_set_add_tearoffs (GtkUIManager *manager,gboolean add_tearoffs);
gtk_ui_manager_set_add_tearoffs устарела с версии 3.4 и не должна использоваться в новых кодах.
Всплывающие меню устарели и не должны использоваться в новых кодах.
Устанавливает свойство «add_tearoffs», которое управляет тем, будут ли меню, сгенерированные этим GtkUIManager, содержать элементы всплывающего меню.
Обратите внимание, что это относится только к обычным меню. Сгенерированные всплывающие меню никогда не имеют элементов всплывающего меню.
Параметры
manager | объект GtkUIManager | |
add_tearoffs | добавлять ли элементы всплывающего меню |
С версии: 2.4
gtk_ui_manager_get_add_tearoffs ()
gboolean
gtk_ui_manager_get_add_tearoffs (GtkUIManager *manager); gtk_ui_manager_get_add_tearoffs устарела с версии 3.4 и не должна использоваться в новых кодах.
Всплывающие меню устарели и не должны использоваться в новых кодах.
Возвращает, будут ли меню, сгенерированные этим GtkUIManager, содержать элементы всплывающего меню.
Параметры
manager | объект GtkUIManager |
Возвращает
добавлять ли элементы всплывающего меню
С версии: 2.4
gtk_ui_manager_insert_action_group ()
void gtk_ui_manager_insert_action_group (GtkUIManager *manager,GtkActionGroup *action_group,gint pos);
gtk_ui_manager_insert_action_group устарела с версии 3.10 и не должна использоваться в новых кодах.
Вставляет группу действий в список групп действий, связанных с manager. Действия в более ранних группах скрывают действия с тем же именем в более поздних группах.
Если pos больше, чем количество групп действий в manager, или отрицательно, action_group будет вставлено в конец внутреннего списка.
Параметры
manager | объект GtkUIManager | |
action_group | группа действий, которая будет вставлена | |
pos | позиция, в которую будет вставлена группа. |
С версии: 2.4
gtk_ui_manager_remove_action_group ()
void gtk_ui_manager_remove_action_group (GtkUIManager *manager,GtkActionGroup *action_group);
gtk_ui_manager_remove_action_group устарела с версии 3.10 и не должна использоваться в новых кодах.
Удаляет группу действий из списка групп действий, связанных с manager.
Параметры
manager | объект GtkUIManager | |
action_group | группа действий, которая будет удалена |
С версии: 2.4
gtk_ui_manager_get_action_groups ()
GList *
gtk_ui_manager_get_action_groups (GtkUIManager *manager); gtk_ui_manager_get_action_groups устарела с версии 3.10 и не должна использоваться в новых кодах.
Возвращает список групп действий, связанных с manager.
Параметры
manager | объект GtkUIManager |
Возвращает
список GList групп действий. Список принадлежит GTK+ и его нельзя изменять.
[element-type GtkActionGroup][transfer none]
С версии: 2.4
gtk_ui_manager_get_accel_group ()
GtkAccelGroup *
gtk_ui_manager_get_accel_group (GtkUIManager *manager); gtk_ui_manager_get_accel_group устарела с версии 3.10 и не должна использоваться в новых кодах.
Возвращает GtkAccelGroup, связанный с manager.
Параметры
manager | объект GtkUIManager |
С версии: 2.4
gtk_ui_manager_get_widget ()
GtkWidget * gtk_ui_manager_get_widget (GtkUIManager *manager,const gchar *path);
gtk_ui_manager_get_widget устарела с версии 3.10 и не должна использоваться в новых кодах.
Ищет виджет, следуя пути. Путь состоит из имён, указанных в XML-описании пользовательского интерфейса, разделённых «/». Элементы, у которых нет имени или атрибута действия в XML (например, <popup>), могут быть адресованы по имени элемента XML (например, «popup»). Корневой элемент («/ui») может быть опущен в пути.
Обратите внимание, что виджет, найденный по пути, заканчивающемуся элементом <menu>, является элементом меню, к которому прикреплено меню, а не меню, которое он управляет.
Также обратите внимание, что виджеты, созданные менеджером пользовательского интерфейса, не привязаны к жизненному циклу менеджера пользовательского интерфейса. Если вы добавляете виджеты, возвращённые этой функцией, в какой-либо контейнер или явно ссылаетесь на них, они сохранятся после уничтожения менеджера пользовательского интерфейса.
Параметры
manager | объект GtkUIManager | |
path | путь |
Возвращает
виджет, найденный по пути, или NULL если виджет не был найден.
[transfer none]
С версии: 2.4
gtk_ui_manager_get_toplevels ()
GSList * gtk_ui_manager_get_toplevels (GtkUIManager *manager,GtkUIManagerItemType types);
gtk_ui_manager_get_toplevels устарела с версии 3.10 и не должна использоваться в новых кодах.
Получает список всех виджетов верхнего уровня указанных типов.
Параметры
manager | объект GtkUIManager | |
types | указывают типы виджетов верхнего уровня для включения. Разрешенные типы — GTK_UI_MANAGER_MENUBAR, GTK_UI_MANAGER_TOOLBAR и GTK_UI_MANAGER_POPUP. |
Возвращает
новый выделенный GSList всех виджетов верхнего уровня указанных типов. Освободите возвращённый список с помощью g_slist_free().
[element-type GtkWidget][transfer container]
С версии: 2.4
gtk_ui_manager_get_action ()
GtkAction * gtk_ui_manager_get_action (GtkUIManager *manager,const gchar *path);
gtk_ui_manager_get_action было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Ищет действие, следуя пути. Смотрите gtk_ui_manager_get_widget() для получения дополнительной информации о путях.
Параметры
manager | ||
path | путь |
Возвращаемое значение
действие, чья дочерняя виждет найдена по пути, или NULL если ни один элемент не был найден.
[transfer none]
С: 2.4
gtk_ui_manager_add_ui_from_resource ()
guint gtk_ui_manager_add_ui_from_resource (GtkUIManager *manager,const gchar *resource_path,GError **error);
gtk_ui_manager_add_ui_from_resource было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Парсит файл ресурса, содержащий определение пользовательского интерфейса (определение UI) и объединяет его с текущим содержимым manager .
Параметры
manager | объект GtkUIManager | |
resource_path | путь к файлу ресурса для парсинга | |
error | место для возврата ошибки |
Возвращаемое значение
Идентификатор объединения для объединенного UI. Идентификатор объединения можно использовать для разрыва объединения с помощью gtk_ui_manager_remove_ui(). Если произошла ошибка, возвращаемое значение — 0.
С: 3.4
gtk_ui_manager_add_ui_from_string ()
guint gtk_ui_manager_add_ui_from_string (GtkUIManager *manager,const gchar *buffer,gssize length,GError **error);
gtk_ui_manager_add_ui_from_string было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Парсит строку, содержащую определение пользовательского интерфейса (определение UI) и объединяет его с текущим содержимым manager . Добавляется окружающий элемент <ui>, если он отсутствует.
Параметры
manager | объект GtkUIManager | |
buffer | строка для парсинга | |
length | длина | |
error | место для возврата ошибки |
Возвращаемое значение
Идентификатор объединения для объединенного UI. Идентификатор объединения можно использовать для разрыва объединения с помощью gtk_ui_manager_remove_ui(). Если произошла ошибка, возвращаемое значение — 0.
С: 2.4
gtk_ui_manager_add_ui_from_file ()
guint gtk_ui_manager_add_ui_from_file (GtkUIManager *manager,const gchar *filename,GError **error);
gtk_ui_manager_add_ui_from_file было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Парсит файл, содержащий определение пользовательского интерфейса (определение UI) и объединяет его с текущим содержимым manager .
Параметры
manager | объект GtkUIManager | |
filename | имя файла для парсинга. | [type filename] |
error | место для возврата ошибки |
Возвращаемое значение
Идентификатор объединения для объединенного UI. Идентификатор объединения можно использовать для разрыва объединения с помощью gtk_ui_manager_remove_ui(). Если произошла ошибка, возвращаемое значение — 0.
С: 2.4
gtk_ui_manager_new_merge_id ()
guint
gtk_ui_manager_new_merge_id (GtkUIManager *manager); gtk_ui_manager_new_merge_id было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Возвращает неиспользуемый идентификатор объединения, подходящий для использования с gtk_ui_manager_add_ui().
Параметры
manager |
Возвращаемое значение
неиспользуемый идентификатор объединения.
С: 2.4
gtk_ui_manager_add_ui ()
void gtk_ui_manager_add_ui (GtkUIManager *manager,guint merge_id,const gchar *path,const gchar *name,const gchar *action,GtkUIManagerItemType type,gboolean top);
gtk_ui_manager_add_ui было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Добавляет элемент UI в текущее содержимое manager .
Если type равен GTK_UI_MANAGER_AUTO, GTK+ вставляет пункт меню, элемент панели инструментов или разделитель, если такой элемент может быть вставлен в место, определяемое path . В противном случае type должен указывать элемент, который можно вставить в место, определяемое path .
Если path указывает на пункт меню или элемент панели инструментов, новый элемент будет вставлен перед или после этого элемента, в зависимости от top .
Параметры
manager | ||
merge_id | идентификатор объединения для объединённого UI, см. | |
path | путь | |
name | имя добавляемого элемента UI | |
action | имя действия для проксирования, или | [allow-none] |
type | тип добавляемого элемента UI. | |
top | если |
С: 2.4
gtk_ui_manager_remove_ui ()
void gtk_ui_manager_remove_ui (GtkUIManager *manager,guint merge_id);
gtk_ui_manager_remove_ui было устаревшим с версии 3.10 и не должно использоваться в новых кодах.
Разрывает часть содержимого manager , определённую по merge_id .
Параметры
manager | объект GtkUIManager | |
merge_id | идентификатор объединения, возвращённый |
С: 2.4
gtk_ui_manager_get_ui ()
gchar *
gtk_ui_manager_get_ui (GtkUIManager *manager); gtk_ui_manager_get_ui устарел начиная с версии 3.10 и не должен использоваться в новых кодах.
Создаёт определение пользовательского интерфейса (UI) объединённого UI.
Параметры
manager |
Возвращаемое значение
Новую строку, содержащую XML-представление объединённого UI.
С: 2.4
gtk_ui_manager_ensure_update ()
void
gtk_ui_manager_ensure_update (GtkUIManager *manager); gtk_ui_manager_ensure_update устарел начиная с версии 3.10 и не должен использоваться в новых кодах.
Обеспечивает завершение всех ожидающих обновлений UI.
Это может быть иногда необходимо, так как GtkUIManager обновляет UI в функции обработки событий. Типичный пример использования этой функции — обеспечение добавления меню и панели инструментов в главное окно перед его отображением:
<!ELEMENT ui (menubar|toolbar|popup|accelerator)* >
<!ELEMENT menubar (menuitem|separator|placeholder|menu)* >
<!ELEMENT menu (menuitem|separator|placeholder|menu)* >
<!ELEMENT popup (menuitem|separator|placeholder|menu)* >
<!ELEMENT toolbar (toolitem|separator|placeholder)* >
<!ELEMENT placeholder (menuitem|toolitem|separator|placeholder|menu)* >
<!ELEMENT menuitem EMPTY >
<!ELEMENT toolitem (menu?) >
<!ELEMENT separator EMPTY >
<!ELEMENT accelerator EMPTY >
<!ATTLIST menubar name #IMPLIED
action #IMPLIED >
<!ATTLIST toolbar name #IMPLIED
action #IMPLIED >
<!ATTLIST popup name #IMPLIED
action #IMPLIED
accelerators (true|false) #IMPLIED >
<!ATTLIST placeholder name #IMPLIED
action #IMPLIED >
<!ATTLIST separator name #IMPLIED
action #IMPLIED
expand (true|false) #IMPLIED >
<!ATTLIST menu name #IMPLIED
action #REQUIRED
position (top|bot) #IMPLIED >
<!ATTLIST menuitem name #IMPLIED
action #REQUIRED
position (top|bot) #IMPLIED
always-show-image (true|false) #IMPLIED >
<!ATTLIST toolitem name #IMPLIED
action #REQUIRED
position (top|bot) #IMPLIED >
<!ATTLIST accelerator name #IMPLIED
action #REQUIRED >Параметры
manager |
С: 2.4
Типы и значения
struct GtkUIManager
struct GtkUIManager;
перечисление GtkUIManagerItemType
GtkUIManagerItemType устарел начиная с версии 3.10 и не должен использоваться в новых кодах.
Эти значения перечисления используются функцией gtk_ui_manager_add_ui() для определения элемента UI, который нужно создать.
Элементы
GTK_UI_MANAGER_AUTO | Выбор типа элемента UI в зависимости от контекста. | |
GTK_UI_MANAGER_MENUBAR | Создание панели меню. | |
GTK_UI_MANAGER_MENU | Создание меню. | |
GTK_UI_MANAGER_TOOLBAR | Создание панели инструментов. | |
GTK_UI_MANAGER_PLACEHOLDER | Вставка заполнителя. | |
GTK_UI_MANAGER_POPUP | Создание всплывающего меню. | |
GTK_UI_MANAGER_MENUITEM | Создание пункта меню. | |
GTK_UI_MANAGER_TOOLITEM | Создание пункта панели инструментов. | |
GTK_UI_MANAGER_SEPARATOR | Создание разделителя. | |
GTK_UI_MANAGER_ACCELERATOR | Установка ускорителя. | |
GTK_UI_MANAGER_POPUP_WITH_ACCELS | Аналогично |
Подробное описание свойств
Свойство “add-tearoffs”
“add-tearoffs” gboolean
Свойство "add-tearoffs" управляет отображением пунктов меню разрыва в сгенерированных меню.
Обратите внимание, что это влияет только на обычные меню. В сгенерированных всплывающих меню пунктов меню разрыва нет.
GtkUIManager:add-tearoffs устарел начиная с версии 3.4 и не должен использоваться в новых кодах.
Меню разрыва устарели и не должны использоваться в новых кодах.
Владелец: GtkUIManager
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С: 2.4
Свойство “ui”
“ui” char *
Строка XML, описывающая объединённый UI.
Владелец: GtkUIManager
Флаги: Чтение
Значение по умолчанию: "<ui>\n</ui>\n"
Подробности сигналов
Сигнал “actions-changed”
void user_function (GtkUIManager *manager, gpointer user_data)
Сигнал ::actions-changed генерируется всякий раз, когда изменяется набор действий.
Сигнал GtkUIManager::actions-changed устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Параметры
менеджер | объект GtkUIManager | |
данные_пользователя | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Без рекурсии
С версии: 2.4
Сигнал “add-widget”
void user_function (GtkUIManager *manager, GtkWidget *widget, gpointer user_data)
Сигнал ::add-widget генерируется для каждого сгенерированного меню и панели инструментов. Он не генерируется для сгенерированных всплывающих меню, которые можно получить с помощью gtk_ui_manager_get_widget().
Сигнал GtkUIManager::add-widget устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Параметры
менеджер | объект GtkUIManager | |
виджет | добавляемый виджет | |
данные_пользователя | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Без рекурсии
С версии: 2.4
Сигнал “connect-proxy”
void user_function (GtkUIManager *manager, GtkAction *action, GtkWidget *proxy, gpointer user_data)
Сигнал ::connect-proxy генерируется после подключения прокси к действию в группе.
Он предназначен для простых кастомизаций, для которых использование пользовательского класса действий было бы слишком громоздко, например, для отображения всплывающих подсказок для пунктов меню в строке состояния.
Сигнал GtkUIManager::connect-proxy устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Параметры
менеджер | менеджер интерфейса | |
действие | действие | |
прокси | прокси | |
данные_пользователя | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Без рекурсии
С версии: 2.4
Сигнал “disconnect-proxy”
void user_function (GtkUIManager *manager, GtkAction *action, GtkWidget *proxy, gpointer user_data)
Сигнал ::disconnect-proxy генерируется после отключения прокси от действия в группе.
Сигнал GtkUIManager::disconnect-proxy устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Параметры
менеджер | менеджер интерфейса | |
действие | действие | |
прокси | прокси | |
данные_пользователя | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Без рекурсии
С версии: 2.4
Сигнал “post-activate”
void user_function (GtkUIManager *manager, GtkAction *action, gpointer user_data)
Сигнал ::post-activate генерируется сразу после активации action.
Он предназначен для того, чтобы приложения получали уведомление сразу после активации любого действия.
Сигнал GtkUIManager::post-activate устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Параметры
менеджер | менеджер интерфейса | |
действие | действие | |
данные_пользователя | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Без рекурсии
С версии: 2.4
Сигнал “pre-activate”
void user_function (GtkUIManager *manager, GtkAction *action, gpointer user_data)
Сигнал ::pre-activate генерируется непосредственно перед активацией action.
Он предназначен для того, чтобы приложения получали уведомление непосредственно перед активацией любого действия.
Сигнал GtkUIManager::pre-activate устарел начиная с версии 3.10 и не должен использоваться в новом коде.
Параметры
менеджер | менеджер интерфейса | |
действие | действие | |
данные_пользователя | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Без рекурсии
С версии: 2.4
См. также
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkUIManager.html