X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fmodel%2Fcomponents%2Fsubmodels%2FSimpleRectangularSubmodelComponent.java;h=041a41e2764610f7b21317d89c9b674d0559fdbf;hb=a25f554756e1bc9a1f842293aefe60a220d8b950;hp=039cdab64b1823f2152cf7ca2419b858ed58b918;hpb=2d27647cad85202abbd4bd3cdf7023083c17013c;p=Mograsim.git diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SimpleRectangularSubmodelComponent.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SimpleRectangularSubmodelComponent.java index 039cdab6..041a41e2 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SimpleRectangularSubmodelComponent.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SimpleRectangularSubmodelComponent.java @@ -6,17 +6,12 @@ import java.util.Collections; import java.util.HashSet; import java.util.List; -import org.eclipse.swt.graphics.Color; - -import net.haspamelodica.swt.helper.gcs.GeneralGC; -import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.model.model.ViewModelModifiable; import net.mograsim.logic.model.model.wires.MovablePin; import net.mograsim.logic.model.model.wires.Pin; -import net.mograsim.logic.model.snippets.Renderer; +import net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer; import net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer; import net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer.SimpleRectangularLikeParams; -import net.mograsim.preferences.Preferences; public class SimpleRectangularSubmodelComponent extends SubmodelComponent { @@ -34,8 +29,6 @@ public class SimpleRectangularSubmodelComponent extends SubmodelComponent private final List outputPinNames; private final List outputPinNamesUnmodifiable; - private Renderer symbolRenderer; - public SimpleRectangularSubmodelComponent(ViewModelModifiable model, int logicWidth, String label) { this(model, logicWidth, label, null); @@ -54,10 +47,11 @@ public class SimpleRectangularSubmodelComponent extends SubmodelComponent SimpleRectangularLikeParams rendererParams = new SimpleRectangularLikeParams(); rendererParams.centerText = label; rendererParams.centerTextHeight = labelFontHeight; - rendererParams.horizontalComponentCenter = getWidth() / 2; + rendererParams.horizontalComponentCenter = width / 2; rendererParams.pinLabelHeight = pinNameFontHeight; rendererParams.pinLabelMargin = pinNameMargin; - symbolRenderer = new SimpleRectangularLikeSymbolRenderer(this, rendererParams); + setSymbolRenderer(new SimpleRectangularLikeSymbolRenderer(this, rendererParams)); + setOutlineRenderer(new DefaultOutlineRenderer(this)); } protected void setInputPins(String... pinNames) @@ -106,21 +100,6 @@ public class SimpleRectangularSubmodelComponent extends SubmodelComponent return outputPinNamesUnmodifiable; } - @Override - protected void renderSymbol(GeneralGC gc, Rectangle visibleRegion) - { - symbolRenderer.render(gc, visibleRegion); - } - - @Override - protected void renderOutline(GeneralGC gc, Rectangle visibleRegion) - { - Color foreground = Preferences.current().getColor("net.mograsim.logic.ui.color.foreground"); - if (foreground != null) - gc.setForeground(foreground); - gc.drawRectangle(getBounds()); - } - @Override protected Pin addSubmodelInterface(MovablePin supermodelPin) {