summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/gui/Gui.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/cuchaz/enigma/gui/Gui.java')
-rw-r--r--src/main/java/cuchaz/enigma/gui/Gui.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/main/java/cuchaz/enigma/gui/Gui.java b/src/main/java/cuchaz/enigma/gui/Gui.java
index fd59a81..bc49a3f 100644
--- a/src/main/java/cuchaz/enigma/gui/Gui.java
+++ b/src/main/java/cuchaz/enigma/gui/Gui.java
@@ -36,6 +36,7 @@ import de.sciss.syntaxpane.DefaultSyntaxKit;
36import javax.swing.*; 36import javax.swing.*;
37import javax.swing.text.BadLocationException; 37import javax.swing.text.BadLocationException;
38import javax.swing.text.Highlighter; 38import javax.swing.text.Highlighter;
39import javax.swing.tree.DefaultMutableTreeNode;
39import javax.swing.tree.DefaultTreeModel; 40import javax.swing.tree.DefaultTreeModel;
40import javax.swing.tree.TreeNode; 41import javax.swing.tree.TreeNode;
41import javax.swing.tree.TreePath; 42import javax.swing.tree.TreePath;
@@ -750,4 +751,22 @@ public class Gui {
750 this.frame.validate(); 751 this.frame.validate();
751 this.frame.repaint(); 752 this.frame.repaint();
752 } 753 }
754
755 public void onPanelRename(Object prevData, Object data, DefaultMutableTreeNode node) throws IllegalNameException
756 {
757 // package rename
758 if (data instanceof String)
759 {
760 for (int i = 0; i < node.getChildCount(); i++)
761 {
762 DefaultMutableTreeNode childNode = (DefaultMutableTreeNode) node.getChildAt(i);
763 ClassEntry prevDataChild = (ClassEntry) childNode.getUserObject();
764 ClassEntry dataChild = new ClassEntry(data + "/" + prevDataChild.getSimpleName());
765 this.controller.rename(new EntryReference<>(prevDataChild, prevDataChild.getName()), dataChild.getName());
766 }
767 }
768 // class rename
769 else if (data instanceof ClassEntry)
770 this.controller.rename(new EntryReference<>((ClassEntry) prevData, ((ClassEntry) prevData).getName()), ((ClassEntry) data).getName());
771 }
753} 772}