Package: gtk
Class gtk-action-group
Superclassesgtk-buildable, g-object, common-lisp:standard-object, common-lisp:t Documented Subclasses
None
Direct SlotsDetails
Actions are organised into groups. An action group is essentially a map from names to gtk-action objects. All actions that would make sense to use in a particular context should be in a single group. Multiple action groups may be used for a particular user interface. In fact, it is expected that most nontrivial applications will make use of multiple groups. For example, in an application that can edit multiple documents, one group holding global actions, e.g. Quit, About, New, and one group per document holding actions that act on that document, e.g. Save, Cut, Copy, Paste. Each of the menus of the window would be constructed from a combination of two action groups. AcceleratorsAccelerators are handled by the GTK accelerator map. All actions are assigned an accelerator path, which normally has the form <Actions>/group-name/action-name, and a shortcut is associated with this accelerator path. All menuitems and toolitems take on this accelerator path. The GTK accelerator map code makes sure that the correct shortcut is displayed next to the menu item.WarningGtkActionGroup as GtkBuildableNote that it is probably more common to define actions and action groups in the code, since they are directly related to what the code can do. The gtk-action-group implementation of the gtk-buildable interface supports a custom <accelerator> element, which has attributes named key and modifiers and allows to specify accelerators. This is similar to the <accelerator> element of a gtk-widget object, the main difference is that it does not allow you to specify a signal. Example: A gtk-action-group UI definition fragment. <object class="GtkActionGroup" id="actiongroup"> <child> <object class="GtkAction" id="About"> <property name="name">About</property> <property name="stock_id">gtk-about</property> <signal handler="about_activate" name="activate"/> </object> <accelerator key="F1" modifiers="GDK_CONTROL_MASK | GDK_SHIFT_MASK"/> </child> </object> Signal DetailsThe "connect-proxy" signallambda (group action proxy)The signal is emitted after connecting a proxy to an action in the group. Note that the proxy may have been connected to a different action before. This is intended for simple customizations for which a custom action class would be too clumsy, e.g. showing tooltips for menuitems in the statusbar.
The "disconnect-proxy" signallambda (group action proxy)The signal is emitted after disconnecting a proxy from an action in the group.
The "post-activate" signallambda (group action)The signal is emitted just after the action in the action group is activated.
The "pre-activate" signallambda (group action)The signal is emitted just before the action in the action group is activated.
| Slot Access FunctionsInherited Slot Access FunctionsSee also |
*2021-12-18