import java.io.IOException;
-import net.mograsim.logic.model.editor.ui.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
{
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();
}
}
{
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!");
}
}
- 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]));
}
}
}