summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/gui
diff options
context:
space:
mode:
authorGravatar gegy10002019-05-12 11:23:23 +0200
committerGravatar gegy10002019-05-12 11:23:23 +0200
commitd37703def5c883bd18f3f62a46b8cca1f11c96df (patch)
tree96993759a4452fb335e11aa827a6bd8cd59ce958 /src/main/java/cuchaz/enigma/gui
parentRename in place functionality (#131) (diff)
downloadenigma-fork-d37703def5c883bd18f3f62a46b8cca1f11c96df.tar.gz
enigma-fork-d37703def5c883bd18f3f62a46b8cca1f11c96df.tar.xz
enigma-fork-d37703def5c883bd18f3f62a46b8cca1f11c96df.zip
Write package name in text field on rename-in-place
Diffstat (limited to 'src/main/java/cuchaz/enigma/gui')
-rw-r--r--src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java b/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java
index 849c7c1..ff84648 100644
--- a/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java
+++ b/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java
@@ -1,8 +1,12 @@
1package cuchaz.enigma.gui.panels; 1package cuchaz.enigma.gui.panels;
2 2
3import cuchaz.enigma.Deobfuscator;
4import cuchaz.enigma.analysis.EntryReference;
3import cuchaz.enigma.config.Config; 5import cuchaz.enigma.config.Config;
4import cuchaz.enigma.gui.BrowserCaret; 6import cuchaz.enigma.gui.BrowserCaret;
5import cuchaz.enigma.gui.Gui; 7import cuchaz.enigma.gui.Gui;
8import cuchaz.enigma.translation.representation.entry.ClassEntry;
9import cuchaz.enigma.translation.representation.entry.Entry;
6 10
7import javax.swing.*; 11import javax.swing.*;
8import java.awt.*; 12import java.awt.*;
@@ -68,9 +72,15 @@ public class PanelEditor extends JEditorPane {
68 case KeyEvent.VK_O: 72 case KeyEvent.VK_O:
69 gui.popupMenu.toggleMappingMenu.doClick(); 73 gui.popupMenu.toggleMappingMenu.doClick();
70 break; 74 break;
75
76 case KeyEvent.VK_R:
77 gui.popupMenu.renameMenu.doClick();
78 break;
79
71 case KeyEvent.VK_F5: 80 case KeyEvent.VK_F5:
72 gui.getController().refreshCurrentClass(); 81 gui.getController().refreshCurrentClass();
73 break; 82 break;
83
74 default: 84 default:
75 break; 85 break;
76 } 86 }
@@ -82,9 +92,22 @@ public class PanelEditor extends JEditorPane {
82 @Override 92 @Override
83 public void keyTyped(KeyEvent event) { 93 public void keyTyped(KeyEvent event) {
84 if (!gui.popupMenu.renameMenu.isEnabled()) return; 94 if (!gui.popupMenu.renameMenu.isEnabled()) return;
95
85 if (!event.isControlDown() && !event.isAltDown()) { 96 if (!event.isControlDown() && !event.isAltDown()) {
97 Deobfuscator deobfuscator = gui.getController().getDeobfuscator();
98 EntryReference<Entry<?>, Entry<?>> reference = deobfuscator.deobfuscate(gui.cursorReference);
99 Entry<?> entry = reference.getNameableEntry();
100
101 String name = String.valueOf(event.getKeyChar());
102 if (entry instanceof ClassEntry) {
103 String packageName = ((ClassEntry) entry).getPackageName();
104 if (packageName != null) {
105 name = packageName + "/" + name;
106 }
107 }
108
86 gui.popupMenu.renameMenu.doClick(); 109 gui.popupMenu.renameMenu.doClick();
87 gui.renameTextField.setText(String.valueOf(event.getKeyChar())); 110 gui.renameTextField.setText(name);
88 } 111 }
89 } 112 }
90 113