X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=plugins%2Fnet.mograsim.logic.model%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fmodel%2Fcomponents%2FModelComponent.java;h=b8d9f14d7d687a77c4048097541cf3f3b84bebb6;hb=HEAD;hp=b4d89282ceeb605a90f57e45ee2225877352fd3e;hpb=69ec19d54ceb6d5abbb8b4faa55284af22174859;p=Mograsim.git diff --git a/plugins/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/ModelComponent.java b/plugins/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/ModelComponent.java index b4d89282..b8d9f14d 100644 --- a/plugins/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/ModelComponent.java +++ b/plugins/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/ModelComponent.java @@ -11,6 +11,7 @@ import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.wires.Pin; +import net.mograsim.logic.model.preferences.RenderPreferences; import net.mograsim.logic.model.serializing.IdentifyParams; import net.mograsim.logic.model.serializing.JSONSerializable; import net.mograsim.logic.model.snippets.HighLevelStateHandler; @@ -24,6 +25,7 @@ import net.mograsim.logic.model.snippets.highlevelstatehandlers.DefaultHighLevel * * @author Daniel Kirschten */ +// TODO split into "blueprint" and "used component" public abstract class ModelComponent implements JSONSerializable { /** @@ -98,13 +100,6 @@ public abstract class ModelComponent implements JSONSerializable model.componentCreated(this, this::destroyed); } - // basic getters - - public String getName() - { - return name; - } - /** * Destroys this component. This method is called from {@link LogicModelModifiable#componentDestroyed(ModelComponent) * destroyComponent()} of the model this component is a part of.
@@ -117,6 +112,13 @@ public abstract class ModelComponent implements JSONSerializable pinsByName.values().forEach(this::removePinWithoutRedraw); } + // basic getters + + public String getName() + { + return name; + } + // pins /** @@ -344,7 +346,7 @@ public abstract class ModelComponent implements JSONSerializable * * @author Daniel Kirschten */ - public abstract void render(GeneralGC gc, Rectangle visibleRegion); + public abstract void render(GeneralGC gc, RenderPreferences renderPrefs, Rectangle visibleRegion); // serializing