summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/gui/Gui.java
diff options
context:
space:
mode:
authorGravatar asie2018-11-28 00:15:46 +0100
committerGravatar asie2018-11-28 00:20:50 +0100
commitf8223ed5b3cb2f5f60a770804b06750ad94928b1 (patch)
treeb514d1b28ff7ea48ddb23975333bf96a8640aa89 /src/main/java/cuchaz/enigma/gui/Gui.java
parentdo not propagate non-argument local variable names (diff)
downloadenigma-fork-f8223ed5b3cb2f5f60a770804b06750ad94928b1.tar.gz
enigma-fork-f8223ed5b3cb2f5f60a770804b06750ad94928b1.tar.xz
enigma-fork-f8223ed5b3cb2f5f60a770804b06750ad94928b1.zip
fix #68
Diffstat (limited to 'src/main/java/cuchaz/enigma/gui/Gui.java')
-rw-r--r--src/main/java/cuchaz/enigma/gui/Gui.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main/java/cuchaz/enigma/gui/Gui.java b/src/main/java/cuchaz/enigma/gui/Gui.java
index 1fc8bf3..71bf5dc 100644
--- a/src/main/java/cuchaz/enigma/gui/Gui.java
+++ b/src/main/java/cuchaz/enigma/gui/Gui.java
@@ -792,11 +792,15 @@ public class Gui {
792 newEntry == null); 792 newEntry == null);
793 } 793 }
794 794
795 // TODO: getExpansionState will *not* actually update itself based on name changes!
795 public void moveClassTree(EntryReference<Entry, Entry> deobfReference, String newName, boolean isOldOb, boolean isNewOb) { 796 public void moveClassTree(EntryReference<Entry, Entry> deobfReference, String newName, boolean isOldOb, boolean isNewOb) {
796 ClassEntry oldEntry = deobfReference.entry.getOwnerClassEntry(); 797 ClassEntry oldEntry = deobfReference.entry.getOwnerClassEntry();
797 ClassEntry newEntry = new ClassEntry(newName); 798 ClassEntry newEntry = new ClassEntry(newName);
798 799
799 // Ob -> deob 800 // Ob -> deob
801 List<ClassSelector.StateEntry> stateDeobf = this.deobfPanel.deobfClasses.getExpansionState(this.deobfPanel.deobfClasses);
802 List<ClassSelector.StateEntry> stateObf = this.obfPanel.obfClasses.getExpansionState(this.obfPanel.obfClasses);
803
800 if (isOldOb && !isNewOb) { 804 if (isOldOb && !isNewOb) {
801 this.deobfPanel.deobfClasses.moveClassTree(oldEntry, newEntry, obfPanel.obfClasses); 805 this.deobfPanel.deobfClasses.moveClassTree(oldEntry, newEntry, obfPanel.obfClasses);
802 ClassSelectorPackageNode packageNode = this.obfPanel.obfClasses.getPackageNode(oldEntry); 806 ClassSelectorPackageNode packageNode = this.obfPanel.obfClasses.getPackageNode(oldEntry);
@@ -824,5 +828,8 @@ public class Gui {
824 this.deobfPanel.deobfClasses.removeNodeIfEmpty(this.deobfPanel.deobfClasses.getPackageNode(oldEntry)); 828 this.deobfPanel.deobfClasses.removeNodeIfEmpty(this.deobfPanel.deobfClasses.getPackageNode(oldEntry));
825 this.deobfPanel.deobfClasses.reload(); 829 this.deobfPanel.deobfClasses.reload();
826 } 830 }
831
832 this.deobfPanel.deobfClasses.restoreExpansionState(this.deobfPanel.deobfClasses, stateDeobf);
833 this.obfPanel.obfClasses.restoreExpansionState(this.obfPanel.obfClasses, stateObf);
827 } 834 }
828} 835}