From f87464acdb28197031f7235e60ed7de1ac206723 Mon Sep 17 00:00:00 2001 From: Daniel Kirschten Date: Mon, 15 Jul 2019 16:35:55 +0200 Subject: [PATCH] Adjusted editor to changes made in logic.model --- .../model/editor/EditableSubmodelComponent.java | 2 +- .../net/mograsim/logic/model/editor/Editor.java | 3 ++- .../logic/model/editor/SaveLoadManager.java | 12 +++++------- .../model/editor/handles/ComponentHandle.java | 2 +- .../logic/model/editor/ui/EditorCanvas.java | 2 +- .../DeserializedSubmodelComponent.java | 15 +++++++++++++++ 6 files changed, 25 insertions(+), 11 deletions(-) diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/EditableSubmodelComponent.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/EditableSubmodelComponent.java index fac23049..42e2a92c 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/EditableSubmodelComponent.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/EditableSubmodelComponent.java @@ -20,7 +20,7 @@ public class EditableSubmodelComponent extends DeserializedSubmodelComponent public EditableSubmodelComponent(ViewModelModifiable model, String label) { - super(model, label); //TODO: set name properly + super(model, label, null, null); //TODO: set name properly this.label = label; setSubmodelScale(0.2); addSubmodelInterface(new MovablePin(this, "A Pin", 1, 0, 10)); diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/Editor.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/Editor.java index 37efbae2..e4c92928 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/Editor.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/Editor.java @@ -1,5 +1,6 @@ package net.mograsim.logic.model.editor; +import java.io.IOException; import java.util.HashMap; import java.util.HashSet; import java.util.Map; @@ -225,7 +226,7 @@ public final class Editor } } - public static void main(String[] args) + public static void main(String[] args) throws IOException { SaveLoadManager.openLoadDialog(); } 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 f4a2eca4..5b19d3d6 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 @@ -5,8 +5,7 @@ import java.io.IOException; 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 { @@ -40,12 +39,12 @@ 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); + }, savePath); } catch (IOException e) { savePath = null; @@ -54,13 +53,12 @@ public class SaveLoadManager } } - public static void openLoadDialog() + public static void openLoadDialog() throws IOException { String[] result = DialogManager.openMultiTextDialog("Load Component...", "Load", "Cancel", "Path"); if(result != null) { - new Editor((DeserializedSubmodelComponent) SubmodelComponentDeserializer - .create(new ViewModelModifiable(), result[0])); + new Editor((DeserializedSubmodelComponent) SubmodelComponentSerializer.deserialize(new ViewModelModifiable(), result[0])); } } } diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/ComponentHandle.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/ComponentHandle.java index 52b634da..04b925d1 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/ComponentHandle.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/ComponentHandle.java @@ -85,7 +85,7 @@ public class ComponentHandle extends Handle public Optional reqCopy(Point refPoint) { return Optional.of(new ComponentInfo(parent.getPosX() - refPoint.x, parent.getPosY() - refPoint.y, - Editor.getIdentifier(parent), parent.getParams())); + Editor.getIdentifier(parent), parent.getParamsForSerializing())); } @Override diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/ui/EditorCanvas.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/ui/EditorCanvas.java index 357e88ff..ac37e769 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/ui/EditorCanvas.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/ui/EditorCanvas.java @@ -36,7 +36,7 @@ public class EditorCanvas extends LogicUICanvas // canvas TranslatedGC tgc = new TranslatedGC(gc, 0.0d, 0.0d, 1 / editor.toBeEdited.getSubmodelScale(), false); - editor.toBeEdited.outlineRenderer.render(tgc, new Rectangle(-offX / zoom, -offY / zoom, gW / zoom, gH / zoom)); + editor.toBeEdited.getOutlineRenderer().render(tgc, new Rectangle(-offX / zoom, -offY / zoom, gW / zoom, gH / zoom)); handles.forEach(h -> h.render(gc, visibleRegion)); }); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/DeserializedSubmodelComponent.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/DeserializedSubmodelComponent.java index 8109a37f..5f7b084f 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/DeserializedSubmodelComponent.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/DeserializedSubmodelComponent.java @@ -73,16 +73,31 @@ public class DeserializedSubmodelComponent extends SubmodelComponent this.outlineRenderer = outlineRenderer; } + public Renderer getOutlineRenderer() + { + return outlineRenderer; + } + public void setSymbolRenderer(Renderer symbolRenderer) { this.symbolRenderer = symbolRenderer; } + public Renderer getSymbolRenderer() + { + return symbolRenderer; + } + public void setHighLevelStateHandler(HighLevelStateHandler highLevelStateHandler) { this.highLevelStateHandler = highLevelStateHandler; } + public HighLevelStateHandler getHighLevelStateHandler() + { + return highLevelStateHandler; + } + public ViewModelModifiable getSubmodelModifiable() { return submodelModifiable; -- 2.17.1