Ancestor class for all blocking actions.
It handles performing action through main menu (MENU_MODE), popup menu
(POPUP_MODE), IDE SystemAction API call (API_MODE) or through keyboard shortcut
(SHORTCUT_MODE).
Action can be performed in exact mode by calling performMenu(...),
performPopup(...), performAPI(...) or performShortcut(...).
If exact mode is not supported by the action it throws
UnsupportedOperationException.
Current implementation supports MENU_MODE when menuPath is defined, POPUP_MODE
when popupPath is defined, API_MODE when systemActionClass is defined and
SHORTCUT_MODE when shorcut is defined (see Action constructors).
Action also can be performed using runtime default mode by calling perform(...).
When default mode is not support by the action other modes are tried till
supported mode found and action is performed. |