From 8383ddc3f28756fbc7c505586f57165468473be5 Mon Sep 17 00:00:00 2001 From: Daniel Kirschten Date: Thu, 12 Sep 2019 11:12:18 +0200 Subject: [PATCH] Removed legacy getIdentifier method; Editor now can duplicate Mergers --- .../net/mograsim/logic/model/editor/Editor.java | 16 +--------------- .../model/editor/handles/ComponentHandle.java | 6 +++--- 2 files changed, 4 insertions(+), 18 deletions(-) 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 c2697193..90baafb5 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,6 +1,5 @@ package net.mograsim.logic.model.editor; -import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Optional; @@ -24,7 +23,6 @@ import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.ModelWire; import net.mograsim.logic.model.serializing.DeserializedSubmodelComponent; -import net.mograsim.logic.model.serializing.IdentifyParams; import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; import net.mograsim.logic.model.snippets.highlevelstatehandlers.DefaultHighLevelStateHandler; import net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer; @@ -36,7 +34,6 @@ public final class Editor final Set copyBuffer = new HashSet<>(); public final DeserializedSubmodelComponent toBeEdited; public final HandleManager handleManager; - final static Map identifierPerComponent = new HashMap<>(); public final EditorGUI gui; public final StateManager stateManager; private final SaveLoadManager saveManager; @@ -56,8 +53,6 @@ public final class Editor saveManager = new SaveLoadManager(this); dialogManager = new DialogManager(gui.shell); - toBeEdited.submodel.addComponentRemovedListener(c -> identifierPerComponent.remove(c)); - gui.open(); } @@ -173,16 +168,7 @@ public final class Editor private ModelComponent addComponent(String identifier, JsonElement params) { - ModelComponent comp = IndirectModelComponentCreator.createComponent(toBeEdited.getSubmodelModifiable(), identifier, params); - identifierPerComponent.put(comp, identifier); - return comp; - } - - public static String getIdentifier(ModelComponent c) - { - if (identifierPerComponent.containsKey(c)) - return identifierPerComponent.get(c); - return c.getIDForSerializing(new IdentifyParams()); + return IndirectModelComponentCreator.createComponent(toBeEdited.getSubmodelModifiable(), identifier, params); } public void duplicate() 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 77648951..14868e94 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 @@ -9,7 +9,6 @@ import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Font; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; -import net.mograsim.logic.model.editor.Editor; import net.mograsim.logic.model.editor.Editor.ComponentInfo; import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; @@ -95,8 +94,9 @@ public class ComponentHandle extends Handle @Override public Optional reqCopy(Point refPoint) { - return Optional.of(new ComponentInfo(parent.getPosX() - refPoint.x, parent.getPosY() - refPoint.y, Editor.getIdentifier(parent), - parent.getParamsForSerializingJSON(new IdentifyParams()))); + IdentifyParams idParams = new IdentifyParams(); + return Optional.of(new ComponentInfo(parent.getPosX() - refPoint.x, parent.getPosY() - refPoint.y, + parent.getIDForSerializing(idParams), parent.getParamsForSerializingJSON(idParams))); } @Override -- 2.17.1