diff --git a/PlayWall/src/de/tobias/playpad/VersionUpdater.java b/PlayWall/src/de/tobias/playpad/VersionUpdater.java index 183b998e9cd90623b87e27f53430a5a0ced73fc8..e6cce69341fa072ef98a0a2afdbf5a76f78b7289 100644 --- a/PlayWall/src/de/tobias/playpad/VersionUpdater.java +++ b/PlayWall/src/de/tobias/playpad/VersionUpdater.java @@ -51,7 +51,7 @@ public class VersionUpdater implements UpdateService { Path projectPath = ApplicationUtils.getApplication().getPath(PathType.DOCUMENTS, name); Path newProjectPath = ApplicationUtils.getApplication().getPath(PathType.DOCUMENTS, uuid + Project.FILE_EXTENSION); - Files.createDirectories(newProjectPath); + Files.createDirectories(newProjectPath.getParent()); Files.move(projectPath, newProjectPath); diff --git a/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandler.java b/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandler.java index 86f4617ea6b350352eca1a0b6540cce72cf89102..b8e809db65dabd431dcf244180a80d610e691eed 100644 --- a/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandler.java +++ b/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandler.java @@ -195,7 +195,7 @@ public class ClipAudioHandler extends AudioHandler { } @Override - public void loadMedia() { + public void loadMedia(Path[] paths) { mixer = AudioSystem.getMixer(AudioSystem.getMixerInfo()[0]); DataLine.Info info = new Info(Clip.class, null); diff --git a/PlayWall/src/de/tobias/playpad/audio/JavaFXAudioHandler.java b/PlayWall/src/de/tobias/playpad/audio/JavaFXAudioHandler.java index fe5f86b0ab1ec417e8431d1f733b0ecdd54c1edb..e88b1d7a02f5590263925bde3ec9b3d2f6c37287 100644 --- a/PlayWall/src/de/tobias/playpad/audio/JavaFXAudioHandler.java +++ b/PlayWall/src/de/tobias/playpad/audio/JavaFXAudioHandler.java @@ -89,7 +89,7 @@ public class JavaFXAudioHandler extends AudioHandler implements Equalizable { } @Override - public void loadMedia() { + public void loadMedia(Path[] paths) { Platform.runLater(() -> { if (getContent().getPad().isPadVisible()) { diff --git a/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandler.java b/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandler.java index e375c5e2f14febcc47be7684330bea5ac67dfb83..ecac4b7cf99cccecb711c607943107c78b6551f5 100644 --- a/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandler.java +++ b/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandler.java @@ -208,7 +208,7 @@ public class TinyAudioHandler extends AudioHandler { } @Override - public void loadMedia() { + public void loadMedia(Path[] paths) { initTinySound(); unloadMedia(); diff --git a/PlayWall/src/de/tobias/playpad/pad/content/AudioContent.java b/PlayWall/src/de/tobias/playpad/pad/content/AudioContent.java index 9e2d50338664957373c7f1e6ca4d6a66718e5017..3c83a6b1edf375c331fce038e7a6016870ee1d92 100644 --- a/PlayWall/src/de/tobias/playpad/pad/content/AudioContent.java +++ b/PlayWall/src/de/tobias/playpad/pad/content/AudioContent.java @@ -206,7 +206,7 @@ public class AudioContent extends PadContent implements Pauseable, Durationable, public void loadMedia() { audioHandler = AudioRegistry.geAudioType().createAudioHandler(this); if (Files.exists(path)) { - audioHandler.loadMedia(); + audioHandler.loadMedia(new Path[] { path }); durationProperty.bind(audioHandler.durationProperty()); positionProperty.bind(audioHandler.positionProperty()); diff --git a/PlayWall/src/de/tobias/playpad/viewcontroller/main/MainViewController.java b/PlayWall/src/de/tobias/playpad/viewcontroller/main/MainViewController.java index a1811badf7ce2fcbf7173269c3502048bc7b70f7..446699eb626512236f428c458424e60a0c7ba394 100644 --- a/PlayWall/src/de/tobias/playpad/viewcontroller/main/MainViewController.java +++ b/PlayWall/src/de/tobias/playpad/viewcontroller/main/MainViewController.java @@ -427,6 +427,9 @@ public class MainViewController extends ViewController implements IMainViewContr return false; } + // Mapper Clear Feedback + Profile.currentProfile().getMappings().getActiveMapping().clearFeedback(); + // MIDI Shutdown if (profilSettings.isMidiActive()) { try { @@ -444,13 +447,9 @@ public class MainViewController extends ViewController implements IMainViewContr // Verbindung von Pad und PadView wird getrennt. Zudem wird bei PLAY oder PAUSE auf STOP gesetzt padViewList.forEach(padView -> padView.unconnectPad()); - Worker.shutdown(); - - // Mapper Clear Feedback - Profile.currentProfile().getMappings().getActiveMapping().clearFeedback(); - saveSettings(); + Worker.shutdown(); System.exit(0); return true; } diff --git a/PlayWallCore/src/de/tobias/playpad/audio/AudioHandler.java b/PlayWallCore/src/de/tobias/playpad/audio/AudioHandler.java index 41838d3b73d8fe6afe6e9f9cf562bd87fa82513e..816f19667f7ffc51cf3077f87a14d22f918b7304 100644 --- a/PlayWallCore/src/de/tobias/playpad/audio/AudioHandler.java +++ b/PlayWallCore/src/de/tobias/playpad/audio/AudioHandler.java @@ -1,5 +1,7 @@ package de.tobias.playpad.audio; +import java.nio.file.Path; + import de.tobias.playpad.pad.conntent.PadContent; import javafx.beans.property.ReadOnlyObjectProperty; import javafx.util.Duration; @@ -37,7 +39,7 @@ public abstract class AudioHandler { public abstract boolean isMediaLoaded(); - public abstract void loadMedia(); + public abstract void loadMedia(Path[] paths); public abstract void unloadMedia();