X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.diagram%2Fsrc%2Forg%2Fsimantics%2Fdiagram%2Fadapter%2FConstantStyle.java;h=e81d483bb93a3a6efe89b8786c93e6a60356e030;hp=428acc6863952455759b9c3ddd6f2ad2b470afa5;hb=HEAD;hpb=0ae2b770234dfc3cbb18bd38f324125cf0faca07 diff --git a/bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/ConstantStyle.java b/bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/ConstantStyle.java index 428acc686..e81d483bb 100644 --- a/bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/ConstantStyle.java +++ b/bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/ConstantStyle.java @@ -38,6 +38,7 @@ public class ConstantStyle implements Style { final String name; final Map values = new HashMap(); ObserverGroupListener listener = null; + double priority; public ConstantStyle(ReadGraph graph, Resource style) throws DatabaseException { Layer0 L0 = Layer0.getInstance(graph); @@ -51,6 +52,14 @@ public class ConstantStyle implements Style { } } + public void setPriority(double priority) { + this.priority = priority; + } + + public double getPriority() { + return priority; + } + private Object haxx(String key, Object value) { if("alpha".equals(key)) { return AlphaComposite.getInstance(AlphaComposite. SRC_OVER, Float.parseFloat((String)value)); @@ -72,7 +81,7 @@ public class ConstantStyle implements Style { } @Override - public void activate(RequestProcessor backend, Resource diagram, Resource entry, Group group, final EvaluationContext observer) { + public void activate(RequestProcessor backend, Resource diagram, Resource entry, Group group, final EvaluationContext observer) throws DatabaseException { if (listener != null && !listener.isDisposed()) return; @@ -128,6 +137,16 @@ public class ConstantStyle implements Style { } } + + @Override + public final void apply2(Object item, final EvaluationContext evaluationContext) { + final DataNodeMap map = evaluationContext.getConstant(ProfileKeys.NODE_MAP); + final INode node = map.getNode(item); + + for(Map.Entry value : values.entrySet()) { + ProfileVariables.claimNodeProperty(node, value.getKey(), value.getValue(), evaluationContext); + } + } @Override public String toString() {