X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fmodel%2Fcomponents%2Fatomic%2FSimpleRectangularHardcodedModelComponent.java;h=8971285a59b48b29fcae1c464b0caf1117bbc4fc;hb=4d3cc22893c8c7f43699f02af87c6cc40b133b46;hp=cad271ccebeba4f04f5bd3b0fcf11b958520bec2;hpb=93b398d6271a538a2a4c9f4de07a3b4a8a2a7fd4;p=Mograsim.git diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularHardcodedModelComponent.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularHardcodedModelComponent.java index cad271cc..8971285a 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularHardcodedModelComponent.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularHardcodedModelComponent.java @@ -7,10 +7,10 @@ import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -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.modeladapter.ViewLogicModelAdapter; +import net.mograsim.logic.model.modeladapter.LogicCoreAdapter; import net.mograsim.logic.model.modeladapter.componentadapters.SimpleRectangularHardcodedModelComponentAdapter; import net.mograsim.logic.model.serializing.IdentifyParams; import net.mograsim.logic.model.snippets.HighLevelStateHandler; @@ -38,9 +38,14 @@ public abstract class SimpleRectangularHardcodedModelComponent extends ModelComp // creation and destruction - public SimpleRectangularHardcodedModelComponent(ViewModelModifiable model, String id, String name, String centerText) + public SimpleRectangularHardcodedModelComponent(LogicModelModifiable model, String id, String name, String centerText) { - super(model, name); + this(model, id, name, centerText, true); + } + + public SimpleRectangularHardcodedModelComponent(LogicModelModifiable model, String id, String name, String centerText, boolean callInit) + { + super(model, name, false); this.id = id; this.outlineRenderer = new DefaultOutlineRenderer(this); CenteredTextParams centeredTextParams = new CenteredTextParams(); @@ -79,6 +84,9 @@ public abstract class SimpleRectangularHardcodedModelComponent extends ModelComp recalculate.run(); } }); + + if (callInit) + init(); } // pins @@ -112,9 +120,9 @@ public abstract class SimpleRectangularHardcodedModelComponent extends ModelComp public abstract Object recalculate(Object lastState, Map readEnds, Map readWriteEnds); - // logic model binding + // core model binding - public void setLogicModelBindingAndResetState(AtomicReference state, Runnable recalculate) + public void setCoreModelBindingAndResetState(AtomicReference state, Runnable recalculate) { this.state = state; this.recalculate = recalculate; @@ -148,6 +156,6 @@ public abstract class SimpleRectangularHardcodedModelComponent extends ModelComp static { - ViewLogicModelAdapter.addComponentAdapter(new SimpleRectangularHardcodedModelComponentAdapter()); + LogicCoreAdapter.addComponentAdapter(new SimpleRectangularHardcodedModelComponentAdapter()); } } \ No newline at end of file