X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Finstantlauncher%2FInstantLauncher.java;h=ae6ce503a110ef2ed212e4c0478c2fb26da9a383;hb=69d16a6029766455f86b1f23702a1602bdc3eb24;hp=b13b58537832e3403e8478db62ce69fe7ed5f904;hpb=b72db77c2582c6eb3042dc2df08b995ef38a6a45;p=instantlauncher.git
diff --git a/src/main/java/eu/svjatoslav/instantlauncher/InstantLauncher.java b/src/main/java/eu/svjatoslav/instantlauncher/InstantLauncher.java
index b13b585..ae6ce50 100755
--- a/src/main/java/eu/svjatoslav/instantlauncher/InstantLauncher.java
+++ b/src/main/java/eu/svjatoslav/instantlauncher/InstantLauncher.java
@@ -1,28 +1,50 @@
package eu.svjatoslav.instantlauncher;
-import java.io.FileNotFoundException;
+import eu.svjatoslav.commons.gui.dialog.ExceptionDialog;
+import eu.svjatoslav.instantlauncher.configuration.ConfigurationManager;
+import eu.svjatoslav.instantlauncher.configuration.FileAssociation;
+
+import java.io.File;
import java.io.IOException;
-import org.apache.log4j.Logger;
+import static eu.svjatoslav.instantlauncher.Utils.runOpeningApplication;
public class InstantLauncher {
- public Configuration configuration;
+ private final MainFrame mainFrame;
+ public ConfigurationManager configurationManager;
- FileAssociationManager associationManager = new FileAssociationManager();
+ public InstantLauncher() throws IOException {
+ configurationManager = new ConfigurationManager();
+ mainFrame = new MainFrame(this);
+ }
- public static final Logger LOGGER = Logger.getLogger(InstantLauncher.class);
+ public static void exitProgram() {
+ System.exit(0);
+ }
- public void run() throws FileNotFoundException, IOException {
- configuration = new Configuration();
+ /**
+ * @return true
if file was opened. false
if
+ * unknown file type.
+ */
+ public boolean openFile(final File file) {
+ FileAssociation fileAssociation = configurationManager.getConfiguration().findFileAssociation(file);
+ if (fileAssociation == null) return false;
- final MainFrame mainFrame = new MainFrame(this);
+ runOpeningApplication(fileAssociation.command, file);
+ return true;
+ }
+
+ public void run() {
mainFrame.show();
}
- public static void exitProgram() {
- LOGGER.info("Closing InstantLauncher");
- System.exit(0);
+ public void openDirectory(File chosenFile) {
+ runOpeningApplication(configurationManager.getConfiguration().directoryOpenCommand, chosenFile);
+ }
+
+ public void openDirectoryInTerminal(File chosenFile) {
+ runOpeningApplication(configurationManager.getConfiguration().directoryTerminalOpenCommand, chosenFile);
}
}