X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fmodel%2Fcomponents%2Fatomic%2FGUISplitter.java;h=9527279d2a9606dd5f054cb89888865bf92117f4;hb=c202aac61021b9d12e4ac6495001bcd012cecde0;hp=63650a64d8fd3ff514dde762f09af8d3ca49949f;hpb=bbe38c55aaa999d025f534245f9207a88643f6e5;p=Mograsim.git diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java index 63650a64..9527279d 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java @@ -2,9 +2,6 @@ package net.mograsim.logic.model.model.components.atomic; import org.eclipse.swt.SWT; -import com.google.gson.JsonElement; -import com.google.gson.JsonPrimitive; - import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.core.types.BitVectorFormatter; @@ -41,10 +38,10 @@ public class GUISplitter extends GUIComponent { super(model, name); this.logicWidth = logicWidth; - setSize(width, logicWidth * heightPerPin); + setSize(width, (logicWidth - 1) * heightPerPin); addPin(this.inputPin = new Pin(this, "I", logicWidth, PinUsage.TRISTATE, 0, (logicWidth - 1) * heightPerPin / 2)); - double outputHeight = 0; - for (int i = 0; i < logicWidth; i++, outputHeight += 10) + double outputHeight = (logicWidth - 1) * heightPerPin; + for (int i = 0; i < logicWidth; i++, outputHeight -= 10) addPin(new Pin(this, "O" + i, 1, PinUsage.TRISTATE, width, outputHeight)); outputEnds = new ReadEnd[logicWidth]; } @@ -60,8 +57,8 @@ public class GUISplitter extends GUIComponent gc.setForeground(ColorManager.current().toColor(c)); double inLineY = posY + (logicWidth - 1) * heightPerPin / 2; gc.drawLine(posX, inLineY, posX + width / 2, inLineY); - double outputHeight = posY; - for (int i = 0; i < logicWidth; i++, outputHeight += 10) + double outputHeight = posY + (logicWidth - 1) * heightPerPin; + for (int i = 0; i < logicWidth; i++, outputHeight -= 10) { c = BitVectorFormatter.formatAsColor(outputEnds[i]); if (c != null) @@ -78,9 +75,9 @@ public class GUISplitter extends GUIComponent } @Override - public JsonElement getParamsForSerializing(IdentifierGetter idGetter) + public Integer getParamsForSerializing(IdentifierGetter idGetter) { - return new JsonPrimitive(logicWidth); + return logicWidth; } public void setLogicModelBinding(ReadEnd inputEnd, ReadEnd[] outputEnds)