X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.ui%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fui%2Fmodeladapter%2Fcomponentadapters%2FBitDisplayAdapter.java;fp=net.mograsim.logic.ui%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fui%2Fmodeladapter%2Fcomponentadapters%2FBitDisplayAdapter.java;h=cdf10cc857ff5a733b9758b3760c88ec6aabda63;hb=41d70703ef1579e85a0965bd1e09cac4b47d52c1;hp=0000000000000000000000000000000000000000;hpb=10a471c1a0bdc5fbab0372db340ca3b0c0ec9d11;p=Mograsim.git diff --git a/net.mograsim.logic.ui/src/net/mograsim/logic/ui/modeladapter/componentadapters/BitDisplayAdapter.java b/net.mograsim.logic.ui/src/net/mograsim/logic/ui/modeladapter/componentadapters/BitDisplayAdapter.java new file mode 100644 index 00000000..cdf10cc8 --- /dev/null +++ b/net.mograsim.logic.ui/src/net/mograsim/logic/ui/modeladapter/componentadapters/BitDisplayAdapter.java @@ -0,0 +1,31 @@ +package net.mograsim.logic.ui.modeladapter.componentadapters; + +import java.util.Map; + +import net.mograsim.logic.core.components.BitDisplay; +import net.mograsim.logic.core.components.Component; +import net.mograsim.logic.core.timeline.Timeline; +import net.mograsim.logic.core.wires.Wire; +import net.mograsim.logic.core.wires.Wire.ReadEnd; +import net.mograsim.logic.ui.model.components.GUIBitDisplay; +import net.mograsim.logic.ui.model.wires.Pin; +import net.mograsim.logic.ui.modeladapter.LogicModelParameters; + +public class BitDisplayAdapter implements ComponentAdapter +{ + @Override + public Class getSupportedClass() + { + return GUIBitDisplay.class; + } + + @Override + public Component createAndLinkComponent(Timeline timeline, LogicModelParameters params, GUIBitDisplay guiComponent, + Map logicWiresPerPin) + { + ReadEnd end = logicWiresPerPin.get(guiComponent.getInputPin()).createReadOnlyEnd(); + BitDisplay bitDisplay = new BitDisplay(timeline, end); + guiComponent.setLogicModelBinding(bitDisplay); + return bitDisplay; + } +} \ No newline at end of file