GtkShortcutAction
GtkShortcutAction — Отслеживание, следует ли активировать ярлыки
Функции
| gboolean | (*GtkShortcutFunc) () |
| char * | gtk_shortcut_action_to_string () |
| void | gtk_shortcut_action_print () |
| GtkShortcutAction * | gtk_shortcut_action_parse_string () |
| gboolean | gtk_shortcut_action_activate () |
| GtkShortcutAction * | gtk_nothing_action_get () |
| GtkShortcutAction * | gtk_callback_action_new () |
| GtkShortcutAction * | gtk_mnemonic_action_get () |
| GtkShortcutAction * | gtk_activate_action_get () |
| GtkShortcutAction * | gtk_signal_action_new () |
| const char * | gtk_signal_action_get_signal_name () |
| GtkShortcutAction * | gtk_named_action_new () |
| const char * | gtk_named_action_get_action_name () |
Типы и значения
Иерархия объектов
GObject
╰── GtkShortcutAction
├── GtkSignalAction
├── GtkNothingAction
├── GtkNamedAction
╰── GtkCallbackAction
Включаемые файлы
#include <gtk/gtk.h>
Описание
GtkShortcutAction — это объект, описывающий, что должен сделать GtkShortcut, когда он будет нажат. Для ручного активации GtkShortcutAction можно вызвать gtk_shortcut_action_activate().
GtkShortcutActions содержат функции, которые позволяют легко отображать их для конечных пользователей, а также печатать для отладки.
Все GtkShortcutActions неизменяемы, вы можете указать их свойства только во время создания. Если вы хотите изменить действие, вам нужно заменить его новым. Если вам нужно передать аргументы действию, они указываются объектом GtkShortcut более высокого уровня.
GTK предоставляет различные действия:
GtkMnemonicAction: действие ярлыка, которое вызывает
gtk_widget_mnemonic_activate()GtkCallbackAction: действие ярлыка, которое вызывает указанный обратный вызов
GtkSignalAction: действие ярлыка, которое отправляет заданный сигнал
GtkActivateAction: действие ярлыка, которое вызывает
gtk_widget_activate()GtkNamedAction: действие ярлыка, которое вызывает
gtk_widget_activate_action()GtkNothingAction: действие ярлыка, которое ничего не делает
GtkShortcutAction как GtkBuildable
GtkShortcut
Функции
GtkShortcutFunc ()
gboolean (*GtkShortcutFunc) (GtkWidget *widget,GVariant *args,gpointer user_data);
Прототип для ярлыков на основе пользовательских обратных вызовов.
Параметры
widget | Виджет, переданный при активации. | |
args | Аргументы, переданные при активации. | [nullable] |
user_data | Пользовательские данные, предоставленные при активации действия. | [nullable] |
gtk_shortcut_action_to_string ()
char *
gtk_shortcut_action_to_string (GtkShortcutAction *self); Выводит заданное действие в удобочитаемую строку. Это небольшой обертка вокруг gtk_shortcut_action_print(), которая помогает при отладке.
Параметры
self | структура GtkShortcutAction |
Возвращает
новую строку.
[transfer full]
gtk_shortcut_action_print ()
void gtk_shortcut_action_print (GtkShortcutAction *self,GString *string);
Выводит заданное действие в строку для разработчика. Предназначено для отладки и ведения логов.
Формат представления может измениться в любое время и не гарантируется, что он останется идентичным.
Параметры
self | структура GtkShortcutAction | |
string | строка GString для вывода |
gtk_shortcut_action_parse_string ()
GtkShortcutAction *
gtk_shortcut_action_parse_string (const char *string); Пытается разобрать заданную строку в действие. При успехе возвращается проанализированное действие. При неудачном разборе возвращается NULL.
Разрешенные строки:
nothing, для GtkNothingActionactivate, для GtkActivateActionmnemonic-activate, для GtkMnemonicActionaction(NAME), для GtkNamedAction с именем действияNAMEsignal(NAME), для GtkSignalAction для сигналаNAME
[constructor]
Параметры
string | строка для разбора |
gtk_shortcut_action_activate ()
gboolean gtk_shortcut_action_activate (GtkShortcutAction *self,GtkShortcutActionFlags flags,GtkWidget *widget,GVariant *args);
Активирует действие на widget с заданными args .
Обратите внимание, что некоторые действия игнорируют переданные flags , widget или args .
Активация действия может завершиться неудачей по разным причинам. Если действие не поддерживается widget , если args не соответствуют действию или если активация не привела к эффекту, будет возвращено FALSE.
Параметры
self | структура GtkShortcutAction | |
flags | флаги для активации | |
widget | Цель активации | |
args | аргументы для передачи. | [allow-none] |
Возвращает
TRUE если это действие было успешно активировано
gtk_nothing_action_get ()
GtkShortcutAction *
gtk_nothing_action_get (void); Получает действие «ничего». Это действие, которое ничего не делает, и его активация всегда завершается неудачей.
Возвращает
действие «ничего».
[transfer none][type GtkNothingAction]
gtk_callback_action_new ()
GtkShortcutAction * gtk_callback_action_new (GtkShortcutFunc callback,gpointer data,GDestroyNotify destroy);
Создаёт пользовательское действие, которое вызывает заданный callback при активации.
Параметры
callback | обратный вызов для вызова. | [scope notified] |
data | данные, которые будут переданы в | [closure callback] |
destroy | функция, которая будет вызвана при завершении действия обратного вызова. | [destroy data] |
Возвращает
Новое действие ярлыка.
[transfer full][type GtkCallbackAction]
gtk_mnemonic_action_get ()
GtkShortcutAction *
gtk_mnemonic_action_get (void); Получает действие «мнемоника». Это действие, которое вызывает gtk_widget_mnemonic_activate() на заданном виджете при активации.
Возвращает
Действие «мнемоника».
[transfer none][type GtkMnemonicAction]
gtk_activate_action_get ()
GtkShortcutAction *
gtk_activate_action_get (void); Получает действие «активировать». Это действие, которое вызывает gtk_widget_activate() на заданном виджете при активации.
Возвращает
Действие «активировать».
[transfer none][type GtkActivateAction]
gtk_signal_action_new ()
GtkShortcutAction *
gtk_signal_action_new (const char *signal_name); Создаёт действие, которое при активации вызывает указанный сигнал действия на заданном виджете, распаковывая переданные аргументы в аргументы, передаваемые сигналу.
Параметры
signal_name | имя сигнала для вызова |
gtk_signal_action_get_signal_name ()
const char *
gtk_signal_action_get_signal_name (GtkSignalAction *self); Возвращает имя сигнала, который будет вызван.
Параметры
self | действие сигнала |
Возвращаемое значение
имя сигнала для вызова.
[transfer none]
gtk_named_action_new ()
GtkShortcutAction *
gtk_named_action_new (const char *name); Создаёт действие, которое при активации активирует действие, заданное в name, на виджете, передавая ему переданные аргументы.
См. gtk_widget_insert_action_group(), чтобы добавить действия к виджетам.
Параметры
name | подробное имя действия |
gtk_named_action_get_action_name ()
const char *
gtk_named_action_get_action_name (GtkNamedAction *self); Возвращает имя действия, которое будет активировано.
Параметры
self | действие с именем |
Возвращаемое значение
имя активируемого действия
Типы и значения
GtkShortcutAction
typedef struct _GtkShortcutAction GtkShortcutAction;
перечисление GtkShortcutActionFlags
Список флагов, которые могут быть переданы при активации действия. В будущем могут быть добавлены другие флаги.
Члены
GTK_SHORTCUT_ACTION_EXCLUSIVE | Действие является единственным действием, которое может быть активировано. Если этот флаг не установлен, будущая активация может выбрать другое действие. |
GtkNothingAction
typedef struct _GtkNothingAction GtkNothingAction;
A GtkShortcutAction, который ничего не делает.
GtkCallbackAction
typedef struct _GtkCallbackAction GtkCallbackAction;
A GtkShortcutAction, который вызывает обратный вызов.
GtkMnemonicAction
typedef struct _GtkMnemonicAction GtkMnemonicAction;
A GtkShortcutAction, который вызывает gtk_widget_mnemonic_activate().
GtkActivateAction
typedef struct _GtkActivateAction GtkActivateAction;
A GtkShortcutAction, который вызывает gtk_widget_activate().
GtkSignalAction
typedef struct _GtkSignalAction GtkSignalAction;
A GtkShortcutAction, который вызывает сигнал.
Сигналы, используемые таким образом, называются сигналами привязки клавиш, и ожидается, что они будут определены с флагом G_SIGNAL_ACTION.
GtkNamedAction
typedef struct _GtkNamedAction GtkNamedAction;
A GtkShortcutAction, который активирует действие по имени.
См. также
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer-old.gnome.org/gtk4/4.0/GtkShortcutAction.html