X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.ui.am2900%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fui%2Fmodel%2Fcomponents%2Fmi%2Fnandbased%2FGUIxor.java;fp=net.mograsim.logic.ui.am2900%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fui%2Fmodel%2Fcomponents%2Fmi%2Fnandbased%2FGUIxor.java;h=0000000000000000000000000000000000000000;hb=b5d8c2d71e27350ea7c9314e40df5bb0584271cd;hp=2fb100b96a85643dc3552f24b318cc3310fd670a;hpb=69cb6725ef670328959d55649257ded6ac924b33;p=Mograsim.git diff --git a/net.mograsim.logic.ui.am2900/src/net/mograsim/logic/ui/model/components/mi/nandbased/GUIxor.java b/net.mograsim.logic.ui.am2900/src/net/mograsim/logic/ui/model/components/mi/nandbased/GUIxor.java deleted file mode 100644 index 2fb100b9..00000000 --- a/net.mograsim.logic.ui.am2900/src/net/mograsim/logic/ui/model/components/mi/nandbased/GUIxor.java +++ /dev/null @@ -1,70 +0,0 @@ -package net.mograsim.logic.ui.model.components.mi.nandbased; - -import net.haspamelodica.swt.helper.swtobjectwrappers.Point; -import net.mograsim.logic.ui.model.ViewModelModifiable; -import net.mograsim.logic.ui.model.components.atomic.GUINandGate; -import net.mograsim.logic.ui.model.components.submodels.SimpleRectangularSubmodelComponent; -import net.mograsim.logic.ui.model.wires.GUIWire; -import net.mograsim.logic.ui.model.wires.Pin; -import net.mograsim.logic.ui.model.wires.WireCrossPoint; -import net.mograsim.logic.ui.serializing.IndirectGUIComponentCreator; - -public class GUIxor extends SimpleRectangularSubmodelComponent -{ - public GUIxor(ViewModelModifiable model) - { - this(model, null); - } - - public GUIxor(ViewModelModifiable model, String name) - { - super(model, 1, "GUIxor", name); - setSubmodelScale(.4); - setInputPins("A", "B"); - setOutputPins("Y"); - initSubmodelComponents(); - } - - @SuppressWarnings("unused") // for GUIWires being created - private void initSubmodelComponents() - { - Pin A = getSubmodelPin("A"); - Pin B = getSubmodelPin("B"); - Pin Y = getSubmodelPin("Y"); - - GUINandGate nandAB = new GUINandGate(submodelModifiable, 1); - GUINandGate nandYA = new GUINandGate(submodelModifiable, 1); - GUINandGate nandYB = new GUINandGate(submodelModifiable, 1); - GUINandGate nandY = new GUINandGate(submodelModifiable, 1); - - WireCrossPoint cpA = new WireCrossPoint(submodelModifiable, 1); - WireCrossPoint cpB = new WireCrossPoint(submodelModifiable, 1); - WireCrossPoint cpAB = new WireCrossPoint(submodelModifiable, 1); - - nandAB.moveTo(7.5, 15); - nandYA.moveTo(35, 2.5); - nandYB.moveTo(35, 27.5); - nandY.moveTo(62.5, 15); - cpA.moveCenterTo(5, 12.5); - cpB.moveCenterTo(5, 37.5); - cpAB.moveCenterTo(30, 25); - - new GUIWire(submodelModifiable, A, cpA, new Point[0]); - new GUIWire(submodelModifiable, B, cpB, new Point[0]); - new GUIWire(submodelModifiable, cpA, nandAB.getPin("A"), new Point(5, 20)); - new GUIWire(submodelModifiable, cpB, nandAB.getPin("B"), new Point(5, 30)); - new GUIWire(submodelModifiable, nandAB.getPin("Y"), cpAB); - new GUIWire(submodelModifiable, cpAB, nandYA.getPin("B"), new Point(30, 17.5)); - new GUIWire(submodelModifiable, cpAB, nandYB.getPin("A"), new Point(30, 32.5)); - new GUIWire(submodelModifiable, cpA, nandYA.getPin("A"), new Point(5, 7.5)); - new GUIWire(submodelModifiable, cpB, nandYB.getPin("B"), new Point(5, 42.5)); - new GUIWire(submodelModifiable, nandYA.getPin("Y"), nandY.getPin("A")); - new GUIWire(submodelModifiable, nandYB.getPin("Y"), nandY.getPin("B")); - new GUIWire(submodelModifiable, nandY.getPin("Y"), Y); - } - - static - { - IndirectGUIComponentCreator.setComponentSupplier(GUIxor.class.getCanonicalName(), (m, p, n) -> new GUIxor(m, n)); - } -} \ No newline at end of file