List of usage examples for com.intellij.openapi.actionSystem CommonShortcuts getEditSource
public static ShortcutSet getEditSource()
From source file:com.intellij.codeInsight.documentation.DocumentationComponent.java
License:Apache License
public DocumentationComponent(final DocumentationManager manager, final AnAction[] additionalActions) { myManager = manager;//ww w .j a va 2 s. c o m myIsEmpty = true; myIsShown = false; myEditorPane = new JEditorPane(UIUtil.HTML_MIME, "") { @Override public EditorKit getEditorKit() { return new HTMLEditorKit(); } @Override public Dimension getPreferredScrollableViewportSize() { int em = myEditorPane.getFont().getSize(); int prefWidth = PREFERRED_WIDTH_EM * em; int prefHeightMin = PREFERRED_HEIGHT_MIN_EM * em; int prefHeightMax = PREFERRED_HEIGHT_MAX_EM * em; if (getWidth() == 0 || getHeight() == 0) { setSize(prefWidth, prefHeightMax); } Insets ins = myEditorPane.getInsets(); View rootView = myEditorPane.getUI().getRootView(myEditorPane); rootView.setSize(prefWidth, prefHeightMax); // Necessary! Without this line, the size won't increase when the content does int prefHeight = (int) rootView.getPreferredSpan(View.Y_AXIS) + ins.bottom + ins.top + myScrollPane.getHorizontalScrollBar().getMaximumSize().height; prefHeight = Math.max(prefHeightMin, Math.min(prefHeightMax, prefHeight)); return new Dimension(prefWidth, prefHeight); } { enableEvents(AWTEvent.KEY_EVENT_MASK); } @Override protected void processKeyEvent(KeyEvent e) { KeyStroke keyStroke = KeyStroke.getKeyStrokeForEvent(e); ActionListener listener = myKeyboardActions.get(keyStroke); if (listener != null) { listener.actionPerformed(new ActionEvent(DocumentationComponent.this, 0, "")); e.consume(); return; } super.processKeyEvent(e); } @Override protected void paintComponent(Graphics g) { GraphicsUtil.setupAntialiasing(g); super.paintComponent(g); } @Override public void setDocument(Document doc) { super.setDocument(doc); if (doc instanceof StyledDocument) { doc.putProperty("imageCache", myImageProvider); } } }; DataProvider helpDataProvider = new DataProvider() { @Override public Object getData(@NonNls String dataId) { return PlatformDataKeys.HELP_ID.is(dataId) ? DOCUMENTATION_TOPIC_ID : null; } }; myEditorPane.putClientProperty(DataManager.CLIENT_PROPERTY_DATA_PROVIDER, helpDataProvider); myText = ""; myEditorPane.setEditable(false); myEditorPane.setBackground(HintUtil.INFORMATION_COLOR); myEditorPane.setEditorKit(UIUtil.getHTMLEditorKit()); myScrollPane = new JBScrollPane(myEditorPane) { @Override protected void processMouseWheelEvent(MouseWheelEvent e) { if (!EditorSettingsExternalizable.getInstance().isWheelFontChangeEnabled() || !EditorUtil.isChangeFontSize(e)) { super.processMouseWheelEvent(e); return; } int change = Math.abs(e.getWheelRotation()); boolean increase = e.getWheelRotation() <= 0; EditorColorsManager colorsManager = EditorColorsManager.getInstance(); EditorColorsScheme scheme = colorsManager.getGlobalScheme(); FontSize newFontSize = scheme.getQuickDocFontSize(); for (; change > 0; change--) { if (increase) { newFontSize = newFontSize.larger(); } else { newFontSize = newFontSize.smaller(); } } if (newFontSize == scheme.getQuickDocFontSize()) { return; } scheme.setQuickDocFontSize(newFontSize); applyFontSize(); setFontSizeSliderSize(newFontSize); } }; myScrollPane.setBorder(null); myScrollPane.putClientProperty(DataManager.CLIENT_PROPERTY_DATA_PROVIDER, helpDataProvider); final MouseAdapter mouseAdapter = new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { myManager.requestFocus(); myShowSettingsButton.hideSettings(); } }; myEditorPane.addMouseListener(mouseAdapter); Disposer.register(this, new Disposable() { @Override public void dispose() { myEditorPane.removeMouseListener(mouseAdapter); } }); final FocusAdapter focusAdapter = new FocusAdapter() { @Override public void focusLost(FocusEvent e) { Component previouslyFocused = WindowManagerEx.getInstanceEx() .getFocusedComponent(manager.getProject(getElement())); if (!(previouslyFocused == myEditorPane)) { if (myHint != null && !myHint.isDisposed()) myHint.cancel(); } } }; myEditorPane.addFocusListener(focusAdapter); Disposer.register(this, new Disposable() { @Override public void dispose() { myEditorPane.removeFocusListener(focusAdapter); } }); setLayout(new BorderLayout()); JLayeredPane layeredPane = new JBLayeredPane() { @Override public void doLayout() { final Rectangle r = getBounds(); for (Component component : getComponents()) { if (component instanceof JScrollPane) { component.setBounds(0, 0, r.width, r.height); } else { int insets = 2; Dimension d = component.getPreferredSize(); component.setBounds(r.width - d.width - insets, insets, d.width, d.height); } } } @Override public Dimension getPreferredSize() { Dimension editorPaneSize = myEditorPane.getPreferredScrollableViewportSize(); Dimension controlPanelSize = myControlPanel.getPreferredSize(); return new Dimension(Math.max(editorPaneSize.width, controlPanelSize.width), editorPaneSize.height + controlPanelSize.height); } }; layeredPane.add(myScrollPane); layeredPane.setLayer(myScrollPane, 0); mySettingsPanel = createSettingsPanel(); layeredPane.add(mySettingsPanel); layeredPane.setLayer(mySettingsPanel, JLayeredPane.POPUP_LAYER); add(layeredPane, BorderLayout.CENTER); setOpaque(true); myScrollPane.setViewportBorder(JBScrollPane.createIndentBorder()); final DefaultActionGroup actions = new DefaultActionGroup(); final BackAction back = new BackAction(); final ForwardAction forward = new ForwardAction(); EditDocumentationSourceAction edit = new EditDocumentationSourceAction(); actions.add(back); actions.add(forward); actions.add(myExternalDocAction = new ExternalDocAction()); actions.add(edit); back.registerCustomShortcutSet(CustomShortcutSet.fromString("LEFT"), this); forward.registerCustomShortcutSet(CustomShortcutSet.fromString("RIGHT"), this); myExternalDocAction.registerCustomShortcutSet(CustomShortcutSet.fromString("UP"), this); edit.registerCustomShortcutSet(CommonShortcuts.getEditSource(), this); if (additionalActions != null) { for (final AnAction action : additionalActions) { actions.add(action); ShortcutSet shortcutSet = action.getShortcutSet(); if (shortcutSet != null) { action.registerCustomShortcutSet(shortcutSet, this); } } } myToolBar = ActionManager.getInstance().createActionToolbar(ActionPlaces.JAVADOC_TOOLBAR, actions, true); myControlPanel = new JPanel(new BorderLayout(5, 5)); myControlPanel.setBorder(IdeBorderFactory.createBorder(SideBorder.BOTTOM)); myElementLabel = new JLabel(); myElementLabel.setMinimumSize(new Dimension(100, 0)); // do not recalculate size according to the text myControlPanel.add(myToolBar.getComponent(), BorderLayout.WEST); myControlPanel.add(myElementLabel, BorderLayout.CENTER); myControlPanel.add(myShowSettingsButton = new MyShowSettingsButton(), BorderLayout.EAST); myControlPanelVisible = false; final HyperlinkListener hyperlinkListener = new HyperlinkListener() { @Override public void hyperlinkUpdate(HyperlinkEvent e) { HyperlinkEvent.EventType type = e.getEventType(); if (type == HyperlinkEvent.EventType.ACTIVATED) { manager.navigateByLink(DocumentationComponent.this, e.getDescription()); } } }; myEditorPane.addHyperlinkListener(hyperlinkListener); Disposer.register(this, new Disposable() { @Override public void dispose() { myEditorPane.removeHyperlinkListener(hyperlinkListener); } }); registerActions(); updateControlState(); }
From source file:com.intellij.codeInsight.hint.ImplementationViewComponent.java
License:Apache License
private ActionToolbar createToolbar() { DefaultActionGroup group = new DefaultActionGroup(); BackAction back = new BackAction(); back.registerCustomShortcutSet(new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_LEFT, 0)), this); group.add(back);//from w w w . j a v a 2 s . co m ForwardAction forward = new ForwardAction(); forward.registerCustomShortcutSet(new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, 0)), this); group.add(forward); EditSourceActionBase edit = new EditSourceAction(); edit.registerCustomShortcutSet( new CompositeShortcutSet(CommonShortcuts.getEditSource(), CommonShortcuts.ENTER), this); group.add(edit); edit = new ShowSourceAction(); edit.registerCustomShortcutSet( new CompositeShortcutSet(CommonShortcuts.getViewSource(), CommonShortcuts.CTRL_ENTER), this); group.add(edit); return ActionManager.getInstance().createActionToolbar(ActionPlaces.UNKNOWN, group, true); }
From source file:com.intellij.compiler.actions.BuildArtifactAction.java
License:Apache License
@Override public void actionPerformed(AnActionEvent e) { final Project project = getEventProject(e); if (project == null) return;/*from w ww . j av a 2 s. c o m*/ final List<Artifact> artifacts = ArtifactUtil.getArtifactWithOutputPaths(project); if (artifacts.isEmpty()) return; List<ArtifactPopupItem> items = new ArrayList<ArtifactPopupItem>(); if (artifacts.size() > 1) { items.add(0, new ArtifactPopupItem(null, "All Artifacts", EmptyIcon.ICON_16)); } Set<Artifact> selectedArtifacts = new HashSet<Artifact>( ArtifactsWorkspaceSettings.getInstance(project).getArtifactsToBuild()); TIntArrayList selectedIndices = new TIntArrayList(); if (Comparing.haveEqualElements(artifacts, selectedArtifacts) && selectedArtifacts.size() > 1) { selectedIndices.add(0); selectedArtifacts.clear(); } for (Artifact artifact : artifacts) { final ArtifactPopupItem item = new ArtifactPopupItem(artifact, artifact.getName(), artifact.getArtifactType().getIcon()); if (selectedArtifacts.contains(artifact)) { selectedIndices.add(items.size()); } items.add(item); } final ProjectSettingsService projectSettingsService = ProjectSettingsService.getInstance(project); final ArtifactAwareProjectSettingsService settingsService = projectSettingsService instanceof ArtifactAwareProjectSettingsService ? (ArtifactAwareProjectSettingsService) projectSettingsService : null; final ChooseArtifactStep step = new ChooseArtifactStep(items, artifacts.get(0), project, settingsService); step.setDefaultOptionIndices(selectedIndices.toNativeArray()); final ListPopupImpl popup = (ListPopupImpl) JBPopupFactory.getInstance().createListPopup(step); final KeyStroke editKeyStroke = KeymapUtil.getKeyStroke(CommonShortcuts.getEditSource()); if (settingsService != null && editKeyStroke != null) { popup.registerAction("editArtifact", editKeyStroke, new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { Object[] values = popup.getSelectedValues(); popup.cancel(); settingsService.openArtifactSettings( values.length > 0 ? ((ArtifactPopupItem) values[0]).getArtifact() : null); } }); } popup.showCenteredInCurrentWindow(project); }
From source file:com.intellij.debugger.actions.DebuggerAction.java
License:Apache License
public static Disposable installEditAction(final JTree tree, String actionName) { final DoubleClickListener listener = new DoubleClickListener() { @Override//from w ww. j a v a 2 s . co m protected boolean onDoubleClick(MouseEvent e) { if (tree.getPathForLocation(e.getX(), e.getY()) == null) { return false; } DataContext dataContext = DataManager.getInstance().getDataContext(tree); GotoFrameSourceAction.doAction(dataContext); return true; } }; listener.installOn(tree); final AnAction action = ActionManager.getInstance().getAction(actionName); action.registerCustomShortcutSet(CommonShortcuts.getEditSource(), tree); return new Disposable() { public void dispose() { listener.uninstall(tree); action.unregisterCustomShortcutSet(tree); } }; }
From source file:com.intellij.dvcs.push.ui.PushLog.java
License:Apache License
public PushLog(Project project, final CheckedTreeNode root) { DefaultTreeModel treeModel = new DefaultTreeModel(root); treeModel.nodeStructureChanged(root); myTreeCellRenderer = new MyTreeCellRenderer(); myTree = new CheckboxTree(myTreeCellRenderer, root) { @Override/*w w w .j a v a 2s . c om*/ public boolean isPathEditable(TreePath path) { return isEditable() && path.getLastPathComponent() instanceof DefaultMutableTreeNode; } @Override protected void onNodeStateChanged(CheckedTreeNode node) { if (node instanceof EditableTreeNode) { ((EditableTreeNode) node).fireOnSelectionChange(node.isChecked()); } } @Override public String getToolTipText(MouseEvent event) { final TreePath path = myTree.getPathForLocation(event.getX(), event.getY()); if (path == null) { return ""; } Object node = path.getLastPathComponent(); if (node == null || (!(node instanceof DefaultMutableTreeNode))) { return ""; } if (node instanceof TooltipNode) { return ((TooltipNode) node).getTooltip(); } return ""; } @Override public boolean stopEditing() { DefaultMutableTreeNode node = (DefaultMutableTreeNode) myTree.getLastSelectedPathComponent(); if (node instanceof EditableTreeNode) { JComponent editedComponent = (JComponent) node.getUserObject(); InputVerifier verifier = editedComponent.getInputVerifier(); if (verifier != null && !verifier.verify(editedComponent)) return false; } boolean result = super.stopEditing(); if (myShouldRepaint) { refreshNode(root); } return result; } @Override public void cancelEditing() { super.cancelEditing(); if (myShouldRepaint) { refreshNode(root); } } }; myTree.setUI(new MyTreeUi()); myTree.setBorder(new EmptyBorder(2, 0, 0, 0)); //additional vertical indent myTree.setEditable(true); myTree.setHorizontalAutoScrollingEnabled(false); myTree.setShowsRootHandles(root.getChildCount() > 1); MyTreeCellEditor treeCellEditor = new MyTreeCellEditor(); myTree.setCellEditor(treeCellEditor); treeCellEditor.addCellEditorListener(new CellEditorListener() { @Override public void editingStopped(ChangeEvent e) { DefaultMutableTreeNode node = (DefaultMutableTreeNode) myTree.getLastSelectedPathComponent(); if (node != null && node instanceof EditableTreeNode) { JComponent editedComponent = (JComponent) node.getUserObject(); InputVerifier verifier = editedComponent.getInputVerifier(); if (verifier != null && !verifier.verify(editedComponent)) { // if invalid and interrupted, then revert ((EditableTreeNode) node).fireOnCancel(); } else { ((EditableTreeNode) node).fireOnChange(); } } myTree.firePropertyChange(PushLogTreeUtil.EDIT_MODE_PROP, true, false); } @Override public void editingCanceled(ChangeEvent e) { DefaultMutableTreeNode node = (DefaultMutableTreeNode) myTree.getLastSelectedPathComponent(); if (node != null && node instanceof EditableTreeNode) { ((EditableTreeNode) node).fireOnCancel(); } myTree.firePropertyChange(PushLogTreeUtil.EDIT_MODE_PROP, true, false); } }); // complete editing when interrupt myTree.setInvokesStopCellEditing(true); myTree.setRootVisible(false); TreeUtil.collapseAll(myTree, 1); final VcsBranchEditorListener linkMouseListener = new VcsBranchEditorListener(myTreeCellRenderer); linkMouseListener.installOn(myTree); myTree.getSelectionModel().setSelectionMode(TreeSelectionModel.DISCONTIGUOUS_TREE_SELECTION); myTree.addTreeSelectionListener(new TreeSelectionListener() { @Override public void valueChanged(TreeSelectionEvent e) { updateChangesView(); } }); myTree.addFocusListener(new FocusAdapter() { @Override public void focusLost(FocusEvent e) { DefaultMutableTreeNode node = (DefaultMutableTreeNode) myTree.getLastSelectedPathComponent(); if (node != null && node instanceof RepositoryNode && myTree.isEditing()) { //need to force repaint foreground for non-focused editing node myTree.getCellEditor().getTreeCellEditorComponent(myTree, node, true, false, false, myTree.getRowForPath(TreeUtil.getPathFromRoot(node))); } } }); myTree.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0), START_EDITING); //override default tree behaviour. myTree.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), ""); ToolTipManager.sharedInstance().registerComponent(myTree); PopupHandler.installPopupHandler(myTree, VcsLogUiImpl.POPUP_ACTION_GROUP, CONTEXT_MENU); myChangesBrowser = new ChangesBrowser(project, null, Collections.<Change>emptyList(), null, false, true, null, ChangesBrowser.MyUseCase.LOCAL_CHANGES, null); myChangesBrowser.getDiffAction().registerCustomShortcutSet(CommonShortcuts.getDiff(), myTree); final EditSourceForDialogAction editSourceAction = new EditSourceForDialogAction(myChangesBrowser); editSourceAction.registerCustomShortcutSet(CommonShortcuts.getEditSource(), myChangesBrowser); myChangesBrowser.addToolbarAction(editSourceAction); setDefaultEmptyText(); Splitter splitter = new Splitter(false, 0.7f); myScrollPane = ScrollPaneFactory.createScrollPane(myTree); myScrollPane.setOpaque(false); splitter.setFirstComponent(myScrollPane); splitter.setSecondComponent(myChangesBrowser); setLayout(new BorderLayout()); add(splitter); myTree.setMinimumSize(new Dimension(200, myTree.getPreferredSize().height)); myTree.setRowHeight(0); }
From source file:com.intellij.ide.bookmarks.actions.BookmarksAction.java
License:Apache License
@Override public void actionPerformed(AnActionEvent e) { DataContext dataContext = e.getDataContext(); final Project project = CommonDataKeys.PROJECT.getData(dataContext); if (project == null) return;// w w w . j a v a2 s . co m if (myPopup != null && myPopup.isVisible()) return; final DefaultListModel model = buildModel(project); final JBList list = new JBList(model); list.getEmptyText().setText("No Bookmarks"); EditBookmarkDescriptionAction editDescriptionAction = new EditBookmarkDescriptionAction(project, list); DefaultActionGroup actions = new DefaultActionGroup(); actions.add(editDescriptionAction); actions.add(new DeleteBookmarkAction(project, list)); actions.add(new MoveBookmarkUpAction(project, list)); actions.add(new MoveBookmarkDownAction(project, list)); myPopup = new MasterDetailPopupBuilder(project).setActionsGroup(actions).setList(list) .setDetailView(new DetailViewImpl(project)).setCloseOnEnter(false).setDoneRunnable(new Runnable() { @Override public void run() { myPopup.cancel(); } }).setDelegate(this).createMasterDetailPopup(); new AnAction() { @Override public void actionPerformed(AnActionEvent e) { Object selectedValue = list.getSelectedValue(); if (selectedValue instanceof BookmarkItem) { itemChosen((BookmarkItem) selectedValue, project, myPopup, true); } } }.registerCustomShortcutSet(CommonShortcuts.getEditSource(), list); editDescriptionAction.setPopup(myPopup); myPopup.showCenteredInCurrentWindow(project); //todo[zaec] selection mode shouldn't be set in builder.setList() method list.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); }
From source file:com.intellij.xdebugger.impl.ui.tree.XDebuggerTree.java
License:Apache License
private void registerShortcuts() { ActionManager actionManager = ActionManager.getInstance(); actionManager.getAction(XDebuggerActions.SET_VALUE) .registerCustomShortcutSet(new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0)), this); actionManager.getAction(XDebuggerActions.COPY_VALUE).registerCustomShortcutSet(CommonShortcuts.getCopy(), this); actionManager.getAction(XDebuggerActions.JUMP_TO_SOURCE) .registerCustomShortcutSet(CommonShortcuts.getEditSource(), this); Shortcut[] editTypeShortcuts = KeymapManager.getInstance().getActiveKeymap() .getShortcuts(XDebuggerActions.EDIT_TYPE_SOURCE); actionManager.getAction(XDebuggerActions.JUMP_TO_TYPE_SOURCE) .registerCustomShortcutSet(new CustomShortcutSet(editTypeShortcuts), this); actionManager.getAction(XDebuggerActions.MARK_OBJECT).registerCustomShortcutSet( new CustomShortcutSet(KeymapManager.getInstance().getActiveKeymap().getShortcuts("ToggleBookmark")), this); }
From source file:com.vladsch.MissingInActions.util.CommonUIShortcuts.java
License:Apache License
public static ShortcutSet getEditSource() { return CommonShortcuts.getEditSource(); }
From source file:org.jetbrains.idea.maven.navigator.MavenProjectsNavigator.java
License:Apache License
private void initToolWindow() { initTree();/* www. ja va2 s . c o 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); }
From source file:org.jetbrains.idea.svn.dialogs.IntersectingLocalChangesPanel.java
License:Apache License
private void initUI() { final DefaultMutableTreeNode root = new DefaultMutableTreeNode(); myJTree = new JTree(root); myJTree.setRootVisible(false);/* w w w . j a v a 2 s . co m*/ myJTree.setShowsRootHandles(false); myJTree.setCellRenderer(new ChangesBrowserNodeRenderer(myProject, true, false)); TreeModelBuilder builder = new TreeModelBuilder(myProject, true); final DefaultTreeModel treeModel = builder.buildModelFromFilePaths(myFilesToShow); myJTree.setModel(treeModel); myJTree.expandPath(new TreePath(root.getPath())); final JLabel label = new JLabel(myText) { @Override public Dimension getPreferredSize() { final Dimension superValue = super.getPreferredSize(); return new Dimension((int) superValue.getWidth(), (int) (superValue.getHeight() * 1.7)); } }; label.setUI(new MultiLineLabelUI()); label.setBackground(UIUtil.getTextFieldBackground()); label.setVerticalTextPosition(JLabel.TOP); myPanel.setBackground(UIUtil.getTextFieldBackground()); myPanel.add(label, BorderLayout.NORTH); myPanel.add(myJTree, BorderLayout.CENTER); EditSourceOnDoubleClickHandler.install(myJTree); EditSourceOnEnterKeyHandler.install(myJTree); final EditSourceAction editSourceAction = new EditSourceAction(); editSourceAction.registerCustomShortcutSet(CommonShortcuts.getEditSource(), myPanel); }