]> gerrit.simantics Code Review - simantics/platform.git/blob - 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
1 package org.simantics.document.linking.report.evaluator;\r
2 \r
3 import org.eclipse.jface.resource.ImageDescriptor;\r
4 import org.simantics.document.linking.Activator;\r
5 import org.simantics.document.linking.ontology.DocumentLink;\r
6 import org.simantics.document.linking.report.Document.TextSize;\r
7 import org.simantics.objmap.graph.annotations.OrderedSetType;\r
8 import org.simantics.objmap.graph.annotations.RelatedGetValue;\r
9 import org.simantics.objmap.graph.annotations.RelatedSetValue;\r
10 \r
11 \r
12 @OrderedSetType(DocumentLink.URIs.EvaluatorTree_TextSizeHint)\r
13 public class TextSizeHint extends HintNode implements EnumEditableNode{\r
14         \r
15         \r
16         TextSize textSize;\r
17         \r
18         public TextSizeHint() {\r
19                 textSize = TextSize.SMALL;\r
20         }\r
21         \r
22         public TextSizeHint(TextSize textSize) {\r
23                 this.textSize = textSize;\r
24         }\r
25         \r
26         \r
27         @RelatedGetValue(DocumentLink.URIs.EvaluatorTree_HasValue)\r
28         @Override\r
29         public String getValue() {\r
30                 return textSize.toString();\r
31         }\r
32         \r
33         @RelatedSetValue(DocumentLink.URIs.EvaluatorTree_HasValue)\r
34         @Override\r
35         public void setValue(String value) {\r
36                 textSize = TextSize.valueOf(value);\r
37         }\r
38         \r
39         public TextSizeHint setTextSize(TextSize textSize) {\r
40                 this.textSize = textSize;\r
41                 return this;\r
42         }\r
43         \r
44         @Override\r
45         public String[] getEnumearation() {\r
46                 String values[] = new String[TextSize.values().length];\r
47                 for (int i = 0; i < values.length; i++)\r
48                         values[i] = TextSize.values()[i].toString();\r
49                 return values;\r
50         }\r
51         \r
52         @Override\r
53         public String toString() {\r
54                 return textSize.toString();\r
55         }\r
56         \r
57         @Override\r
58         public Object getHintValue() {\r
59                 return textSize;\r
60         }\r
61         \r
62         @Override\r
63         public Object getHintClass() {\r
64                 return TextSize.class;\r
65         }\r
66         \r
67         @Override\r
68         public EvaluatorItem copy() {\r
69                 TextSizeHint t = new TextSizeHint(textSize);\r
70                 copyChildren(t);\r
71                 return t;\r
72         }\r
73         \r
74         @Override\r
75         public ImageDescriptor getImage() {\r
76                 if (textSize == TextSize.TINY) {\r
77                         return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/text_heading_5.png");\r
78                 } else if (textSize == TextSize.SMALL) {\r
79                         return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/text_heading_4.png");\r
80                 } else if (textSize == TextSize.MEDIUM) {\r
81                         return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/text_heading_3.png");\r
82                 } else if (textSize == TextSize.LARGE) {\r
83                         return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/text_heading_2.png");\r
84                 } else if (textSize == TextSize.HUGE) {\r
85                         return Activator.imageDescriptorFromPlugin("com.famfamfam.silk", "icons/text_heading_1.png");\r
86                 } else {\r
87                         return null;\r
88                 }\r
89         }\r
90 \r
91 }\r