X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.interop%2Fsrc%2Forg%2Fsimantics%2Finterop%2Fbrowsing%2FINodeEvaluators.java;h=cbd6900526ad2a2ad9a64837a61f25908b87f2df;hb=ccadc05a0dc8e53be0eda855110d1906b562466a;hp=97c8e290eeb1ba2d1104d5fef98932f38eeef8c2;hpb=1ecbc01ed426a6329c4b92ee1abca7dc7f31e5cb;p=simantics%2Finterop.git diff --git a/org.simantics.interop/src/org/simantics/interop/browsing/INodeEvaluators.java b/org.simantics.interop/src/org/simantics/interop/browsing/INodeEvaluators.java index 97c8e29..cbd6900 100644 --- a/org.simantics.interop/src/org/simantics/interop/browsing/INodeEvaluators.java +++ b/org.simantics.interop/src/org/simantics/interop/browsing/INodeEvaluators.java @@ -50,8 +50,11 @@ public class INodeEvaluators { abstract class BaseViewpointFactory implements ViewpointFactory { protected abstract class VPB extends LazyViewpoint implements Callable, IChildrenCallback { - public VPB(PrimitiveQueryUpdater updater, NodeContext context, ViewpointKey key) { + PrimitiveQueryUpdater updater; + + public VPB(PrimitiveQueryUpdater updater, NodeContext context, ViewpointKey key) { super(updater, context, key); + this.updater = updater; } @Override @@ -78,7 +81,7 @@ abstract class BaseViewpointFactory implements ViewpointFactory { public void refreshChildren(Collection newChildren) { NodeContext[] ncs = toContextsWithInput(newChildren); setHasChildren(ncs.length > 0); - setChildren(ncs); + setChildren(updater,ncs); updater.scheduleReplace(context, key, this); } @@ -131,22 +134,17 @@ class NodeLabelerFactory implements LabelerFactory { public Object getIdentity(LabelerKey key) { return NodeLabelerFactory.this.getClass(); } - + @Override public Map labels(ReadGraph graph) throws DatabaseException { return Collections.singletonMap(ColumnKeys.SINGLE, ((INode) context.getConstant(BuiltinKeys.INPUT)).getLabel(graph)); } -// @Override -// public Modifier getModifier(ModificationContext sourcePart, String key) { -// return ((INode) context.getConstant(BuiltinKeys.INPUT)).getModifier(SimanticsUI.getSession(), key); -// } -// -// @Override -// public int category(ReadGraph graph) throws DatabaseException { -// return ((INode) context.getConstant(BuiltinKeys.INPUT)).getCategory(graph); -// } + @Override + public int category(ReadGraph graph) throws DatabaseException { + return ((INode) context.getConstant(BuiltinKeys.INPUT)).getCategory(graph); + } }; } } @@ -164,8 +162,9 @@ class NodeImagerFactory implements ImagerFactory { @Override public void run(ReadGraph g) { try { - ImageDescriptor descriptor = ((INode)context.getConstant(BuiltinKeys.INPUT)).getImage(g); - result.setImage(descriptor); + INode node = (INode)context.getConstant(BuiltinKeys.INPUT); + ImageDescriptor descriptor = node.getImage(g); + result.setImage(descriptor); updater.scheduleReplace(context, key, result); } catch (DatabaseException e) { e.printStackTrace();