X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=LogicUI%2Fsrc%2Fera%2Fmi%2Fgui%2Fcomponents%2FGUIOrGate.java;h=6eac295733da0961f98e13746f51b924f0372790;hb=6d944b4deae46eef98beabdea0dab90c455e14a8;hp=4ca09f58860748d69c79b7392498faf196128eda;hpb=d3a382377768fdb1434d5baebf73c9413e61e46f;p=Mograsim.git diff --git a/LogicUI/src/era/mi/gui/components/GUIOrGate.java b/LogicUI/src/era/mi/gui/components/GUIOrGate.java index 4ca09f58..6eac2957 100644 --- a/LogicUI/src/era/mi/gui/components/GUIOrGate.java +++ b/LogicUI/src/era/mi/gui/components/GUIOrGate.java @@ -6,7 +6,8 @@ import java.util.Collections; import java.util.List; import era.mi.logic.components.gates.OrGate; -import era.mi.logic.wires.WireArray; +import era.mi.logic.wires.Wire.ReadEnd; +import era.mi.logic.wires.Wire.ReadWriteEnd; import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Font; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; @@ -14,35 +15,35 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; public class GUIOrGate extends OrGate implements BasicGUIComponent { - private static final String LABEL = "\u22651";//>=1 + private static final String LABEL = "\u22651";// >=1 - private final int inputCount; - private final double height; - private final List connectedWireArrays; - private final List wireArrayConnectionPoints; + private final int inputCount; + private final double height; + private final List connectedWireEnds; + private final List WireEndConnectionPoints; - public GUIOrGate(int processTime, WireArray out, WireArray... in) + public GUIOrGate(int processTime, ReadWriteEnd out, ReadEnd... in) { super(processTime, out, in); - List connectedWireArraysModifiable = new ArrayList<>(); - List wireArrayConnectionPointsModifiable = new ArrayList<>(); + List connectedWireEndsModifiable = new ArrayList<>(); + List WireEndConnectionPointsModifiable = new ArrayList<>(); this.inputCount = in.length; this.height = inputCount * 10; { - connectedWireArraysModifiable.addAll(Arrays.asList(in)); + connectedWireEndsModifiable.addAll(Arrays.asList(in)); double inputHeight = 5; - for(int i = 0; i < inputCount; i ++, inputHeight += 10) - wireArrayConnectionPointsModifiable.add(new Point(0, inputHeight)); + for (int i = 0; i < inputCount; i++, inputHeight += 10) + WireEndConnectionPointsModifiable.add(new Point(0, inputHeight)); } - connectedWireArraysModifiable.add(out); - wireArrayConnectionPointsModifiable.add(new Point(20, height / 2)); + connectedWireEndsModifiable.add(out); + WireEndConnectionPointsModifiable.add(new Point(20, height / 2)); - this.connectedWireArrays = Collections.unmodifiableList(connectedWireArraysModifiable); - this.wireArrayConnectionPoints = Collections.unmodifiableList(wireArrayConnectionPointsModifiable); + this.connectedWireEnds = Collections.unmodifiableList(connectedWireEndsModifiable); + this.WireEndConnectionPoints = Collections.unmodifiableList(WireEndConnectionPointsModifiable); } @Override @@ -50,32 +51,34 @@ public class GUIOrGate extends OrGate implements BasicGUIComponent { return new Rectangle(0, 0, 20, height); } + @Override public void render(GeneralGC gc) { - gc.drawRectangle(0, 0, 17, height); + gc.drawRectangle(0, 0, 20, height); Font oldFont = gc.getFont(); Font labelFont = new Font(oldFont.getName(), 5, oldFont.getStyle()); gc.setFont(labelFont); Point textExtent = gc.textExtent(LABEL); - gc.drawText(LABEL, 8.5 - textExtent.x / 2, (height - textExtent.y) / 2, true); + gc.drawText(LABEL, 10 - textExtent.x / 2, (height - textExtent.y) / 2, true); gc.setFont(oldFont); - gc.drawOval(17, height / 2 - 1.5, 3, 3); } @Override - public int getConnectedWireArraysCount() + public int getConnectedWireEndsCount() { - return connectedWireArrays.size(); + return connectedWireEnds.size(); } + @Override - public WireArray getConnectedWireArray(int connectionIndex) + public ReadEnd getConnectedWireEnd(int connectionIndex) { - return connectedWireArrays.get(connectionIndex); + return connectedWireEnds.get(connectionIndex); } + @Override - public Point getWireArrayConnectionPoint(int connectionI) + public Point getWireEndConnectionPoint(int connectionI) { - return wireArrayConnectionPoints.get(connectionI); + return WireEndConnectionPoints.get(connectionI); } } \ No newline at end of file