краткое описание#include <gtk/gtk.h> gtkaction; gtkaction* gtk_action_new (const gchar *name, const gchar *label, const gchar *tooltip, const gchar *stock_id); const gchar* gtk_action_get_name (gtkaction *action); gboolean gtk_action_is_sensitive (gtkaction *action); gboolean gtk_action_get_sensitive (gtkaction *action); void gtk_action_set_sensitive (gtkaction *action, gboolean sensitive); gboolean gtk_action_is_visible (gtkaction *action); gboolean gtk_action_get_visible (gtkaction *action); void gtk_action_set_visible (gtkaction *action, gboolean visible); void gtk_action_activate (gtkaction *action); gtkwidget* gtk_action_create_icon (gtkaction *action, gtkiconsize icon_size); gtkwidget* gtk_action_create_menu_item (gtkaction *action); gtkwidget* gtk_action_create_tool_item (gtkaction *action); void gtk_action_connect_proxy (gtkaction *action, gtkwidget *proxy); void gtk_action_disconnect_proxy (gtkaction *action, gtkwidget *proxy); gslist* gtk_action_get_proxies (gtkaction *action); void gtk_action_connect_accelerator (gtkaction *action); void gtk_action_disconnect_accelerator (gtkaction *action); void gtk_action_block_activate_from (gtkaction *action, gtkwidget *proxy); void gtk_action_unblock_activate_from (gtkaction *action, gtkwidget *proxy); const gchar* gtk_action_get_accel_path (gtkaction *action); void gtk_action_set_accel_path (gtkaction *action, const gchar *accel_path); gclosure* gtk_action_get_accel_closure (gtkaction *action); void gtk_action_set_accel_group (gtkaction *action, gtkaccelgroup *accel_group); иерархия объектовgobject +----gtkaction +----gtktoggleaction свойства"action-group" gtkactiongroup : read / write "hide-if-empty" gboolean : read / write "is-important" gboolean : read / write "label" gchararray : read / write "name" gchararray : read / write / construct only "sensitive" gboolean : read / write "short-label" gchararray : read / write "stock-id" gchararray : read / write "tooltip" gchararray : read / write "visible" gboolean : read / write "visible-horizontal" gboolean : read / write "visible-overflown" gboolean : read / write "visible-vertical" gboolean : read / write сигналы"activate" void user_function (gtkaction *action, gpointer user_data) : run first / no recursion описаниедействия представляют операции которые может выполнять пользователь, вместе с небольшой информацией о том как это должно быть представлено в интерфейсе. каждое действие обеспечивает метод создания значков, пункты меню и пункты панели инструментов представляют себя сами. так же как callback-функция которая вызывается когда действие активировано, нижеследующее тоже связано с действием:
действие также имеет некоторую информацию о состоянии:
кроме обычных действий, есть toggle actions, которые могут переключаться между двумя состояниями и radio actions, когда только одно действие из группы может быть в состоянии "active". другие действия могут осуществляеться как подкласс gtkaction. каждое действие может иметь один или больше уполномоченных пунктов меню, кнопок панели инструментов или других уполномоченных виджетов. полномочия отражают состояние действия (текстовый ярлык, подсказка, значок, видимость, чувствительность, и т.д.), и должны изменяться когда меняется состояние действия. когда активизируется полномочие, активизируется и его действие. деталиgtkactiontypedef struct _gtkaction gtkaction; gtkaction структура содержит только закрытые данные к которым нет непосредственного доступа. gtk_action_new ()gtkaction* gtk_action_new (const gchar *name, const gchar *label, const gchar *tooltip, const gchar *stock_id); создаёт новый объект gtkaction. для добавления действия к gtkactiongroup и установки акселератора для действия, вызовите gtk_action_group_add_action_with_accel(). смотрите the section called “ui definitions” для информации о доступных именах действий.
начиная с версии 2.4 gtk_action_get_name ()const gchar* gtk_action_get_name (gtkaction *action); возвращает имя действия.
начиная с версии 2.4 gtk_action_is_sensitive ()gboolean gtk_action_is_sensitive (gtkaction *action); возвращает фактическую чувствительность действия.
начиная с версии 2.4 gtk_action_get_sensitive ()gboolean gtk_action_get_sensitive (gtkaction *action); возвращает чувствительно ли само действие. помните это не означает фактическую чувствительность. смотрите gtk_action_is_sensitive().
начиная с версии 2.4 gtk_action_set_sensitive ()void gtk_action_set_sensitive (gtkaction *action, gboolean sensitive); устанавливает ::sensitive свойство для действия в значение sensitive. помните это не означает фактическую чувствительность. смотрите gtk_action_is_sensitive().
начиная с версии 2.6 gtk_action_is_visible ()gboolean gtk_action_is_visible (gtkaction *action); возвращает фактическую видимость действия.
начиная с версии 2.4 gtk_action_get_visible ()gboolean gtk_action_get_visible (gtkaction *action); возвращает видимо ли само действие. помните это не означает фактическую видимость. смотрите gtk_action_is_sensitive().
начиная с версии 2.4 gtk_action_set_visible ()void gtk_action_set_visible (gtkaction *action, gboolean visible); устанавливает ::visible свойство действия в visible. помните это не означает фактическую видимость. смотрите gtk_action_is_visible().
начиная с версии 2.6 gtk_action_activate ()void gtk_action_activate (gtkaction *action); издаёт сигнал "activate" на определенном действии, если оно чувствительно. эту функцию вызывают полномочные виджеты при активации. эта функция также может использоваться для самостоятельной активации действия.
начиная с версии 2.4 gtk_action_create_icon ()gtkwidget* gtk_action_create_icon (gtkaction *action, gtkiconsize icon_size); эта функция предназначена для использования осуществляемыми действиями для создания значков отображаемых в полномочных виджетах.
начиная с версии 2.4 gtk_action_create_menu_item ()gtkwidget* gtk_action_create_menu_item (gtkaction *action); создаёт полномочные виджеты пунктов меню для данного действия.
начиная с версии 2.4 gtk_action_create_tool_item ()gtkwidget* gtk_action_create_tool_item (gtkaction *action); создаёт полномочные виджеты пунктов панели инструментов для данного действия.
начиная с версии 2.4 gtk_action_connect_proxy ()void gtk_action_connect_proxy (gtkaction *action, gtkwidget *proxy); подключает виджет к объекту действия как уполномоченный. синхронизирует различные свойства действия с виджетом (такие как текстовый ярлык, значок, подсказка, и т.д.), и присоединяет callback-функцию, чтобы действие активизировалось вместе с полномочным виджетом. если виджет уже подключен к действию, эта функция сначала отключает его.
начиная с версии 2.4 gtk_action_disconnect_proxy ()void gtk_action_disconnect_proxy (gtkaction *action, gtkwidget *proxy); отключает уполномоченный виджет от действия. но не разрушает виджет.
начиная с версии 2.4 gtk_action_get_proxies ()gslist* gtk_action_get_proxies (gtkaction *action); возвращает уполномоченные виджеты для действия.
начиная с версии 2.4 gtk_action_connect_accelerator ()void gtk_action_connect_accelerator (gtkaction *action); устанавливает акселератор для action если action имеет путь акселератора и группу. смотрите gtk_action_set_accel_path() и gtk_action_set_accel_group() так как множественные полномочия могут независимо вызывать установку акселераторов, action подсчитывает число вызовов функции и не удаляет акселератор пока gtk_action_disconnect_accelerator() не вызовется такое же количество раз.
начиная с версии 2.4 gtk_action_disconnect_accelerator ()void gtk_action_disconnect_accelerator (gtkaction *action); уничтожает эффект от вызова gtk_action_connect_accelerator().
начиная с версии 2.4 gtk_action_block_activate_from ()void gtk_action_block_activate_from (gtkaction *action, gtkwidget *proxy); отключает вызов сигналами функции gtk_action_activate() на данном полномочном виджете. это используется для остановки цикличного уведомления для выборочных действий или радио действий. эта функция предназначена для использования осуществляемым действием.
начиная с версии 2.4 gtk_action_unblock_activate_from ()void gtk_action_unblock_activate_from (gtkaction *action, gtkwidget *proxy); включает вызов функции gtk_action_activate() по сигналу на уполномоченном виджете. это отменяет блокировку установленную gtk_action_block_activate_from(). эта функция предназначена для использования осуществляемым действием.
начиная с версии 2.4 gtk_action_get_accel_path ()const gchar* gtk_action_get_accel_path (gtkaction *action); возвращает путь акселератора для этого действия.
начиная с версии 2.6 gtk_action_set_accel_path ()void gtk_action_set_accel_path (gtkaction *action, const gchar *accel_path); устанавливает путь акселератора для данного действия. все уполномоченный виджеты связанные с этим действием будут иметь этот путь, так чтобы их акселераторы были совместимы.
начиная с версии 2.4 gtk_action_get_accel_closure ()gclosure* gtk_action_get_accel_closure (gtkaction *action); возвращает завершённый акселератор для этого действия.
начиная с версии 2.8 gtk_action_set_accel_group ()void gtk_action_set_accel_group (gtkaction *action, gtkaccelgroup *accel_group); устанавливает gtkaccelgroup в которую будет установлен акселератор для определённого действия.
начиная с версии 2.4 детали свойствсвойство "action-group""action-group" gtkactiongroup : read / write gtkactiongroup с которым связан этот gtkaction, или null (для внутреннего использования). свойство "hide-if-empty""hide-if-empty" gboolean : read / write если true, пустое меню уполномоченное для этого действия будет скрыто. значение по умолчанию: true свойство "is-important""is-important" gboolean : read / write считается ли действие важным. если true, инструментальный пункт уполномоченный для этого действия показывает текст в режиме gtk_toolbar_both_horiz. значение по умолчанию: false свойство "label""label" gchararray : read / write ярлык используемый для пунктов меню и кнопок которые активизируют определенное действие. значение по умолчанию: null свойство "name""name" gchararray : read / write / construct only уникальное имя для действия. значение по умолчанию: null свойство "sensitive""sensitive" gboolean : read / write чувствительность действия. значение по умолчанию: true свойство "short-label""short-label" gchararray : read / write короткий ярлык который может использоваться на кнопках инструментальной панели. значение по умолчанию: null свойство "stock-id""stock-id" gchararray : read / write заготовленный значок отображаемый в виджете представляющем действие. значение по умолчанию: null свойство "tooltip""tooltip" gchararray : read / write подсказка для данного действия. значение по умолчанию: null свойство "visible""visible" gboolean : read / write режим видимости действия. значение по умолчанию: true свойство "visible-horizontal""visible-horizontal" gboolean : read / write должны ли пункты панели инструментов быть видимыми при горизонтальной ориентации панели. значение по умолчанию: true свойство "visible-overflown""visible-overflown" gboolean : read / write когда true, уполномоченные инструментальные пункты (toolitem) для данного действия представлены в меню переполнения данной панели инструментов. значение по умолчанию: true начиная с версии 2.6 свойство "visible-vertical""visible-vertical" gboolean : read / write видимы ли пункты панели инструментов при вертикальной ориентации. значение по умолчанию: true детали сигналовсигнал "activate"void user_function (gtkaction *action, gpointer user_data) : run first / no recursion сигнал "activate" издаётся когда активируется действие.
начиная с версии 2.4 смотрите также |