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=aae72e2997befe041ef761e309f3148ec12b036c;hb=a1fd9f900021ba654a565394708552a3ad911142;hp=530f0789c3310bb7ff6bfa770e42ced0c4c8d2a2;hpb=8b3e82a368d51751f2660e88a1b9fea9dfeb7e02;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 530f0789..aae72e29 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 @@ -5,33 +5,28 @@ import java.util.Arrays; import java.util.Collections; import java.util.HashSet; import java.util.List; -import java.util.function.Function; import org.eclipse.swt.graphics.Color; -import com.google.gson.JsonObject; - 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.components.GUIComponent; import net.mograsim.logic.model.model.wires.MovablePin; import net.mograsim.logic.model.model.wires.Pin; -import net.mograsim.logic.model.serializing.SubmodelComponentParams; -import net.mograsim.logic.model.serializing.snippets.Renderer; -import net.mograsim.logic.model.serializing.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer; -import net.mograsim.logic.model.serializing.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer.SimpleRectangularLikeParams; +import net.mograsim.logic.model.snippets.Renderer; +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 { - private static final double width = 35; - private static final double pinDistance = 10; - private static final double pinNameMargin = .5; - private static final double labelFontHeight = 5; - private static final double pinNameFontHeight = 3.5; + public static final double width = 35; + public static final double pinDistance = 10; + public static final double pinNameMargin = .5; + public static final double labelFontHeight = 5; + public static final double pinNameFontHeight = 3.5; - private final String label; + public final String label; protected final int logicWidth; private final List inputPinNames; @@ -120,29 +115,12 @@ public class SimpleRectangularSubmodelComponent extends SubmodelComponent @Override protected void renderOutline(GeneralGC gc, Rectangle visibleRegion) { - Color foreground = Preferences.current().getColor("net.mograsim.logic.ui.color.foreground"); + Color foreground = Preferences.current().getColor("net.mograsim.logic.model.color.foreground"); if (foreground != null) gc.setForeground(foreground); gc.drawRectangle(getBounds()); } - // serializing - - @Override - public SubmodelComponentParams calculateParams(Function getIdentifier) - { - SubmodelComponentParams params = super.calculateParams(getIdentifier); - JsonObject symbolRendererParams = new JsonObject(); - symbolRendererParams.addProperty("centerText", label); - symbolRendererParams.addProperty("horizontalComponentCenter", getWidth() / 2); - symbolRendererParams.addProperty("centerTextHeight", labelFontHeight); - symbolRendererParams.addProperty("pinLabelHeight", pinNameFontHeight); - symbolRendererParams.addProperty("pinLabelMargin", pinNameMargin); - params.symbolRendererSnippetID = "SimpleRectangularLikeSymbolRenderer"; - params.symbolRendererParams = symbolRendererParams; - return params; - } - @Override protected Pin addSubmodelInterface(MovablePin supermodelPin) {