Search in sources :

Example 31 with Action

use of org.eclipse.che.ide.api.action.Action in project che by eclipse.

the class KeyBindingManager method runActions.

/**
     * Finds and runs an action cancelling original key event
     *
     * @param actionIds
     *         list containing action ids
     * @param keyEvent
     *         original key event
     */
private void runActions(List<String> actionIds, Event keyEvent) {
    for (String actionId : actionIds) {
        Action action = actionManager.getAction(actionId);
        if (action == null) {
            continue;
        }
        ActionEvent e = new ActionEvent(presentationFactory.getPresentation(action), actionManager, perspectiveManager.get());
        action.update(e);
        if (e.getPresentation().isEnabled() && e.getPresentation().isVisible()) {
            /** Stop handling the key event */
            keyEvent.preventDefault();
            keyEvent.stopPropagation();
            /** Perform the action */
            action.actionPerformed(e);
        }
    }
}
Also used : Action(org.eclipse.che.ide.api.action.Action) ActionEvent(org.eclipse.che.ide.api.action.ActionEvent)

Example 32 with Action

use of org.eclipse.che.ide.api.action.Action in project che by eclipse.

the class ActionManagerTest method shouldUnregister.

@Test
public void shouldUnregister() {
    DefaultActionGroup defaultActionGroup = new DefaultActionGroup(actionManager);
    actionManager.registerAction(IdeActions.GROUP_MAIN_MENU, defaultActionGroup);
    actionManager.unregisterAction(IdeActions.GROUP_MAIN_MENU);
    Action action = actionManager.getAction(IdeActions.GROUP_MAIN_MENU);
    assertNull(action);
}
Also used : Action(org.eclipse.che.ide.api.action.Action) DefaultActionGroup(org.eclipse.che.ide.api.action.DefaultActionGroup) Test(org.junit.Test)

Aggregations

Action (org.eclipse.che.ide.api.action.Action)32 ActionEvent (org.eclipse.che.ide.api.action.ActionEvent)10 ActionGroup (org.eclipse.che.ide.api.action.ActionGroup)10 DefaultActionGroup (org.eclipse.che.ide.api.action.DefaultActionGroup)10 Presentation (org.eclipse.che.ide.api.action.Presentation)10 Separator (org.eclipse.che.ide.api.action.Separator)5 ToggleAction (org.eclipse.che.ide.api.action.ToggleAction)5 ArrayList (java.util.ArrayList)4 CustomComponentAction (org.eclipse.che.ide.api.action.CustomComponentAction)4 CreateProjectAction (org.eclipse.che.ide.actions.CreateProjectAction)2 ImportProjectAction (org.eclipse.che.ide.actions.ImportProjectAction)2 PromisableAction (org.eclipse.che.ide.api.action.PromisableAction)2 SplitHorizontallyAction (org.eclipse.che.ide.part.editor.actions.SplitHorizontallyAction)2 SplitVerticallyAction (org.eclipse.che.ide.part.editor.actions.SplitVerticallyAction)2 Test (org.junit.Test)2 JavaScriptObject (com.google.gwt.core.client.JavaScriptObject)1 ScheduledCommand (com.google.gwt.core.client.Scheduler.ScheduledCommand)1 DivElement (com.google.gwt.dom.client.DivElement)1 Element (com.google.gwt.dom.client.Element)1 RegExp (com.google.gwt.regexp.shared.RegExp)1