X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.simulator.toolkit%2Fsrc%2Forg%2Fsimantics%2Fsimulator%2Ftoolkit%2FStandardNodeManager.java;fp=bundles%2Forg.simantics.simulator.toolkit%2Fsrc%2Forg%2Fsimantics%2Fsimulator%2Ftoolkit%2FStandardNodeManager.java;h=8a51fd330764959e7c62f4cc292c2ab2e36fb0c0;hb=5915c1bbd6d0c6125aa3c815c7843339190f28e4;hp=8f1d1cf53c9c2a0c29ce8a6fbefd499128646df7;hpb=dfa52ccefe2e4c36965ad3ccf5e19b778cae0d99;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.simulator.toolkit/src/org/simantics/simulator/toolkit/StandardNodeManager.java b/bundles/org.simantics.simulator.toolkit/src/org/simantics/simulator/toolkit/StandardNodeManager.java index 8f1d1cf53..8a51fd330 100644 --- a/bundles/org.simantics.simulator.toolkit/src/org/simantics/simulator/toolkit/StandardNodeManager.java +++ b/bundles/org.simantics.simulator.toolkit/src/org/simantics/simulator/toolkit/StandardNodeManager.java @@ -322,6 +322,23 @@ public abstract class StandardNodeManager references) throws NodeManagerException { + if(references.size() > 0) { + for(Node n : references) { + valueCache.remove(n); + } + } + updateValueInner(node, value, binding); + fireNodeListenersSync(); + } + + //Update the value of the node helper method + private void updateValueInner(Node node, Object value, Binding binding) throws NodeManagerException { checkThreadAccess(); Binding targetBinding = realm.getEngine().getEngineBinding(node); if(binding.equals(targetBinding)) { @@ -341,7 +358,6 @@ public abstract class StandardNodeManager