2 * Instantlauncher. Author: Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
3 * This project is released under Creative Commons Zero (CC0) license.
5 package eu.svjatoslav.instantlauncher;
7 import eu.svjatoslav.instantlauncher.configuration.ConfigurationManager;
8 import eu.svjatoslav.instantlauncher.configuration.FileAssociation;
11 import java.io.IOException;
13 import static eu.svjatoslav.instantlauncher.Utils.runOpeningApplication;
15 public class InstantLauncher {
17 private final MainFrame mainFrame;
18 public ConfigurationManager configurationManager;
20 public InstantLauncher() throws IOException {
21 configurationManager = new ConfigurationManager();
22 mainFrame = new MainFrame(this);
25 public static void exitProgram() {
30 * @return <code>true</code> if file was opened. <code>false</code> if
33 public boolean openFile(final File file) {
34 FileAssociation fileAssociation = configurationManager.getConfiguration().findFileAssociation(file);
35 if (fileAssociation == null) return false;
37 runOpeningApplication(fileAssociation.command, file);
45 public void openDirectory(File chosenFile) {
46 runOpeningApplication(configurationManager.getConfiguration().directoryOpenCommand, chosenFile);
49 public void openDirectoryInTerminal(File chosenFile) {
50 runOpeningApplication(configurationManager.getConfiguration().directoryTerminalOpenCommand, chosenFile);