Action
(gb.qt)
This
class is used for managing actions.
Symbolen
Overview
An action is a string key that links together controls that must have the same goal.
For example, a "Save"
Menu entry and a
Button in a
ToolBar with a "Save" icon.
Instead of having to make control groups and catching events, you can use actions to:
- Centralize your event dispatching in one event handler. See Raise for more information.
- Automatically synchronize toggle buttons and menus associated with an action.
- Globally enable or disable buttons and menus.
The following controls can be linked to an action:
Setting the
Action property of other controls has no effect.
Voorbeeld
' Gambas class file
PUBLIC save AS Action
PUBLIC SUB Form_Open()
Menu1.Action = "save"
button.Action = "save"
END
PUBLIC SUB Action_Activate(key AS String) AS Boolean
SELECT CASE key
CASE "save"
' call save sub at here
PRINT "save to a file."
END SELECT
END
Local actions
An action whose name begins with a dot is a "local" action. When raised, only the main observer of linked controls, as returned by the
Object.Parent method, will catch them.
That feature is used in the
Workspace child windows of the
Gambas IDE: the child window tool buttons are all associated with local actions.
If they were not, raising the associated action would activate it for all child windows using it, and not for the one owning the toolbar only!