]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.document.linking.ui/src/org/simantics/document/linking/report/evaluator/TextSizeHint.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.document.linking.ui / src / org / simantics / document / linking / report / evaluator / TextSizeHint.java
diff --git a/bundles/org.simantics.document.linking.ui/src/org/simantics/document/linking/report/evaluator/TextSizeHint.java b/bundles/org.simantics.document.linking.ui/src/org/simantics/document/linking/report/evaluator/TextSizeHint.java
new file mode 100644 (file)
index 0000000..36979cd
--- /dev/null
@@ -0,0 +1,91 @@
+package org.simantics.document.linking.report.evaluator;\r
+\r
+import org.eclipse.jface.resource.ImageDescriptor;\r
+import org.simantics.document.linking.Activator;\r
+import org.simantics.document.linking.ontology.DocumentLink;\r
+import org.simantics.document.linking.report.Document.TextSize;\r
+import org.simantics.objmap.graph.annotations.OrderedSetType;\r
+import org.simantics.objmap.graph.annotations.RelatedGetValue;\r
+import org.simantics.objmap.graph.annotations.RelatedSetValue;\r
+\r
+\r
+@OrderedSetType(DocumentLink.URIs.EvaluatorTree_TextSizeHint)\r
+public class TextSizeHint extends HintNode implements EnumEditableNode{\r
+       \r
+       \r
+       TextSize textSize;\r
+       \r
+       public TextSizeHint() {\r
+               textSize = TextSize.SMALL;\r
+       }\r
+       \r
+       public TextSizeHint(TextSize textSize) {\r
+               this.textSize = textSize;\r
+       }\r
+       \r
+       \r
+       @RelatedGetValue(DocumentLink.URIs.EvaluatorTree_HasValue)\r
+       @Override\r
+       public String getValue() {\r
+               return textSize.toString();\r
+       }\r
+       \r
+       @RelatedSetValue(DocumentLink.URIs.EvaluatorTree_HasValue)\r
+       @Override\r
+       public void setValue(String value) {\r
+               textSize = TextSize.valueOf(value);\r
+       }\r
+       \r
+       public TextSizeHint setTextSize(TextSize textSize) {\r
+               this.textSize = textSize;\r
+               return this;\r
+       }\r
+       \r
+       @Override\r
+       public String[] getEnumearation() {\r
+               String values[] = new String[TextSize.values().length];\r
+               for (int i = 0; i < values.length; i++)\r
+                       values[i] = TextSize.values()[i].toString();\r
+               return values;\r
+       }\r
+       \r
+       @Override\r
+       public String toString() {\r
+               return textSize.toString();\r
+       }\r
+       \r
+       @Override\r
+       public Object getHintValue() {\r
+               return textSize;\r
+       }\r
+       \r
+       @Override\r
+       public Object getHintClass() {\r
+               return TextSize.class;\r
+       }\r
+       \r
+       @Override\r
+       public EvaluatorItem copy() {\r
+               TextSizeHint t = new TextSizeHint(textSize);\r
+               copyChildren(t);\r
+               return t;\r
+       }\r
+       \r
+       @Override\r
+       public ImageDescriptor getImage() {\r
+               if (textSize == TextSize.TINY) {\r
+                       return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/text_heading_5.png");\r
+               } else if (textSize == TextSize.SMALL) {\r
+                       return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/text_heading_4.png");\r
+               } else if (textSize == TextSize.MEDIUM) {\r
+                       return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/text_heading_3.png");\r
+               } else if (textSize == TextSize.LARGE) {\r
+                       return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/text_heading_2.png");\r
+               } else if (textSize == TextSize.HUGE) {\r
+                       return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/text_heading_1.png");\r
+               } else {\r
+                       return null;\r
+               }\r
+       }\r
+\r
+}\r