package net.mograsim.logic.ui.serializing;
-import java.util.function.Supplier;
-
import net.haspamelodica.swt.helper.gcs.GeneralGC;
import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle;
import net.mograsim.logic.ui.model.ViewModelModifiable;
import net.mograsim.logic.ui.model.components.submodels.SubmodelComponent;
import net.mograsim.logic.ui.model.wires.MovablePin;
import net.mograsim.logic.ui.model.wires.Pin;
+import net.mograsim.logic.ui.serializing.snippets.Renderer;
-public class DeserializedSubmodelComponent extends SubmodelComponent implements DeserializedSubmodelComponentI
+public class DeserializedSubmodelComponent extends SubmodelComponent
{
+ public Renderer outlineRenderer;
+ public Renderer symbolRenderer;
+
public DeserializedSubmodelComponent(ViewModelModifiable model)
{
super(model);
@Override
protected void renderOutline(GeneralGC gc, Rectangle visibleRegion)
{
- // TODO
+ if (outlineRenderer != null)
+ outlineRenderer.render(gc, visibleRegion);
}
@Override
protected void renderSymbol(GeneralGC gc, Rectangle visibleRegion)
{
- // TODO
+ if (symbolRenderer != null)
+ symbolRenderer.render(gc, visibleRegion);
}
- @Override
- public ViewModelModifiable getSubmodelModifiable()
+ public void setOutlineRenderer(Renderer outlineRenderer)
{
- return submodelModifiable;
+ this.outlineRenderer = outlineRenderer;
}
- @Override
- public void setIdentifierDelegate(Supplier<String> identifierDelegate)
+ public void setSymbolRenderer(Renderer symbolRenderer)
{
- this.identifierDelegate = identifierDelegate;
+ this.symbolRenderer = symbolRenderer;
+ }
+
+ public ViewModelModifiable getSubmodelModifiable()
+ {
+ return submodelModifiable;
}
@Override