X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model.editor%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Feditor%2Fhandles%2FComponentHandle.java;h=8281501d46c62cd0d24e5517d7ae6a5629248fb3;hb=93b398d6271a538a2a4c9f4de07a3b4a8a2a7fd4;hp=c3afb7017222932b7ac6749ae998ef1e2dbb94d9;hpb=3977f16649531ca3ba345c9cd5ec365e0b804783;p=Mograsim.git 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 c3afb701..8281501d 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 @@ -10,18 +10,22 @@ 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.components.GUIComponent; -import net.mograsim.logic.model.serializing.IdentifierGetter; +import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.components.ModelComponent; +import net.mograsim.logic.model.serializing.IdentifyParams; public class ComponentHandle extends Handle { - public final GUIComponent parent; + private final ViewModelModifiable model; + public final ModelComponent parent; private final static double POS_OFFSET = 2.0d; private final static double LENGTH_OFFSET = POS_OFFSET * 2; boolean selected = false; - public ComponentHandle(GUIComponent parent) + public ComponentHandle(ViewModelModifiable model, ModelComponent parent) { + super(4); + this.model = model; this.parent = parent; Rectangle bounds = parent.getBounds(); setSize(bounds.width, bounds.height); @@ -79,14 +83,14 @@ public class ComponentHandle extends Handle @Override public void reqDelete() { - parent.destroy(); + model.destroyComponent(parent); } @Override public Optional reqCopy(Point refPoint) { return Optional.of(new ComponentInfo(parent.getPosX() - refPoint.x, parent.getPosY() - refPoint.y, Editor.getIdentifier(parent), - parent.getParamsForSerializing(new IdentifierGetter()))); + parent.getParamsForSerializingJSON(new IdentifyParams()))); } @Override