Possibility to configure terminal emulator.
[instantlauncher.git] / src / main / java / eu / svjatoslav / instantlauncher / menu / MultiLevelMenu.java
index 3297259..de2e4c5 100755 (executable)
@@ -9,6 +9,8 @@ import java.io.File;
 import java.io.IOException;
 import java.util.ArrayList;
 
+import static eu.svjatoslav.instantlauncher.Utils.executeCommand;
+
 public class MultiLevelMenu implements MenuListener {
 
     private static final int VERTICAL_MENUS_COUNT = 7;
@@ -105,7 +107,7 @@ public class MultiLevelMenu implements MenuListener {
     public void menuItemSelected(final File chosenFile) {
         if (chosenFile.isFile()) {
             if (chosenFile.canExecute()) {
-                instantLauncher.executeCommand(chosenFile.getAbsolutePath());
+                executeCommand(chosenFile.getAbsolutePath());
             } else {
                 boolean fileOpened;
                 try {
@@ -122,6 +124,7 @@ public class MultiLevelMenu implements MenuListener {
         if (chosenFile.isDirectory()) {
             try {
                 instantLauncher.openDirectory(chosenFile.getCanonicalFile());
+                InstantLauncher.exitProgram();
             } catch (IOException e) {
                 e.printStackTrace();
             }
@@ -133,12 +136,8 @@ public class MultiLevelMenu implements MenuListener {
         if (chosenFile.isFile())
             chosenFile.setExecutable(!chosenFile.canExecute());
         else {
-            try {
-                instantLauncher.executeCommand("gnome-terminal", "--working-directory="
-                        + chosenFile.getCanonicalFile().getAbsolutePath());
-            } catch (IOException e) {
-                e.printStackTrace();
-            }
+            instantLauncher.openDirectoryInTerminal(chosenFile);
+            InstantLauncher.exitProgram();
         }
     }
 
@@ -156,13 +155,7 @@ public class MultiLevelMenu implements MenuListener {
 
     @Override
     public void menuItemSelectedAlternative2(File chosenFile) {
-        if (chosenFile.isFile()) {
-            try {
-                instantLauncher.executeCommand("emacs", chosenFile.getCanonicalFile().getAbsolutePath());
-            } catch (IOException e) {
-                e.printStackTrace();
-            }
-        }
+        // TODO: define some middle mouse click functions
     }