X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=LogicUI%2Fsrc%2Fera%2Fmi%2Fgui%2Fexamples%2FRSLatchGUIExample.java;h=4aec4cd8229f3a4489b82ecc4d7fa0a0aba5efb9;hb=da0a4b7d0619283bb4384091356ce3f105c84e78;hp=3f048dd86e5492c4011799bf994163e23348fb30;hpb=e0731f62800e4b2d8a77c759c1b204f9ece0e852;p=Mograsim.git diff --git a/LogicUI/src/era/mi/gui/examples/RSLatchGUIExample.java b/LogicUI/src/era/mi/gui/examples/RSLatchGUIExample.java index 3f048dd8..4aec4cd8 100644 --- a/LogicUI/src/era/mi/gui/examples/RSLatchGUIExample.java +++ b/LogicUI/src/era/mi/gui/examples/RSLatchGUIExample.java @@ -1,46 +1,49 @@ package era.mi.gui.examples; -import era.mi.gui.LogicUI; +import era.mi.gui.LogicUICanvas; +import era.mi.gui.LogicUIStandalone; import era.mi.gui.components.GUIManualSwitch; import era.mi.gui.components.GUINotGate; import era.mi.gui.components.GUIOrGate; import era.mi.gui.wires.WireConnectionPoint; import era.mi.logic.Simulation; -import era.mi.logic.wires.WireArray; +import era.mi.logic.wires.Wire; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; public class RSLatchGUIExample { - private static final int WIRE_DELAY = 40; - private static final int OR_DELAY = 100; - private static final int NOT_DELAY = 100; + private static final int WIRE_DELAY = 10; + private static final int OR_DELAY = 50; + private static final int NOT_DELAY = 50; public static void main(String[] args) { - LogicUI ui = new LogicUI(); - initComponents(ui); + LogicUIStandalone ui = new LogicUIStandalone(); + initComponents(ui.getLogicUICanvas()); ui.run(); } - private static void initComponents(LogicUI ui) + private static void initComponents(LogicUICanvas ui) { Simulation.TIMELINE.reset(); - WireArray r = new WireArray(1, WIRE_DELAY); - WireArray s = new WireArray(1, WIRE_DELAY); - WireArray t2 = new WireArray(1, WIRE_DELAY); - WireArray t1 = new WireArray(1, WIRE_DELAY); - WireArray q = new WireArray(1, WIRE_DELAY); - WireArray nq = new WireArray(1, WIRE_DELAY); + Wire r = new Wire(1, WIRE_DELAY); + Wire s = new Wire(1, WIRE_DELAY); + Wire t2 = new Wire(1, WIRE_DELAY); + Wire t1 = new Wire(1, WIRE_DELAY); + Wire q = new Wire(1, WIRE_DELAY); + Wire nq = new Wire(1, WIRE_DELAY); - GUIManualSwitch rIn = ui.addComponent(new GUIManualSwitch(r), 100, 100); - GUIManualSwitch sIn = ui.addComponent(new GUIManualSwitch(s), 100, 200); - GUIOrGate or1 = ui.addComponent(new GUIOrGate(OR_DELAY, t1, r, nq), 160, 102.5); - GUIOrGate or2 = ui.addComponent(new GUIOrGate(OR_DELAY, t2, q, s), 160, 192.5); - GUINotGate not1 = ui.addComponent(new GUINotGate(NOT_DELAY, t1, q), 200, 107.5); - GUINotGate not2 = ui.addComponent(new GUINotGate(NOT_DELAY, t2, nq), 200, 197.5); + GUIManualSwitch rIn = ui.addComponent(new GUIManualSwitch(r.createEnd()), 100, 100); + GUIManualSwitch sIn = ui.addComponent(new GUIManualSwitch(s.createEnd()), 100, 200); + GUIOrGate or1 = ui.addComponent(new GUIOrGate(OR_DELAY, t1.createEnd(), r.createReadOnlyEnd(), nq.createReadOnlyEnd()), 160, 102.5); + GUIOrGate or2 = ui.addComponent(new GUIOrGate(OR_DELAY, t2.createEnd(), q.createReadOnlyEnd(), s.createReadOnlyEnd()), 160, 192.5); + GUINotGate not1 = ui.addComponent(new GUINotGate(NOT_DELAY, t1.createReadOnlyEnd(), q.createEnd()), 200, 107.5); + GUINotGate not2 = ui.addComponent(new GUINotGate(NOT_DELAY, t2.createReadOnlyEnd(), nq.createEnd()), 200, 197.5); - WireConnectionPoint p1 = ui.addComponent(new WireConnectionPoint(q, 2), 250, 112.5); - WireConnectionPoint p2 = ui.addComponent(new WireConnectionPoint(nq, 2), 250, 202.5); + WireConnectionPoint p1 = ui.addComponent(new WireConnectionPoint(q, 3), 250, 112.5); + WireConnectionPoint p2 = ui.addComponent(new WireConnectionPoint(nq, 3), 250, 202.5); + WireConnectionPoint o1 = ui.addComponent(new WireConnectionPoint(q, 1), 270, 112.5); + WireConnectionPoint o2 = ui.addComponent(new WireConnectionPoint(nq, 1), 270, 202.5); ui.addWire(rIn, 0, or1, 0); ui.addWire(sIn, 0, or2, 1); @@ -50,5 +53,7 @@ public class RSLatchGUIExample ui.addWire(not2, 1, p2, 0); ui.addWire(p1, 1, or2, 0, new Point(250, 130), new Point(140, 185), new Point(140, 197.5)); ui.addWire(p2, 1, or1, 1, new Point(250, 185), new Point(140, 130), new Point(140, 117.5)); + ui.addWire(p1, 2, o1, 0); + ui.addWire(p2, 2, o2, 0); } } \ No newline at end of file