From 324af846e90ae38886c2298559510aa935b054ee Mon Sep 17 00:00:00 2001 From: Gegy Date: Sun, 12 May 2019 11:04:33 +0200 Subject: Rename in place functionality (#131) * Rename in place functionality * Don't allow rename if renaming is not allowed for the token * Remove redundant 'R' hotkey --- .../java/cuchaz/enigma/gui/panels/PanelEditor.java | 70 ++++++++++++---------- 1 file changed, 38 insertions(+), 32 deletions(-) (limited to 'src/main/java/cuchaz/enigma/gui/panels') diff --git a/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java b/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java index f19d98f..849c7c1 100644 --- a/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java +++ b/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java @@ -39,51 +39,57 @@ public class PanelEditor extends JEditorPane { this.addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent event) { - switch (event.getKeyCode()) { - case KeyEvent.VK_R: - gui.popupMenu.renameMenu.doClick(); - break; - - case KeyEvent.VK_I: - gui.popupMenu.showInheritanceMenu.doClick(); - break; + if (event.isControlDown()) { + switch (event.getKeyCode()) { + case KeyEvent.VK_I: + gui.popupMenu.showInheritanceMenu.doClick(); + break; - case KeyEvent.VK_M: - gui.popupMenu.showImplementationsMenu.doClick(); - break; + case KeyEvent.VK_M: + gui.popupMenu.showImplementationsMenu.doClick(); + break; - case KeyEvent.VK_N: - gui.popupMenu.openEntryMenu.doClick(); - break; + case KeyEvent.VK_N: + gui.popupMenu.openEntryMenu.doClick(); + break; - case KeyEvent.VK_P: - gui.popupMenu.openPreviousMenu.doClick(); - break; + case KeyEvent.VK_P: + gui.popupMenu.openPreviousMenu.doClick(); + break; - case KeyEvent.VK_E: - gui.popupMenu.openNextMenu.doClick(); - break; + case KeyEvent.VK_E: + gui.popupMenu.openNextMenu.doClick(); + break; - case KeyEvent.VK_C: - gui.popupMenu.showCallsMenu.doClick(); - break; + case KeyEvent.VK_C: + gui.popupMenu.showCallsMenu.doClick(); + break; - case KeyEvent.VK_O: - gui.popupMenu.toggleMappingMenu.doClick(); - break; - case KeyEvent.VK_F5: - gui.getController().refreshCurrentClass(); - break; - default: - break; + case KeyEvent.VK_O: + gui.popupMenu.toggleMappingMenu.doClick(); + break; + case KeyEvent.VK_F5: + gui.getController().refreshCurrentClass(); + break; + default: + break; + } } gui.setShouldNavigateOnClick(event.isControlDown()); } + @Override + public void keyTyped(KeyEvent event) { + if (!gui.popupMenu.renameMenu.isEnabled()) return; + if (!event.isControlDown() && !event.isAltDown()) { + gui.popupMenu.renameMenu.doClick(); + gui.renameTextField.setText(String.valueOf(event.getKeyChar())); + } + } + @Override public void keyReleased(KeyEvent event) { - super.keyReleased(event); gui.setShouldNavigateOnClick(event.isControlDown()); } }); -- cgit v1.2.3