import java.util.ArrayList;
import java.util.List;
-import java.util.Map;
import org.eclipse.swt.graphics.Color;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonPrimitive;
+
import net.haspamelodica.swt.helper.gcs.GeneralGC;
import net.haspamelodica.swt.helper.swtobjectwrappers.Font;
import net.haspamelodica.swt.helper.swtobjectwrappers.Point;
private static final double invertedCircleDiam = 3.5;
private final String label;
- protected final int logicWidth;
private final boolean isInverted;
+ protected final int logicWidth;
private final double rectWidth;
private MovablePin outputPin;
private final List<Pin> inputPins;
- public static final String kLogicWidth = "logicWidth";
-
- protected SimpleRectangularGUIGate(ViewModelModifiable model, int logicWidth, String label, boolean isInverted)
+ protected SimpleRectangularGUIGate(ViewModelModifiable model, String label, boolean isInverted, int logicWidth, String name)
{
- super(model);
+ super(model, name);
this.label = label;
this.logicWidth = logicWidth;
this.isInverted = isInverted;
gc.setFont(oldFont);
}
+ // serializing
+
+ /**
+ * {@link SimpleRectangularGUIGate}s implementation returns a {@link JsonPrimitive} of type int containing the {@link #logicWidth} of
+ * this component.
+ *
+ * @see GUIComponent#getParams()
+ */
@Override
- public Map<String, Object> getInstantiationParameters()
+ public JsonElement getParams()
{
- Map<String, Object> m = super.getInstantiationParameters();
- m.put(kLogicWidth, logicWidth);
- return m;
+ return new JsonPrimitive(logicWidth);
}
}
\ No newline at end of file