--- /dev/null
+package org.simantics.document.linking.report.evaluator;\r
+\r
+import java.util.Map;\r
+\r
+import org.eclipse.jface.resource.ImageDescriptor;\r
+import org.simantics.db.ReadGraph;\r
+import org.simantics.db.exception.DatabaseException;\r
+import org.simantics.db.layer0.variable.Variable;\r
+import org.simantics.document.linking.Activator;\r
+import org.simantics.document.linking.ontology.DocumentLink;\r
+import org.simantics.objmap.graph.annotations.GraphType;\r
+import org.simantics.objmap.graph.annotations.RelatedGetValue;\r
+import org.simantics.objmap.graph.annotations.RelatedSetValue;\r
+\r
+\r
+@GraphType(DocumentLink.URIs.EvaluatorTree_Constant)\r
+public class Constant extends EvaluatorLeaf implements StringEditableNode{\r
+ \r
+ private String string;\r
+ \r
+ \r
+ public Constant() {\r
+ string = "text";\r
+ }\r
+ \r
+ public Constant(String text) {\r
+ if (text == null)\r
+ throw new NullPointerException("Text is null");\r
+ string = text;\r
+ }\r
+ \r
+ @Override\r
+ public String getValue(ReadGraph graph, Variable variable, Map<Object, Object> context) throws DatabaseException {\r
+ return string;\r
+ }\r
+ \r
+ @Override\r
+ public String toString() {\r
+ return "\"" + string + "\"";\r
+ }\r
+ \r
+ @RelatedGetValue(DocumentLink.URIs.EvaluatorTree_HasValue)\r
+ @Override\r
+ public String getValue() {\r
+ return string;\r
+ }\r
+ \r
+ @Override\r
+ public String setValue(String value) {\r
+ string = value;\r
+ return null;\r
+ }\r
+ \r
+ @RelatedSetValue(DocumentLink.URIs.EvaluatorTree_HasValue)\r
+ public void _setValue(String value) {\r
+ string = value;\r
+ }\r
+ \r
+ @Override\r
+ public EvaluatorItem copy() {\r
+ return new Constant(string);\r
+ }\r
+ \r
+ \r
+ @Override\r
+ public ImageDescriptor getImage() {\r
+ return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/textfield.png");\r
+ }\r
+\r
+}\r