X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model.editor%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Feditor%2Fhandles%2FWireHandle.java;h=839c2b5b733532991232ced408242bfc03513222;hb=8bed58cd47f4e53a0a83e066d38864aa6875502f;hp=d5e80c83b18e461dc1c846ea976a5aa878b4e942;hpb=93b398d6271a538a2a4c9f4de07a3b4a8a2a7fd4;p=Mograsim.git diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/WireHandle.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/WireHandle.java index d5e80c83..839c2b5b 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/WireHandle.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/WireHandle.java @@ -9,7 +9,7 @@ import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.model.editor.states.EditorState; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.wires.ModelWire; public class WireHandle extends Handle @@ -17,10 +17,10 @@ public class WireHandle extends Handle private boolean selected = false; private final static double WIDTH = 2.0; private final static double WIDTH_SQUARED = WIDTH * WIDTH; - private final ViewModelModifiable model; + private final LogicModelModifiable model; public final ModelWire parent; - public WireHandle(ViewModelModifiable model, ModelWire parent) + public WireHandle(LogicModelModifiable model, ModelWire parent) { super(5); this.model = model; @@ -71,7 +71,9 @@ public class WireHandle extends Handle @Override public void reqDelete() { - model.destroyWire(parent); + // this wire could already be removed implicitly when removing a selection containing both wires and components + if (model.getWireByName(parent.name) != null) + model.destroyWire(parent); } @Override