Action elements
Controls might be extended by several action elements, which allow executing specific actions supported in the context of the given control. Which actions are supported depends on the control style and the type of data source. Action elements can be provided in different places:
- Context menu
- Control toolbar
- Control buttons
- Hidden actions (not visible action items, which can be executed by specific key sequences)
Context menus with default actions are created by the system depending on control style types. Context menus for control styles may alter depending on data source properties (e.g. a list context menu contains an item for the DeleteEntry() action, when the data source is owner of instances and a RemoveEntry() action item, when the data source is not owning the instances.
Besides, tool bars might be defined for any control type referring to default actions. Control tool bars usually refer to a subset of menu context menu items but may also contain additional action items. Default actions not applying to the current data source are hidden in tool bars and context menus. Actions, which cannot be executed because of the current data source state are disabled (e.g. MoveUp() a list entry cannot be executed, when the instance is on top in the collection) and will be enabled as soon as the data source state changes.
Context menu and control tool bard may contain additional actions that are supported in the given context, but those actions are not maintained bay the system. i.e. the application is responsible to set the proper action states.
One may also add buttons as outer elements to a control. When those buttons refer to default actions, the button state is also maintained by the system. Thus, one might add a RemoveEntry() button to a single line edit, which will be displayed only, when the data source of the control is a reference or relationship. It will be disabled, when no instance is selected/available in the data source, or when the data source is read only.
Since default actions become automatically member of the actions to be supported by the control, the need not to be added to the controls reaction list.
Default actions supported fro a control style depend on the control style type and are listed for each style type explicitly.