diff --git a/bin/application/MainWindowController$1.class b/bin/application/MainWindowController$1.class index 40a1aae..f77fdee 100644 Binary files a/bin/application/MainWindowController$1.class and b/bin/application/MainWindowController$1.class differ diff --git a/bin/application/MainWindowController$2.class b/bin/application/MainWindowController$2.class index 44632e2..dfcab11 100644 Binary files a/bin/application/MainWindowController$2.class and b/bin/application/MainWindowController$2.class differ diff --git a/bin/application/MainWindowController$3.class b/bin/application/MainWindowController$3.class index 87cf91a..41334f6 100644 Binary files a/bin/application/MainWindowController$3.class and b/bin/application/MainWindowController$3.class differ diff --git a/bin/application/MainWindowController$4.class b/bin/application/MainWindowController$4.class index d9dc150..5f1d56a 100644 Binary files a/bin/application/MainWindowController$4.class and b/bin/application/MainWindowController$4.class differ diff --git a/bin/application/MainWindowController$5.class b/bin/application/MainWindowController$5.class index 9952fc6..c2a6a71 100644 Binary files a/bin/application/MainWindowController$5.class and b/bin/application/MainWindowController$5.class differ diff --git a/bin/application/MainWindowController$6.class b/bin/application/MainWindowController$6.class index fefd632..f565140 100644 Binary files a/bin/application/MainWindowController$6.class and b/bin/application/MainWindowController$6.class differ diff --git a/bin/application/MainWindowController$7.class b/bin/application/MainWindowController$7.class index 352e75b..e1366ea 100644 Binary files a/bin/application/MainWindowController$7.class and b/bin/application/MainWindowController$7.class differ diff --git a/bin/application/MainWindowController.class b/bin/application/MainWindowController.class index c123012..f7f8c11 100644 Binary files a/bin/application/MainWindowController.class and b/bin/application/MainWindowController.class differ diff --git a/src/application/MainWindowController.java b/src/application/MainWindowController.java index 0400b37..299eb87 100644 --- a/src/application/MainWindowController.java +++ b/src/application/MainWindowController.java @@ -22,6 +22,7 @@ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.math.BigInteger; +import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URISyntaxException; import java.net.URL; @@ -33,6 +34,8 @@ import java.util.Optional; import java.util.Properties; import javax.imageio.ImageIO; +import javax.swing.ProgressMonitor; +import javax.swing.ProgressMonitorInputStream; import org.apache.commons.io.FileUtils; @@ -511,7 +514,6 @@ public class MainWindowController { courseTreeTable.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() { @Override public void changed(ObservableValue observable, Object oldVal, Object newVal){ - // last = selected; //for auto-play selected = courseTreeTable.getSelectionModel().getSelectedIndex(); //get selected item id = idColumn.getCellData(selected); //get name of selected item @@ -660,11 +662,19 @@ public class MainWindowController { @FXML void smmdbDownloadBtnAction(ActionEvent event){ - //TODO implement download - System.out.println("this needs to be implemented ^^"); + String downloadUrl = "http://smmdb.ddns.net/courses/" + id; + //TODO un-rar and place to the right directory try { - URL url = new URL("smmdb.ddns.net/courses/" + id); - } catch (MalformedURLException e) { + HttpURLConnection conn = (HttpURLConnection) new URL(downloadUrl).openConnection(); + ProgressMonitorInputStream pmis = new ProgressMonitorInputStream(null, "Downloading...", conn.getInputStream()); + ProgressMonitor pm = pmis.getProgressMonitor(); + pm.setMillisToDecideToPopup(0); + pm.setMillisToPopup(0); + pm.setMinimum(0); // tell the progress bar that we start at the beginning of the stream + pm.setMaximum(conn.getContentLength()); // tell the progress bar the total number of bytes we are going to read. + FileUtils.copyInputStreamToFile(pmis, new File(getCemuPath() + "/" + id + ".rar")); //download file + "/mlc01/emulatorSave" + System.out.println("downloaded successfull"); + } catch (IOException e) { System.err.println("something went wrong during downloading the course"); e.printStackTrace(); }