GUIComponents now have names
[Mograsim.git] / net.mograsim.logic.ui / src / net / mograsim / logic / ui / model / components / atomic / GUIAndGate.java
index 8443e56..b0427bd 100644 (file)
@@ -4,17 +4,25 @@ import net.mograsim.logic.core.components.gates.AndGate;
 import net.mograsim.logic.ui.model.ViewModelModifiable;
 import net.mograsim.logic.ui.modeladapter.ViewLogicModelAdapter;
 import net.mograsim.logic.ui.modeladapter.componentadapters.SimpleGateAdapter;
+import net.mograsim.logic.ui.serializing.IndirectGUIComponentCreator;
 
 public class GUIAndGate extends SimpleRectangularGUIGate
 {
        public GUIAndGate(ViewModelModifiable model, int logicWidth)
        {
-               super(model, logicWidth, "&", false);
+               this(model, logicWidth, null);
+       }
+
+       public GUIAndGate(ViewModelModifiable model, int logicWidth, String name)
+       {
+               super(model, "&", false, logicWidth, name);
                setInputCount(2);// TODO make variable
        }
 
        static
        {
                ViewLogicModelAdapter.addComponentAdapter(new SimpleGateAdapter<>(GUIAndGate.class, AndGate::new));
+               IndirectGUIComponentCreator.setComponentSupplier(GUIAndGate.class.getCanonicalName(),
+                               (m, p, n) -> new GUIAndGate(m, p.getAsInt(), n));
        }
 }
\ No newline at end of file