Example usage for com.intellij.openapi.actionSystem EmptyAction wrap

List of usage examples for com.intellij.openapi.actionSystem EmptyAction wrap

Introduction

In this page you can find the example usage for com.intellij.openapi.actionSystem EmptyAction wrap.

Prototype

public static AnAction wrap(final AnAction action) 

Source Link

Document

Creates proxy action

It allows to alter template presentation and shortcut set without affecting original action,

Usage

From source file:com.maddyhome.idea.vim.action.VimShortcutKeyAction.java

License:Open Source License

@NotNull
public static AnAction getInstance() {
    if (ourInstance == null) {
        final AnAction originalAction = ActionManager.getInstance().getAction(ACTION_ID);
        ourInstance = EmptyAction.wrap(originalAction);
    }/*w  ww.j  a  v a  2  s.  c om*/
    return ourInstance;
}

From source file:org.jetbrains.idea.maven.navigator.MavenProjectsNavigator.java

License:Apache License

private void initToolWindow() {
    initTree();/*from   w w w.  ja va 2 s.  co  m*/
    JPanel panel = new MavenProjectsNavigatorPanel(myProject, myTree);

    AnAction removeAction = EmptyAction
            .wrap(ActionManager.getInstance().getAction("Maven.RemoveRunConfiguration"));
    removeAction.registerCustomShortcutSet(CommonShortcuts.getDelete(), myTree, myProject);
    AnAction editSource = EmptyAction.wrap(ActionManager.getInstance().getAction("Maven.EditRunConfiguration"));
    editSource.registerCustomShortcutSet(CommonShortcuts.getEditSource(), myTree, myProject);

    final ToolWindowManagerEx manager = ToolWindowManagerEx.getInstanceEx(myProject);
    myToolWindow = (ToolWindowEx) manager.registerToolWindow(TOOL_WINDOW_ID, false, ToolWindowAnchor.RIGHT,
            myProject, true);
    myToolWindow.setIcon(MavenIcons.ToolWindowMaven);
    final ContentFactory contentFactory = ContentFactory.getInstance();
    final Content content = contentFactory.createContent(panel, "", false);
    ContentManager contentManager = myToolWindow.getContentManager();
    contentManager.addContent(content);
    contentManager.setSelectedContent(content, false);

    final ToolWindowManagerListener listener = new ToolWindowManagerListener() {
        boolean wasVisible = false;

        @Override
        public void stateChanged() {
            if (myToolWindow == null || myToolWindow.isDisposed()) {
                return;
            }
            boolean visible = myToolWindow.isVisible();
            if (!visible || wasVisible) {
                return;
            }
            scheduleStructureUpdate();
            wasVisible = true;
        }
    };
    manager.addToolWindowManagerListener(listener, myProject);

    ActionManager actionManager = ActionManager.getInstance();

    DefaultActionGroup group = new DefaultActionGroup();
    group.add(actionManager.getAction("Maven.GroupProjects"));
    group.add(actionManager.getAction("Maven.ShowIgnored"));
    group.add(actionManager.getAction("Maven.ShowBasicPhasesOnly"));
    group.add(actionManager.getAction("Maven.AlwaysShowArtifactId"));
    group.add(actionManager.getAction("Maven.ShowVersions"));

    myToolWindow.setAdditionalGearActions(group);
}