JAL-1807 includes ?j2sdebug flag and DebugJS._(msg)
[jalviewjs.git] / site / j2s / swingjs / plaf / JSTextFieldUI.java
1 package swingjs.plaf;\r
2 \r
3 //import jsjava.awt.FontMetrics;\r
4 import java.awt.event.KeyEvent;\r
5 \r
6 import jsjava.awt.Dimension;\r
7 import jsjava.awt.event.ActionEvent;\r
8 import jsjavax.swing.Action;\r
9 import jsjavax.swing.JTextField;\r
10 import swingjs.api.DOMNode;\r
11 \r
12 /**\r
13  * A minimal implementation of a test field ui/peer\r
14  * \r
15  * @author Bob Hanson\r
16  *\r
17  */\r
18 public class JSTextFieldUI extends JSTextUI {\r
19 \r
20         protected String inputType = "text";\r
21 \r
22         @Override\r
23         public DOMNode getDOMObject() {\r
24                 if (domNode == null) {\r
25                         updateHandler.checkDocument();\r
26                         focusNode = enableNode = valueNode = domNode = DOMNode\r
27                                         .setStyles(createDOMObject("input", id, "type", inputType),\r
28                                                         "padding", "0px 1px");\r
29                         vCenter(domNode, -10);\r
30                         bindMouse(domNode);\r
31                         bindKeys(domNode);\r
32                         setFocusable();\r
33                 }\r
34                 setCssFont(setProp(domNode, "value", getComponentText()),\r
35                                 c.getFont());\r
36                 if (!editable)\r
37                         DOMNode.setAttr(domNode, "readOnly", "true");\r
38                 return domNode;\r
39         }\r
40 \r
41         @Override\r
42         protected Dimension getCSSDimension(int w, int h) {\r
43                 return new Dimension(w, h - 2);\r
44         }\r
45         \r
46         @Override\r
47         boolean handleEnter(int eventType) {\r
48                 if (eventType == KeyEvent.KEY_PRESSED) {\r
49                         Action a = getActionMap().get(JTextField.notifyAction);\r
50                         if (a != null)\r
51                                 a.actionPerformed(new ActionEvent(c, ActionEvent.ACTION_PERFORMED, JTextField.notifyAction, System.currentTimeMillis(), 0));\r
52                 }\r
53                 return true;\r
54         }\r
55 \r
56 \r
57 }\r