1 package net.mograsim.logic.model.model.components.submodels;
3 import net.haspamelodica.swt.helper.gcs.GeneralGC;
4 import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle;
5 import net.mograsim.logic.model.model.LogicModelModifiable;
6 import net.mograsim.logic.model.model.components.ModelComponent;
7 import net.mograsim.logic.model.model.wires.Pin;
8 import net.mograsim.logic.model.preferences.RenderPreferences;
9 import net.mograsim.logic.model.serializing.IdentifyParams;
11 public class SubmodelInterface extends ModelComponent
13 public SubmodelInterface(LogicModelModifiable model)
15 super(model, SubmodelComponent.SUBMODEL_INTERFACE_NAME, true);
19 public void render(GeneralGC gc, RenderPreferences renderPrefs, Rectangle visibleRegion)
20 {// nothing to do here
24 public String getIDForSerializing(IdentifyParams idParams)
26 throw new UnsupportedOperationException("A SubmodelInterface can't be serialized. Use SubmodelComponent.addSubmodelInterface");
31 * This method is only marked public in {@link SubmodelInterface} for {@link SubmodelComponent} to be able to add / remove pins to /
32 * from a SubmodelInterface.<br>
34 * @see ModelComponent#removePin(Pin)
36 * @author Daniel Kirschten
39 public void addPin(Pin pin)
46 * This method is only marked public in {@link SubmodelInterface} for {@link SubmodelComponent} to be able to add / remove pins to /
47 * from a SubmodelInterface.<br>
49 * @see ModelComponent#removePin(Pin)
51 * @author Daniel Kirschten
54 protected void removePin(String name)
56 super.removePin(name);