当前位置: 首页>>代码示例>>Java>>正文


Java KeymapManagerEx类代码示例

本文整理汇总了Java中com.intellij.openapi.keymap.ex.KeymapManagerEx的典型用法代码示例。如果您正苦于以下问题:Java KeymapManagerEx类的具体用法?Java KeymapManagerEx怎么用?Java KeymapManagerEx使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


KeymapManagerEx类属于com.intellij.openapi.keymap.ex包,在下文中一共展示了KeymapManagerEx类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: addShortcut

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
private void addShortcut(@NotNull final String actionIdString, @NotNull final String[] shortcuts) {
  KeymapManagerEx keymapManager = KeymapManagerEx.getInstanceEx();
  for (Keymap keymap : keymapManager.getAllKeymaps()) {
    List<Pair<String, String>> pairs = myDeletedShortcuts.get(keymap);
    if (pairs == null) {
      pairs = new ArrayList<>();
      myDeletedShortcuts.put(keymap, pairs);
    }
    for (String shortcutString : shortcuts) {
      Shortcut studyActionShortcut = new KeyboardShortcut(KeyStroke.getKeyStroke(shortcutString), null);
      String[] actionsIds = keymap.getActionIds(studyActionShortcut);
      for (String actionId : actionsIds) {
        pairs.add(Pair.create(actionId, shortcutString));
        keymap.removeShortcut(actionId, studyActionShortcut);
      }
      keymap.addShortcut(actionIdString, studyActionShortcut);
    }
  }
}
 
开发者ID:medvector,项目名称:educational-plugin,代码行数:20,代码来源:StudyProjectComponent.java

示例2: projectClosed

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
@Override
public void projectClosed() {
  final Course course = StudyTaskManager.getInstance(myProject).getCourse();
  if (course != null) {
    final ToolWindow toolWindow = ToolWindowManager.getInstance(myProject).getToolWindow(StudyToolWindowFactory.STUDY_TOOL_WINDOW);
    if (toolWindow != null) {
      toolWindow.getContentManager().removeAllContents(false);
    }
    KeymapManagerEx keymapManager = KeymapManagerEx.getInstanceEx();
    for (Keymap keymap : keymapManager.getAllKeymaps()) {
      List<Pair<String, String>> pairs = myDeletedShortcuts.get(keymap);
      if (pairs != null && !pairs.isEmpty()) {
        for (Pair<String, String> actionShortcut : pairs) {
          keymap.addShortcut(actionShortcut.first, new KeyboardShortcut(KeyStroke.getKeyStroke(actionShortcut.second), null));
        }
      }
    }
  }
  myListener = null;
}
 
开发者ID:medvector,项目名称:educational-plugin,代码行数:21,代码来源:StudyProjectComponent.java

