X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=LogicUI%2Fsrc%2Fera%2Fmi%2Fgui%2Fmodel%2Fcomponents%2FGUIManualSwitch.java;fp=LogicUI%2Fsrc%2Fera%2Fmi%2Fgui%2Fmodel%2Fcomponents%2FGUIManualSwitch.java;h=c45224ab6df513fbd1d1ae6953d45528c2702df0;hb=d27165bc7b5dcff6c1e3d7f88f7195c5418ab9df;hp=6008329c0aa2cf41fedb1d0e780845ed03b8380a;hpb=86f2e11d28a4100a7fe142e103b7b5eeb9de4214;p=Mograsim.git diff --git a/LogicUI/src/era/mi/gui/model/components/GUIManualSwitch.java b/LogicUI/src/era/mi/gui/model/components/GUIManualSwitch.java index 6008329c..c45224ab 100644 --- a/LogicUI/src/era/mi/gui/model/components/GUIManualSwitch.java +++ b/LogicUI/src/era/mi/gui/model/components/GUIManualSwitch.java @@ -16,6 +16,8 @@ public class GUIManualSwitch extends GUIComponent private static final double height = 15; private static final double fontHeight = 5; + private final Pin outputPin; + private ManualSwitch logicSwitch; private ReadEnd end; @@ -23,19 +25,22 @@ public class GUIManualSwitch extends GUIComponent { super(model); setSize(width, height); - addPin(new Pin(this, 1, width, height / 2)); + addPin(this.outputPin = new Pin(this, 1, width, height / 2)); } @Override public void render(GeneralGC gc, Rectangle visibleRegion) { - gc.drawRectangle(0, 0, width, height); + double posX = getBounds().x; + double posY = getBounds().y; + + gc.drawRectangle(posX, posY, width, height); String label = BitVectorFormatter.formatValueAsString(end); Font oldFont = gc.getFont(); Font labelFont = new Font(oldFont.getName(), fontHeight, oldFont.getStyle()); gc.setFont(labelFont); Point textExtent = gc.textExtent(label); - gc.drawText(label, (width - textExtent.x) / 2, (height - textExtent.y) / 2, true); + gc.drawText(label, posX + (width - textExtent.x) / 2, posY + (height - textExtent.y) / 2, true); gc.setFont(oldFont); } @@ -53,4 +58,9 @@ public class GUIManualSwitch extends GUIComponent logicSwitch.toggle(); return true; } + + public Pin getOutputPin() + { + return outputPin; + } } \ No newline at end of file