projects
/
Mograsim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Small fix in ClickableSubmodelComponentsTest
[Mograsim.git]
/
net.mograsim.logic.ui
/
src
/
net
/
mograsim
/
logic
/
ui
/
serializing
/
IndirectGUIComponentCreator.java
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
ba713bd
..
0e89af7
100644
(file)
--- 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
@@
-6,6
+6,7
@@
import java.util.HashMap;
import java.util.Map;
import com.google.gson.JsonElement;
import java.util.Map;
import com.google.gson.JsonElement;
+import com.google.gson.JsonNull;
import net.mograsim.logic.ui.model.ViewModelModifiable;
import net.mograsim.logic.ui.model.components.GUIComponent;
import net.mograsim.logic.ui.model.ViewModelModifiable;
import net.mograsim.logic.ui.model.components.GUIComponent;
@@
-15,7
+16,7
@@
public class IndirectGUIComponentCreator
{
private static final Map<String, String> standardComponentIDs = new HashMap<>();
{
private static final Map<String, String> standardComponentIDs = new HashMap<>();
- private static final Map<String, Component
Provider> componentProvid
ers = new HashMap<>();
+ private static final Map<String, Component
Supplier> componentSuppli
ers = new HashMap<>();
static
{
static
{
@@
-50,9
+51,14
@@
public class IndirectGUIComponentCreator
standardComponentIDs.put(standardComponentID, associatedComponentID);
}
standardComponentIDs.put(standardComponentID, associatedComponentID);
}
- public static void setComponent
Provider(String className, ComponentProvider componentProvid
er)
+ public static void setComponent
Supplier(String className, ComponentSupplier componentSuppli
er)
{
{
- componentProviders.put(className, componentProvider);
+ componentSuppliers.put(className, componentSupplier);
+ }
+
+ public static GUIComponent createComponent(ViewModelModifiable model, String id)
+ {
+ return createComponent(model, id, JsonNull.INSTANCE);
}
public static GUIComponent createComponent(ViewModelModifiable model, String id, JsonElement params)
}
public static GUIComponent createComponent(ViewModelModifiable model, String id, JsonElement params)
@@
-68,23
+74,23
@@
public class IndirectGUIComponentCreator
{
String className = resolvedID.substring(6);
tryLoadComponentClass(className);
{
String className = resolvedID.substring(6);
tryLoadComponentClass(className);
- Component
Provider componentProvider = componentProvid
ers.get(className);
- if (component
Provid
er != null)
- return component
Provid
er.create(model, params);
+ Component
Supplier componentSupplier = componentSuppli
ers.get(className);
+ if (component
Suppli
er != null)
+ return component
Suppli
er.create(model, params);
} 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));
}
} 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));
}
- throw new RuntimeException("Could not get component
provid
er for ID " + id);
+ throw new RuntimeException("Could not get component
suppli
er for ID " + id);
}
private static void tryLoadComponentClass(String componentClassName)
{
}
private static void tryLoadComponentClass(String componentClassName)
{
- CodeSnippetSupplier.try
LoadClass(componentClassName, "Error loading component class
%s\n");
+ CodeSnippetSupplier.try
InvokeStaticInitializer(componentClassName, "Error loading component class %s:
%s\n");
}
}
- public static interface Component
Provid
er
+ public static interface Component
Suppli
er
{
public GUIComponent create(ViewModelModifiable model, JsonElement params);
}
{
public GUIComponent create(ViewModelModifiable model, JsonElement params);
}