X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.ui%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fui%2Fserializing%2FIndirectGUIComponentCreator.java;h=365fe9abb7c04b8bef557cbe7396f73bbba387c3;hb=5ece0acf049bf9af2933f513fe0206565681f622;hp=0e89af7b875dd427aa00b8656612437cac46a4a1;hpb=05f3deb7ee3a0b7162c75e1963be9a739618e3df;p=Mograsim.git diff --git a/net.mograsim.logic.ui/src/net/mograsim/logic/ui/serializing/IndirectGUIComponentCreator.java b/net.mograsim.logic.ui/src/net/mograsim/logic/ui/serializing/IndirectGUIComponentCreator.java index 0e89af7b..365fe9ab 100644 --- a/net.mograsim.logic.ui/src/net/mograsim/logic/ui/serializing/IndirectGUIComponentCreator.java +++ b/net.mograsim.logic.ui/src/net/mograsim/logic/ui/serializing/IndirectGUIComponentCreator.java @@ -58,10 +58,20 @@ public class IndirectGUIComponentCreator public static GUIComponent createComponent(ViewModelModifiable model, String id) { - return createComponent(model, id, JsonNull.INSTANCE); + return createComponent(model, id, (String) null); + } + + public static GUIComponent createComponent(ViewModelModifiable model, String id, String name) + { + return createComponent(model, id, JsonNull.INSTANCE, name); } public static GUIComponent createComponent(ViewModelModifiable model, String id, JsonElement params) + { + return createComponent(model, id, params, null); + } + + public static GUIComponent createComponent(ViewModelModifiable model, String id, JsonElement params, String name) { if (id != null) { @@ -76,11 +86,11 @@ public class IndirectGUIComponentCreator tryLoadComponentClass(className); ComponentSupplier componentSupplier = componentSuppliers.get(className); if (componentSupplier != null) - return componentSupplier.create(model, params); + return componentSupplier.create(model, params, name); } else // we know id has to start with "file:" here // because standardComponentIDs only contains strings starting with "class:" or "file:" - return SubmodelComponentDeserializer.create(model, resolvedID.substring(5)); + return SubmodelComponentDeserializer.create(model, resolvedID.substring(5), name); } throw new RuntimeException("Could not get component supplier for ID " + id); } @@ -92,6 +102,6 @@ public class IndirectGUIComponentCreator public static interface ComponentSupplier { - public GUIComponent create(ViewModelModifiable model, JsonElement params); + public GUIComponent create(ViewModelModifiable model, JsonElement params, String name); } } \ No newline at end of file