示例3: testDuplicateShortcuts

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
public void testDuplicateShortcuts() {
  StringBuilder failMessage = new StringBuilder();
  Map<String, Map<String, List<String>>> knownDuplicates = getKnownDuplicates();

  for (Keymap keymap : KeymapManagerEx.getInstanceEx().getAllKeymaps()) {
    String failure = checkDuplicatesInKeymap(keymap, knownDuplicates);
    if (failMessage.length() > 0) failMessage.append("\n");
    failMessage.append(failure);
  }
  if (failMessage.length() > 0) {
    TestCase.fail(failMessage +
                  "\n" +
                  "Please specify 'use-shortcut-of' attribute for your action if it is similar to another action (but it won't appear in Settings/Keymap),\n" +
                  "reassign shortcut or, if absolutely must, modify the 'known duplicates list'");
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:17,代码来源:KeymapsTestCase.java

示例4: _getShortcuts

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
private OrderedSet<Shortcut> _getShortcuts(final String actionId) {
  KeymapManagerEx keymapManager = getKeymapManager();
  OrderedSet<Shortcut> listOfShortcuts = myActionId2ListOfShortcuts.get(actionId);
  if (listOfShortcuts != null) {
    return listOfShortcuts;
  }
  else {
    listOfShortcuts = new OrderedSet<Shortcut>();
  }

  final String actionBinding = keymapManager.getActionBinding(actionId);
  if (actionBinding != null) {
    listOfShortcuts.addAll(_getShortcuts(actionBinding));
  }

  return listOfShortcuts;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:18,代码来源:KeymapImpl.java

示例5: setUp

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
public void setUp() throws Exception {
  assumeFalse("Test cannot be run in headless environment", GraphicsEnvironment.isHeadless());

  super.setUp();

  ActionManager.getInstance().registerAction(OUR_TEST_ACTION, new EmptyAction());

  keymap = new KeymapImpl();
  keymap.setName(OUR_KEYMAP_NAME);
  keymap.addShortcut(OUR_TEST_ACTION, OUR_SHORTCUT);
  keymap.addShortcut(OUR_TEST_ACTION, OUR_SHORTCUT_WITH_MODIFIER);
  KeymapManagerEx.getInstanceEx().getSchemesManager().addNewScheme(keymap, false);
  mySavedKeymap = KeymapManagerEx.getInstanceEx().getActiveKeymap();
  KeymapManagerEx.getInstanceEx().setActiveKeymap(keymap);

  myEventSource = new JFrame();
  myEventSource.setSize(1,1);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:19,代码来源:IdeMouseEventDispatcherTest.java

示例6: patchKeymap

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
private static void patchKeymap() {
  Set<String> droppedActions = ContainerUtil.newHashSet(
    "AddToFavoritesPopup",
    "DatabaseView.ImportDataSources",
    "CompileDirty", "Compile",
    // hidden
    "AddNewFavoritesList", "EditFavorites", "RenameFavoritesList", "RemoveFavoritesList");
  KeymapManagerEx keymapManager = KeymapManagerEx.getInstanceEx();


  for (Keymap keymap : keymapManager.getAllKeymaps()) {
    if (keymap.canModify()) continue;

    KeymapImpl keymapImpl = (KeymapImpl)keymap;

    for (String id : keymapImpl.getOwnActionIds()) {
      if (droppedActions.contains(id)) keymapImpl.clearOwnActionsId(id);
    }
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:21,代码来源:PyCharmEduInitialConfigurator.java

示例7: addShortcut

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
private void addShortcut(@NotNull final String actionIdString, @NotNull final String[] shortcuts) {
  KeymapManagerEx keymapManager = KeymapManagerEx.getInstanceEx();
  for (Keymap keymap : keymapManager.getAllKeymaps()) {
    List<Pair<String, String>> pairs = myDeletedShortcuts.get(keymap);
    if (pairs == null) {
      pairs = new ArrayList<Pair<String, String>>();
      myDeletedShortcuts.put(keymap, pairs);
    }
    for (String shortcutString : shortcuts) {
      Shortcut studyActionShortcut = new KeyboardShortcut(KeyStroke.getKeyStroke(shortcutString), null);
      String[] actionsIds = keymap.getActionIds(studyActionShortcut);
      for (String actionId : actionsIds) {
        pairs.add(Pair.create(actionId, shortcutString));
        keymap.removeShortcut(actionId, studyActionShortcut);
      }
      keymap.addShortcut(actionIdString, studyActionShortcut);
    }
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:20,代码来源:StudyProjectComponent.java

示例8: projectClosed

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
@Override
public void projectClosed() {
  final Course course = StudyTaskManager.getInstance(myProject).getCourse();
  if (course != null) {
    final ToolWindow toolWindow = ToolWindowManager.getInstance(myProject).getToolWindow(StudyToolWindowFactory.STUDY_TOOL_WINDOW);
    if (toolWindow != null) {
      toolWindow.getContentManager().removeAllContents(false);
    }
    final ToolWindow progressToolWindow = ToolWindowManager.getInstance(myProject).getToolWindow(StudyProgressToolWindowFactory.ID);
    if (progressToolWindow != null) {
      progressToolWindow.getContentManager().removeAllContents(false);
    }
    KeymapManagerEx keymapManager = KeymapManagerEx.getInstanceEx();
    for (Keymap keymap : keymapManager.getAllKeymaps()) {
      List<Pair<String, String>> pairs = myDeletedShortcuts.get(keymap);
      if (pairs != null && !pairs.isEmpty()) {
        for (Pair<String, String> actionShortcut : pairs) {
          keymap.addShortcut(actionShortcut.first, new KeyboardShortcut(KeyStroke.getKeyStroke(actionShortcut.second), null));
        }
      }
     }
  }
  myListener = null;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:25,代码来源:StudyProjectComponent.java

示例9: setActivateAndroidToolWindowShortcut

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
private static void setActivateAndroidToolWindowShortcut() {
  // The IntelliJ keymap implementation behaves as follows:
  //  - getting a shortcut from a keymap gets the shortcut only from that keymap, and not from its parent, unless no shortcuts
  //    are defined in the keymap itself
  //  - however, adding a shortcut to a keymap explicitly copies all the shortcuts for that action from the parent keymap to this keymap
  // The upshot of all this is that to add a shortcut, we should do so in all the child keymaps first, then the parent keymap.
  // The following code does a simplified implementation of this behavior by changing the default keymap last after all the other
  // keymaps have been changed.
  Keymap defaultKeymap = null;
  for (Keymap keymap: KeymapManagerEx.getInstanceEx().getAllKeymaps()) {
    if (KeymapManager.DEFAULT_IDEA_KEYMAP.equals(keymap.getName())) {
      defaultKeymap = keymap;
      continue;
    }
    setActivateAndroidToolWindowShortcut(keymap);
  }

  if (defaultKeymap != null) {
    setActivateAndroidToolWindowShortcut(defaultKeymap);
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:22,代码来源:AndroidInitialConfigurator.java

示例10: _getShortcuts

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
private LinkedHashSet<Shortcut> _getShortcuts(final String actionId) {
  KeymapManagerEx keymapManager = getKeymapManager();
  LinkedHashSet<Shortcut> listOfShortcuts = myActionId2ListOfShortcuts.get(actionId);
  if (listOfShortcuts != null) {
    return listOfShortcuts;
  }
  else {
    listOfShortcuts = new LinkedHashSet<Shortcut>();
  }

  final String actionBinding = keymapManager.getActionBinding(actionId);
  if (actionBinding != null) {
    listOfShortcuts.addAll(_getShortcuts(actionBinding));
  }

  return listOfShortcuts;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:18,代码来源:KeymapImpl.java

示例11: getShortcuts

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
public Shortcut[] getShortcuts(String actionId) {
  LinkedHashSet<Shortcut> shortcuts = myActionId2ListOfShortcuts.get(actionId);

  // Shortcuts of bounded action has more priority than keystrokes of given action,
  // and likely this behaviour can't be changed completely because of IDEA-58896.
  // But. If shortcuts for actionId has been explicitly defined in current keymap
  // then shortcuts of bounded action won't be used.
  KeymapManagerEx keymapManager = getKeymapManager();
  boolean hasBoundedAction = keymapManager.getBoundActions().contains(actionId);
  if (hasBoundedAction && (shortcuts == null || shortcuts.isEmpty())) {
    return getShortcuts(keymapManager.getActionBinding(actionId));
  }

  if (shortcuts == null) {
    if (myParent != null) {
      return getParentShortcuts(actionId);
    }
    else {
      return ourEmptyShortcutsArray;
    }
  }
  return shortcuts.isEmpty() ? ourEmptyShortcutsArray : shortcuts.toArray(new Shortcut[shortcuts.size()]);
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:24,代码来源:KeymapImpl.java

示例12: fillActions

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
protected void fillActions(Project project, @NotNull DefaultActionGroup group, @NotNull DataContext dataContext) {
  final KeymapManagerEx manager = (KeymapManagerEx) KeymapManager.getInstance();
  final Keymap current = manager.getActiveKeymap();

  for (final Keymap keymap : manager.getAllKeymaps()) {
    addKeymapAction(group, manager, current, keymap, false);
  }

  Collection<SharedScheme<KeymapImpl>> sharedSchemes = ((KeymapManagerEx)KeymapManagerEx.getInstance()).getSchemesManager().loadSharedSchemes();

  if (!sharedSchemes.isEmpty()) {
    group.add(Separator.getInstance());
    for (SharedScheme<KeymapImpl> sharedScheme : sharedSchemes) {
      addKeymapAction(group, manager,current, sharedScheme.getScheme(), true);
    }
  }

}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:19,代码来源:QuickChangeKeymapAction.java

示例13: getShortcuts

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
@Override
public Shortcut[] getShortcuts(String actionId) {
  LinkedHashSet<Shortcut> shortcuts = myActionId2ListOfShortcuts.get(actionId);

  // Shortcuts of bounded action has more priority than keystrokes of given action,
  // and likely this behaviour can't be changed completely because of IDEA-58896.
  // But. If shortcuts for actionId has been explicitly defined in current keymap
  // then shortcuts of bounded action won't be used.
  KeymapManagerEx keymapManager = getKeymapManager();
  boolean hasBoundedAction = keymapManager.getBoundActions().contains(actionId);
  if (hasBoundedAction && (shortcuts == null || shortcuts.isEmpty())) {
    return getShortcuts(keymapManager.getActionBinding(actionId));
  }

  if (shortcuts == null) {
    if (myParent != null) {
      return getParentShortcuts(actionId);
    }
    else {
      return ourEmptyShortcutsArray;
    }
  }
  return shortcuts.isEmpty() ? ourEmptyShortcutsArray : shortcuts.toArray(new Shortcut[shortcuts.size()]);
}
 
开发者ID:consulo,项目名称:consulo,代码行数:25,代码来源:KeymapImpl.java

示例14: createToolbar

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
private ActionToolbar createToolbar(final ActionGroup group) {
  final ActionToolbarImpl actionToolbar =
          new ActionToolbarImpl(ActionPlaces.CONTEXT_TOOLBAR, group, true, DataManager.getInstance(), ActionManagerEx.getInstanceEx(),
                                KeymapManagerEx.getInstanceEx()) {

            @Override
            protected ActionButton createToolbarButton(final AnAction action,
                                                       boolean minimalMode,
                                                       boolean decorateButtons,
                                                       final String place,
                                                       final Presentation presentation,
                                                       final Dimension minimumSize) {
              final ActionButton result = new ActionButton(action, presentation, place, minimumSize);
              result.setMinimalMode(minimalMode);
              result.setDecorateButtons(decorateButtons);
              return result;
            }
          };

  actionToolbar.setTargetComponent(myEditor.getContentComponent());
  return actionToolbar;
}
 
开发者ID:consulo,项目名称:consulo,代码行数:23,代码来源:ContextMenuImpl.java

示例15: removeBoundActionIds

import com.intellij.openapi.keymap.ex.KeymapManagerEx; //导入依赖的package包/类
private static void removeBoundActionIds(Set<String> aids) {
  // explicitly bound to another action
  for (Iterator<String> it = aids.iterator(); it.hasNext();) {
    String id = it.next();
    String sourceId = KeymapManagerEx.getInstanceEx().getActionBinding(id);
    if (sourceId != null) {
      it.remove();
    }
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:11,代码来源:KeymapsTestCase.java


注:本文中的com.intellij.openapi.keymap.ex.KeymapManagerEx类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。