]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/ElementFactoryUtil.java
Configurable prefix and suffix text for monitors
[simantics/platform.git] / bundles / org.simantics.diagram / src / org / simantics / diagram / adapter / ElementFactoryUtil.java
index 89ee666bb21b92e75519a3df2724a674dad938a9..e8163cd9cc6c903a6779da8b3ae8ccd34161d6b3 100644 (file)
 package org.simantics.diagram.adapter;
 
 import java.awt.geom.AffineTransform;
+import java.util.Map;
 
 import org.simantics.db.AsyncReadGraph;
 import org.simantics.db.ReadGraph;
 import org.simantics.db.Resource;
 import org.simantics.db.common.procedure.adapter.AsyncProcedureAdapter;
+import org.simantics.db.common.procedure.adapter.ProcedureAdapter;
 import org.simantics.db.exception.DatabaseException;
 import org.simantics.db.procedure.AsyncProcedure;
 import org.simantics.diagram.stubs.DiagramResource;
@@ -30,7 +32,7 @@ import org.simantics.g2d.diagram.DiagramHints;
 import org.simantics.g2d.diagram.IDiagram;
 import org.simantics.g2d.element.ElementUtils;
 import org.simantics.g2d.element.IElement;
-import org.simantics.g2d.layers.ILayersEditor;
+import org.simantics.g2d.layers.ILayers;
 import org.simantics.utils.datastructures.hints.IHintContext.Key;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -59,6 +61,15 @@ public class ElementFactoryUtil {
         procedure.execute(graph, e);
     }
 
+    public static void readParameters(AsyncReadGraph graph, final Resource resource, final IElement e) {
+        graph.asyncRequest(new ElementParameterRequest(resource), new ProcedureAdapter<Map<String,Object>>() {
+            @Override
+            public void execute(Map<String, Object> result) {
+                ElementUtils.setParameters(e, result);
+            }
+        });
+    }
+
     public static ISynchronizationContext getContext(IDiagram diagram) {
         return diagram.getHint(SynchronizationHints.CONTEXT);
     }
@@ -107,7 +118,7 @@ public class ElementFactoryUtil {
 
     public static void loadLayersForElement(AsyncReadGraph graph, GraphLayerManager layerManager, IDiagram diagram, IElement e, Resource element,
             AsyncProcedure<IElement> callback) {
-        final ILayersEditor layers = diagram.getHint(DiagramHints.KEY_LAYERS_EDITOR);
+        final ILayers layers = diagram.getHint(DiagramHints.KEY_LAYERS);
         if (layers != null)
             layerManager.loadLayersForElement(graph, layers, e, element, callback);
         else