summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/gui/elements
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/cuchaz/enigma/gui/elements')
-rw-r--r--src/main/java/cuchaz/enigma/gui/elements/MenuBar.java54
1 files changed, 13 insertions, 41 deletions
diff --git a/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java b/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java
index e988d74..038698b 100644
--- a/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java
+++ b/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java
@@ -17,11 +17,9 @@ public class MenuBar extends JMenuBar {
17 17
18 public final JMenuItem closeJarMenu; 18 public final JMenuItem closeJarMenu;
19 19
20 public final JMenuItem openMappingsJsonMenu;
21 public final JMenuItem openEnigmaMappingsMenu; 20 public final JMenuItem openEnigmaMappingsMenu;
22 21
23 public final JMenuItem saveMappingsMenu; 22 public final JMenuItem saveMappingsMenu;
24 public final JMenuItem saveMappingsJsonMenu;
25 public final JMenuItem saveMappingEnigmaFileMenu; 23 public final JMenuItem saveMappingEnigmaFileMenu;
26 public final JMenuItem saveMappingEnigmaDirectoryMenu; 24 public final JMenuItem saveMappingEnigmaDirectoryMenu;
27 public final JMenuItem saveMappingsSrgMenu; 25 public final JMenuItem saveMappingsSrgMenu;
@@ -64,6 +62,7 @@ public class MenuBar extends JMenuBar {
64 } 62 }
65 menu.addSeparator(); 63 menu.addSeparator();
66 JMenu openMenu = new JMenu("Open Mappings..."); 64 JMenu openMenu = new JMenu("Open Mappings...");
65 menu.add(openMenu);
67 { 66 {
68 JMenuItem item = new JMenuItem("Enigma"); 67 JMenuItem item = new JMenuItem("Enigma");
69 openMenu.add(item); 68 openMenu.add(item);
@@ -80,27 +79,12 @@ public class MenuBar extends JMenuBar {
80 }); 79 });
81 this.openEnigmaMappingsMenu = item; 80 this.openEnigmaMappingsMenu = item;
82 } 81 }
83 menu.add(openMenu);
84 {
85 JMenuItem item = new JMenuItem("JSON (directory)");
86 openMenu.add(item);
87 item.addActionListener(event -> {
88 if (this.gui.jsonMappingsFileChooser.showOpenDialog(this.gui.getFrame()) == JFileChooser.APPROVE_OPTION) {
89 try {
90 this.gui.getController().openJsonMappings(this.gui.jsonMappingsFileChooser.getSelectedFile());
91 } catch (IOException ex) {
92 throw new Error(ex);
93 }
94 }
95 });
96 this.openMappingsJsonMenu = item;
97 }
98 { 82 {
99 JMenuItem item = new JMenuItem("Save Mappings"); 83 JMenuItem item = new JMenuItem("Save Mappings");
100 menu.add(item); 84 menu.add(item);
101 item.addActionListener(event -> { 85 item.addActionListener(event -> {
102 try { 86 try {
103 this.gui.getController().saveMappings(this.gui.jsonMappingsFileChooser.getSelectedFile()); 87 this.gui.getController().saveMappings(this.gui.enigmaMappingsFileChooser.getSelectedFile());
104 } catch (IOException ex) { 88 } catch (IOException ex) {
105 throw new Error(ex); 89 throw new Error(ex);
106 } 90 }
@@ -109,13 +93,15 @@ public class MenuBar extends JMenuBar {
109 this.saveMappingsMenu = item; 93 this.saveMappingsMenu = item;
110 } 94 }
111 JMenu saveMenu = new JMenu("Save Mappings As..."); 95 JMenu saveMenu = new JMenu("Save Mappings As...");
96 menu.add(saveMenu);
112 { 97 {
113 JMenuItem item = new JMenuItem("Enigma (single file)"); 98 JMenuItem item = new JMenuItem("Enigma (single file)");
114 saveMenu.add(item); 99 saveMenu.add(item);
115 item.addActionListener(event -> { 100 item.addActionListener(event -> {
116 if (this.gui.jsonMappingsFileChooser.showSaveDialog(this.gui.getFrame()) == JFileChooser.APPROVE_OPTION) { 101 // TODO: Use a specific file chooser for it
102 if (this.gui.enigmaMappingsFileChooser.showSaveDialog(this.gui.getFrame()) == JFileChooser.APPROVE_OPTION) {
117 try { 103 try {
118 this.gui.getController().saveEnigmaMappings(this.gui.jsonMappingsFileChooser.getSelectedFile(), false); 104 this.gui.getController().saveEnigmaMappings(this.gui.enigmaMappingsFileChooser.getSelectedFile(), false);
119 this.saveMappingsMenu.setEnabled(true); 105 this.saveMappingsMenu.setEnabled(true);
120 } catch (IOException ex) { 106 } catch (IOException ex) {
121 throw new Error(ex); 107 throw new Error(ex);
@@ -128,9 +114,10 @@ public class MenuBar extends JMenuBar {
128 JMenuItem item = new JMenuItem("Enigma (directory)"); 114 JMenuItem item = new JMenuItem("Enigma (directory)");
129 saveMenu.add(item); 115 saveMenu.add(item);
130 item.addActionListener(event -> { 116 item.addActionListener(event -> {
131 if (this.gui.jsonMappingsFileChooser.showSaveDialog(this.gui.getFrame()) == JFileChooser.APPROVE_OPTION) { 117 // TODO: Use a specific file chooser for it
118 if (this.gui.enigmaMappingsFileChooser.showSaveDialog(this.gui.getFrame()) == JFileChooser.APPROVE_OPTION) {
132 try { 119 try {
133 this.gui.getController().saveEnigmaMappings(this.gui.jsonMappingsFileChooser.getSelectedFile(), true); 120 this.gui.getController().saveEnigmaMappings(this.gui.enigmaMappingsFileChooser.getSelectedFile(), true);
134 this.saveMappingsMenu.setEnabled(true); 121 this.saveMappingsMenu.setEnabled(true);
135 } catch (IOException ex) { 122 } catch (IOException ex) {
136 throw new Error(ex); 123 throw new Error(ex);
@@ -140,29 +127,14 @@ public class MenuBar extends JMenuBar {
140 item.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_DOWN_MASK | InputEvent.SHIFT_DOWN_MASK)); 127 item.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_DOWN_MASK | InputEvent.SHIFT_DOWN_MASK));
141 this.saveMappingEnigmaDirectoryMenu = item; 128 this.saveMappingEnigmaDirectoryMenu = item;
142 } 129 }
143 menu.add(saveMenu);
144 {
145 JMenuItem item = new JMenuItem("JSON (directory)");
146 saveMenu.add(item);
147 item.addActionListener(event -> {
148 if (this.gui.jsonMappingsFileChooser.showSaveDialog(this.gui.getFrame()) == JFileChooser.APPROVE_OPTION) {
149 try {
150 this.gui.getController().saveJsonMappings(this.gui.jsonMappingsFileChooser.getSelectedFile());
151 this.saveMappingsMenu.setEnabled(true);
152 } catch (IOException ex) {
153 throw new Error(ex);
154 }
155 }
156 });
157 this.saveMappingsJsonMenu = item;
158 }
159 { 130 {
160 JMenuItem item = new JMenuItem("SRG"); 131 JMenuItem item = new JMenuItem("SRG (single file)");
161 saveMenu.add(item); 132 saveMenu.add(item);
162 item.addActionListener(event -> { 133 item.addActionListener(event -> {
163 if (this.gui.jsonMappingsFileChooser.showSaveDialog(this.gui.getFrame()) == JFileChooser.APPROVE_OPTION) { 134 // TODO: Use a specific file chooser for it
135 if (this.gui.enigmaMappingsFileChooser.showSaveDialog(this.gui.getFrame()) == JFileChooser.APPROVE_OPTION) {
164 try { 136 try {
165 this.gui.getController().saveSRGMappings(this.gui.jsonMappingsFileChooser.getSelectedFile()); 137 this.gui.getController().saveSRGMappings(this.gui.enigmaMappingsFileChooser.getSelectedFile());
166 this.saveMappingsMenu.setEnabled(true); 138 this.saveMappingsMenu.setEnabled(true);
167 } catch (IOException ex) { 139 } catch (IOException ex) {
168 throw new Error(ex); 140 throw new Error(ex);