X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model.editor%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Feditor%2FSaveLoadManager.java;h=fa2c8a1d4bd7510fcc157550d73a6b9fc1e289d6;hb=878d036669f4aa9d0c332ced43da3a08b94655e9;hp=848227bc0b1b9af9393391528888e910958fc2d0;hpb=47ea68ed5c444dd14864412639f6a6fd60ab8a0f;p=Mograsim.git diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/SaveLoadManager.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/SaveLoadManager.java index 848227bc..fa2c8a1d 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/SaveLoadManager.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/SaveLoadManager.java @@ -2,11 +2,10 @@ package net.mograsim.logic.model.editor; import java.io.IOException; -import net.mograsim.logic.model.editor.DialogManager.InteractiveDialog; +import net.mograsim.logic.model.editor.ui.DialogManager; import net.mograsim.logic.model.model.ViewModelModifiable; import net.mograsim.logic.model.serializing.DeserializedSubmodelComponent; -import net.mograsim.logic.model.serializing.SubmodelComponentDeserializer; -import net.mograsim.logic.model.util.JsonHandler; +import net.mograsim.logic.model.serializing.SubmodelComponentSerializer; public class SaveLoadManager { @@ -28,12 +27,10 @@ public class SaveLoadManager public void openSaveAsDialog() { - InteractiveDialog d = new InteractiveDialog("Save as...", "Save", "Cancel", "Path"); - d.open(); - - if(InteractiveDialog.InteractiveDialogState.ACCEPTED.equals(d.getState())) + String result[] = DialogManager.openMultiTextDialog("Save as...", "Save", "Cancel", "Path"); + if (result != null) { - savePath = d.getText(); + savePath = result[0]; innerSave(); } } @@ -42,13 +39,14 @@ public class SaveLoadManager { try { - JsonHandler.writeJson(editor.toBeEdited.calculateParams(c -> + SubmodelComponentSerializer.serialize(editor.toBeEdited, c -> { if (Editor.identifierPerComponent.containsKey(c)) return Editor.identifierPerComponent.get(c); return "class:" + c.getClass().getCanonicalName(); - }), savePath); - } catch (IOException e) + }, savePath); + } + catch (IOException e) { savePath = null; System.err.println("Failed to save component!"); @@ -56,14 +54,12 @@ public class SaveLoadManager } } - public static void openLoadDialog() + public static void openLoadDialog() throws IOException { - InteractiveDialog load = new InteractiveDialog("Load Component...", "Load", "Cancel", "Path"); - load.open(); - if(InteractiveDialog.InteractiveDialogState.ACCEPTED.equals(load.getState())) + String[] result = DialogManager.openMultiTextDialog("Load Component...", "Load", "Cancel", "Path"); + if (result != null) { - new Editor((DeserializedSubmodelComponent) SubmodelComponentDeserializer - .create(new ViewModelModifiable(), load.getText())); + new Editor((DeserializedSubmodelComponent) SubmodelComponentSerializer.deserialize(new ViewModelModifiable(), result[0])); } } }