Spec-Zone.ru › GTK 4.0

Обзор действий в GTK

Основы действий
Состояние и параметры действия
Области действия
Группы и карты действий
Подключение действий к виджетам
Активация
Встроенные действия

В этой главе подробно описано, как GTK использует действия для подключения активируемых элементов пользовательского интерфейса к обработчикам событий. GTK наследует базовую архитектуру GAction и GMenu для описания абстрактных действий и меню из библиотеки GIO.

GAction — это, по сути, способ сообщить инструменту о функции в вашей программе и присвоить ей имя.

Действия являются чисто функциональными. Они не содержат никакой информационной информации о представлении.

Действию присвоены четыре значения:

  • имя в качестве идентификатора (обычно строка на английском языке, в нижнем регистре, не требующая перевода)

  • флаг активности, указывающий, можно ли активировать действие (как свойство «чувствительность» у виджетов)

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

  • необязательный тип параметра, используемый при активации действия

Действие поддерживает две операции. Вы можете активировать его, передав параметр правильного типа. И вы можете запросить изменение состояния действия (для состоятельных действий) на новое значение правильного типа.

Вот некоторые правила для действий:

  • имя неизменяемо (в том смысле, что оно никогда не изменится) и никогда не NULL

  • флаг активности может меняться

  • тип параметра неизменяем

  • тип параметра является необязательным: он может быть NULL

  • если тип параметра NULL, то активация действия должна выполняться без параметра (т.е. указатель GVariant NULL)

  • если тип параметра не NULL, то параметр должен иметь этот тип

  • состояние может изменяться, но не тип

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

  • если действие было без состояния при его создании, оно никогда не может иметь состояния

  • вы можете запросить изменение состояния только для состоятельных действий, и это возможно только для изменения состояния на значение того же типа, что и существующее состояние

Действие не имеет никакой информации о представлении, такой как метка, значок или способ создания виджета из него.

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

Spec-Zone.ru

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