Cleaned up initializing of ModelComponents (also improved HLSDebugShell)
[Mograsim.git] / net.mograsim.logic.model / src / net / mograsim / logic / model / model / components / atomic / ModelManualSwitch.java
index b7053d3..7a99504 100644 (file)
@@ -11,7 +11,7 @@ import net.mograsim.logic.core.components.CoreManualSwitch;
 import net.mograsim.logic.core.types.Bit;
 import net.mograsim.logic.core.types.BitVector;
 import net.mograsim.logic.core.types.BitVectorFormatter;
-import net.mograsim.logic.model.model.ViewModelModifiable;
+import net.mograsim.logic.model.model.LogicModelModifiable;
 import net.mograsim.logic.model.model.components.ModelComponent;
 import net.mograsim.logic.model.model.wires.Pin;
 import net.mograsim.logic.model.model.wires.PinUsage;
@@ -34,19 +34,21 @@ public class ModelManualSwitch extends ModelComponent
        private final LogicObserver logicObs;
        private CoreManualSwitch manualSwitch;
 
-       public ModelManualSwitch(ViewModelModifiable model, int logicWidth)
+       public ModelManualSwitch(LogicModelModifiable model, int logicWidth)
        {
                this(model, logicWidth, null);
        }
 
-       public ModelManualSwitch(ViewModelModifiable model, int logicWidth, String name)
+       public ModelManualSwitch(LogicModelModifiable model, int logicWidth, String name)
        {
-               super(model, name);
+               super(model, name, false);
                this.logicWidth = logicWidth;
                logicObs = (i) -> model.requestRedraw();
 
                setSize(width, height);
-               addPin(this.outputPin = new Pin(this, "", logicWidth, PinUsage.OUTPUT, width, height / 2));
+               addPin(this.outputPin = new Pin(model, this, "", logicWidth, PinUsage.OUTPUT, width, height / 2));
+
+               init();
        }
 
        @Override