Updated LogicUI to Java 10
[Mograsim.git] / LogicUI / src / era / mi / gui / examples / RSLatchGUIExample.java
index c36ba3a..dc6091f 100644 (file)
@@ -6,7 +6,7 @@ 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.timeline.Timeline;
 import era.mi.logic.wires.Wire;
 import net.haspamelodica.swt.helper.swtobjectwrappers.Point;
 
@@ -18,27 +18,29 @@ public class RSLatchGUIExample
 
        public static void main(String[] args)
        {
-               LogicUIStandalone ui = new LogicUIStandalone();
-               addComponentsAndWires(ui.getLogicUICanvas());
+               Timeline t = new Timeline(11);
+               LogicUIStandalone ui = new LogicUIStandalone(t);
+               addComponentsAndWires(ui.getLogicUICanvas(), t);
                ui.run();
        }
 
-       public static void addComponentsAndWires(LogicUICanvas ui)
+       public static void addComponentsAndWires(LogicUICanvas ui, Timeline t)
        {
-               Simulation.TIMELINE.reset();
-               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);
+               Wire r = new Wire(t, 1, WIRE_DELAY);
+               Wire s = new Wire(t, 1, WIRE_DELAY);
+               Wire t2 = new Wire(t, 1, WIRE_DELAY);
+               Wire t1 = new Wire(t, 1, WIRE_DELAY);
+               Wire q = new Wire(t, 1, WIRE_DELAY);
+               Wire nq = new Wire(t, 1, WIRE_DELAY);
 
-               GUIManualSwitch rIn = ui.addComponent(new GUIManualSwitch(r.createReadWriteEnd()), 100, 100);
-               GUIManualSwitch sIn = ui.addComponent(new GUIManualSwitch(s.createReadWriteEnd()), 100, 200);
-               GUIOrGate or1 = ui.addComponent(new GUIOrGate(OR_DELAY, t1.createReadWriteEnd(), r.createReadOnlyEnd(), nq.createReadOnlyEnd()), 160, 102.5);
-               GUIOrGate or2 = ui.addComponent(new GUIOrGate(OR_DELAY, t2.createReadWriteEnd(), q.createReadOnlyEnd(), s.createReadOnlyEnd()), 160, 192.5);
-               GUINotGate not1 = ui.addComponent(new GUINotGate(NOT_DELAY, t1.createReadOnlyEnd(), q.createReadWriteEnd()), 200, 107.5);
-               GUINotGate not2 = ui.addComponent(new GUINotGate(NOT_DELAY, t2.createReadOnlyEnd(), nq.createReadWriteEnd()), 200, 197.5);
+               GUIManualSwitch rIn = ui.addComponent(new GUIManualSwitch(t, r.createReadWriteEnd()), 100, 100);
+               GUIManualSwitch sIn = ui.addComponent(new GUIManualSwitch(t, s.createReadWriteEnd()), 100, 200);
+               GUIOrGate or1 = ui.addComponent(new GUIOrGate(t, OR_DELAY, t1.createReadWriteEnd(), r.createReadOnlyEnd(), nq.createReadOnlyEnd()),
+                               160, 102.5);
+               GUIOrGate or2 = ui.addComponent(new GUIOrGate(t, OR_DELAY, t2.createReadWriteEnd(), q.createReadOnlyEnd(), s.createReadOnlyEnd()),
+                               160, 192.5);
+               GUINotGate not1 = ui.addComponent(new GUINotGate(t, NOT_DELAY, t1.createReadOnlyEnd(), q.createReadWriteEnd()), 200, 107.5);
+               GUINotGate not2 = ui.addComponent(new GUINotGate(t, NOT_DELAY, t2.createReadOnlyEnd(), nq.createReadWriteEnd()), 200, 197.5);
 
                WireConnectionPoint p1 = ui.addComponent(new WireConnectionPoint(q, 3), 250, 112.5);
                WireConnectionPoint p2 = ui.addComponent(new WireConnectionPoint(nq, 3), 250, 202.5);