1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package info.magnolia.ui.vaadin.gwt.client.form.widget;
35
36 import info.magnolia.ui.vaadin.gwt.client.icon.widget.IconWidget;
37
38 import com.google.gwt.dom.client.Style;
39 import com.google.gwt.user.client.DOM;
40 import com.google.gwt.user.client.Element;
41
42
43
44
45
46
47
48 public class HelpIconWidget extends IconWidget {
49
50 private static final String CLASSNAME = "help-icon";
51 private static final String highlighted = "highlighted";
52 private static final String helpWithCircleClassName = "icon-help-l";
53
54 private Element innerSpan1 = DOM.createSpan();
55 private Element innerSpan2 = DOM.createSpan();
56 private Element innerSpan3 = DOM.createSpan();
57
58
59
60
61
62 public HelpIconWidget() {
63 super();
64
65 addStyleName(CLASSNAME);
66 getElement().appendChild(innerSpan1);
67
68 innerSpan1.addClassName(helpWithCircleClassName);
69 innerSpan2.getStyle().setMarginLeft(-1, Style.Unit.EM);
70 innerSpan2.addClassName("icon-shape-circle");
71 innerSpan3.getStyle().setMarginLeft(-1, Style.Unit.EM);
72 innerSpan3.addClassName("icon-help-mark");
73 }
74
75
76
77
78
79 public void setHighlighted(boolean highlight) {
80 if (highlight) {
81 getElement().addClassName(highlighted);
82 innerSpan1.removeClassName(helpWithCircleClassName);
83 innerSpan1.addClassName("icon-shape-circle-plus");
84 getElement().appendChild(innerSpan2);
85 getElement().appendChild(innerSpan3);
86 } else {
87 getElement().removeClassName(highlighted);
88 innerSpan1.addClassName(helpWithCircleClassName);
89 innerSpan1.removeClassName("icon-shape-circle-plus");
90 getElement().removeChild(innerSpan2);
91 getElement().removeChild(innerSpan3);
92 }
93 }
94
95 }