-package org.simantics.document.swt.core.widget;\r
-\r
-import java.util.HashMap;\r
-import java.util.List;\r
-import java.util.TreeMap;\r
-\r
-import org.simantics.document.server.IEventCommand;\r
-import org.simantics.document.server.JSONObject;\r
-import org.simantics.document.server.bean.DataDefinition;\r
-import org.simantics.document.server.client.WidgetData;\r
-import org.simantics.document.server.client.WidgetManager;\r
-import org.simantics.document.server.handler.AbstractEventHandler;\r
-import org.simantics.document.swt.core.SWTDocument;\r
-import org.simantics.document.swt.core.base.PostEventCommand;\r
-import org.simantics.document.swt.core.base.PropertyWidgetManager;\r
-\r
-public class CommandEventWidget extends PropertyWidgetManager<Object> {\r
-\r
- @Override\r
- public Object createWidget(JSONObject object) {\r
- return null;\r
- }\r
-\r
- @Override\r
- public void updateProperties(SWTDocument document, JSONObject object, Object widget) {\r
- // No properties\r
- }\r
-\r
- @Override\r
- public void updateChildren(SWTDocument document, JSONObject object, Object widget,\r
- TreeMap<String, WidgetData> childMap) {\r
- // No children\r
- }\r
-\r
- @Override\r
- public IEventCommand eventCommand(SWTDocument document, JSONObject object, Object component, String command) {\r
- if("event".equals(command)) {\r
- List<DataDefinition> dataDefinitions = object.getJSONField("dataDefinitions");\r
- HashMap<String, String> data = new HashMap<String, String>();\r
- for(DataDefinition dd : dataDefinitions) {\r
- WidgetData wd = document.getWidgetData().get(dd.getElementId());\r
- if(wd != null && wd.object != null) {\r
- @SuppressWarnings("rawtypes")\r
- WidgetManager manager = document.getManager(wd.object);\r
- if(manager != null) {\r
- @SuppressWarnings("unchecked")\r
- String result = manager.getProperty(document, wd.object, wd.widget, dd.getProperty());\r
- data.put(dd.getTarget(), result);\r
- }\r
- }\r
- }\r
- AbstractEventHandler handler = object.getJSONField("SCLFunction");\r
- return new PostEventCommand(document, handler, data);\r
- } else {\r
- return null;\r
- }\r
- }\r
- \r
-}\r
+package org.simantics.document.swt.core.widget;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.TreeMap;
+
+import org.simantics.document.server.IEventCommand;
+import org.simantics.document.server.JSONObject;
+import org.simantics.document.server.bean.DataDefinition;
+import org.simantics.document.server.client.WidgetData;
+import org.simantics.document.server.client.WidgetManager;
+import org.simantics.document.server.handler.AbstractEventHandler;
+import org.simantics.document.swt.core.SWTDocument;
+import org.simantics.document.swt.core.base.PostEventCommand;
+import org.simantics.document.swt.core.base.PropertyWidgetManager;
+
+public class CommandEventWidget extends PropertyWidgetManager<Object> {
+
+ @Override
+ public Object createWidget(JSONObject object) {
+ return null;
+ }
+
+ @Override
+ public void updateProperties(SWTDocument document, JSONObject object, Object widget) {
+ // No properties
+ }
+
+ @Override
+ public void updateChildren(SWTDocument document, JSONObject object, Object widget,
+ TreeMap<String, WidgetData> childMap) {
+ // No children
+ }
+
+ @Override
+ public IEventCommand eventCommand(SWTDocument document, JSONObject object, Object component, String command) {
+ if("event".equals(command)) {
+ List<DataDefinition> dataDefinitions = object.getJSONField("dataDefinitions");
+ HashMap<String, String> data = new HashMap<String, String>();
+ for(DataDefinition dd : dataDefinitions) {
+ WidgetData wd = document.getWidgetData().get(dd.getElementId());
+ if(wd != null && wd.object != null) {
+ @SuppressWarnings("rawtypes")
+ WidgetManager manager = document.getManager(wd.object);
+ if(manager != null) {
+ @SuppressWarnings("unchecked")
+ String result = manager.getProperty(document, wd.object, wd.widget, dd.getProperty());
+ data.put(dd.getTarget(), result);
+ }
+ }
+ }
+ AbstractEventHandler handler = object.getJSONField("SCLFunction");
+ return new PostEventCommand(document, handler, data);
+ } else {
+ return null;
+ }
+ }
+
+}