]> ruin.nu Git - moosique.git/blobdiff - MooMenu.java
no message
[moosique.git] / MooMenu.java
index 892e7658a93343943721748edf1af73a189d4303..ab055a9a1959046e361f0f16b219b6596023070d 100644 (file)
@@ -139,6 +139,7 @@ public class MooMenu extends JMenuBar implements ActionListener {
                if(command == "New") {
                        Moosique.clearSequence();
                } else if (command == "Open...") {
+                       // Shows a file chooser. If shown previously, starts in the current directory.
                        if (directory != null) {
                                chooser = new JFileChooser(directory);
                        } else {
@@ -146,13 +147,17 @@ public class MooMenu extends JMenuBar implements ActionListener {
                        }
                        chooser.addChoosableFileFilter(new MidiFileFilter());
                        int returnVal = chooser.showOpenDialog(this);
-                       if(returnVal == JFileChooser.APPROVE_OPTION && isMidiFile(chooser.getSelectedFile())) {
+
+                       // Stores the current directory and loads the selected file.
+                       File file = chooser.getSelectedFile();
+                       if(returnVal == JFileChooser.APPROVE_OPTION && isMidiFile(file)) {
                                directory = chooser.getSelectedFile().getParentFile();
                                Moosique.load(chooser.getSelectedFile().getAbsolutePath());
                        }
                } else if (command == "Save") {
                        Moosique.save();
                } else if (command == "Save as...") {
+                       // Shows a file chooser. If shown previously, starts in the current directory.
                        if (directory != null) {
                                chooser = new JFileChooser(directory);
                        } else {
@@ -160,9 +165,12 @@ public class MooMenu extends JMenuBar implements ActionListener {
                        }
                        chooser.addChoosableFileFilter(new MidiFileFilter());
                        int returnVal = chooser.showSaveDialog(this);
-                       if(returnVal == JFileChooser.APPROVE_OPTION && isMidiFile(chooser.getSelectedFile())) {
-                               directory = chooser.getSelectedFile().getParentFile();
-                               Moosique.saveAs(chooser.getSelectedFile().getAbsolutePath());
+
+                       // Stores the current directory and loads the selected file.
+                       File file = chooser.getSelectedFile();
+                       if(returnVal == JFileChooser.APPROVE_OPTION && isMidiFile(file)) {
+                               directory = file.getParentFile();
+                               Moosique.saveAs(file.getAbsolutePath());
                        }
                } else if (command == "Exit") {
                        Moosique.quit();