From c5f7c7f6a628c133a32b8cf86e56d9832bc7ccdb Mon Sep 17 00:00:00 2001 From: hneemann Date: Thu, 19 May 2016 17:49:34 +0200 Subject: [PATCH] recalculate wires if wires are deleted --- .../de/neemann/digital/draw/elements/Circuit.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/main/java/de/neemann/digital/draw/elements/Circuit.java b/src/main/java/de/neemann/digital/draw/elements/Circuit.java index 2f2a56307..2f91061df 100644 --- a/src/main/java/de/neemann/digital/draw/elements/Circuit.java +++ b/src/main/java/de/neemann/digital/draw/elements/Circuit.java @@ -309,12 +309,21 @@ public class Circuit { if (veIt.next().matches(min, max)) veIt.remove(); + boolean wireDeleted = false; Iterator wIt = wires.iterator(); while (wIt.hasNext()) { Wire w = wIt.next(); - if (w.p1.inside(min, max) || w.p2.inside(min, max)) + if (w.p1.inside(min, max) || w.p2.inside(min, max)) { wIt.remove(); + wireDeleted = true; + } } + + if (wireDeleted) { + WireConsistencyChecker checker = new WireConsistencyChecker(wires); + wires = checker.check(); + } + dotsPresent = false; modified(); }