949d1a8be0402fc2e95ce5c6cdd1491f5afa7749
[jalviewjs.git] / site / j2s / javax / swing / JTextField.js
1 Clazz.declarePackage ("javax.swing");\r
2 Clazz.load (["javax.swing.ActionPropertyChangeListener", "$.SwingConstants", "javax.swing.event.ChangeListener", "javax.swing.text.JTextComponent", "$.TextAction"], "javax.swing.JTextField", ["java.lang.Boolean", "$.IllegalArgumentException", "java.awt.EventQueue", "java.awt.event.ActionEvent", "$.ActionListener", "$.InputEvent", "javax.swing.AbstractAction", "$.JViewport", "swingjs.JSToolkit"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.$action = null;\r
5 this.actionPropertyChangeListener = null;\r
6 this.horizontalAlignment = 10;\r
7 this.columns = 0;\r
8 this.columnWidth = 0;\r
9 this.command = null;\r
10 if (!Clazz.isClassDefined ("javax.swing.JTextField.ScrollRepainter")) {\r
11 javax.swing.JTextField.$JTextField$ScrollRepainter$ ();\r
12 }\r
13 Clazz.instantialize (this, arguments);\r
14 }, javax.swing, "JTextField", javax.swing.text.JTextComponent, javax.swing.SwingConstants);\r
15 Clazz.makeConstructor (c$, \r
16 function () {\r
17 this.construct (null, null, 0);\r
18 });\r
19 Clazz.makeConstructor (c$, \r
20 function (text) {\r
21 this.construct (null, text, 0);\r
22 }, "~S");\r
23 Clazz.makeConstructor (c$, \r
24 function (columns) {\r
25 this.construct (null, null, columns);\r
26 }, "~N");\r
27 Clazz.makeConstructor (c$, \r
28 function (text, columns) {\r
29 this.construct (null, text, columns);\r
30 }, "~S,~N");\r
31 Clazz.makeConstructor (c$, \r
32 function (doc, text, columns) {\r
33 Clazz.superConstructor (this, javax.swing.JTextField);\r
34 if (columns < 0) {\r
35 throw  new IllegalArgumentException ("columns less than zero.");\r
36 }this.columns = columns;\r
37 if (doc == null) {\r
38 doc = this.createDefaultModel ();\r
39 }this.setDocument (doc);\r
40 if (text != null) {\r
41 this.setText (text);\r
42 }}, "javax.swing.text.Document,~S,~N");\r
43 Clazz.overrideMethod (c$, "getUIClassID", \r
44 function () {\r
45 return "TextFieldUI";\r
46 });\r
47 Clazz.defineMethod (c$, "setDocument", \r
48 function (doc) {\r
49 if (doc != null) {\r
50 doc.putProperty ("filterNewlines", Boolean.TRUE);\r
51 }Clazz.superCall (this, javax.swing.JTextField, "setDocument", [doc]);\r
52 }, "javax.swing.text.Document");\r
53 Clazz.overrideMethod (c$, "isValidateRoot", \r
54 function () {\r
55 var parent = this.getParent ();\r
56 if (Clazz.instanceOf (parent, javax.swing.JViewport)) {\r
57 return false;\r
58 }return true;\r
59 });\r
60 Clazz.defineMethod (c$, "getHorizontalAlignment", \r
61 function () {\r
62 return this.horizontalAlignment;\r
63 });\r
64 Clazz.defineMethod (c$, "setHorizontalAlignment", \r
65 function (alignment) {\r
66 if (alignment == this.horizontalAlignment) return;\r
67 var oldValue = this.horizontalAlignment;\r
68 if ((alignment == 2) || (alignment == 0) || (alignment == 4) || (alignment == 10) || (alignment == 11)) {\r
69 this.horizontalAlignment = alignment;\r
70 } else {\r
71 throw  new IllegalArgumentException ("horizontalAlignment");\r
72 }this.firePropertyChangeInt ("horizontalAlignment", oldValue, this.horizontalAlignment);\r
73 this.invalidate ();\r
74 this.repaint ();\r
75 }, "~N");\r
76 Clazz.defineMethod (c$, "createDefaultModel", \r
77 function () {\r
78 return swingjs.JSToolkit.getPlainDocument (this);\r
79 });\r
80 Clazz.defineMethod (c$, "getColumns", \r
81 function () {\r
82 return this.columns;\r
83 });\r
84 Clazz.defineMethod (c$, "setColumns", \r
85 function (columns) {\r
86 var oldVal = this.columns;\r
87 if (columns < 0) {\r
88 throw  new IllegalArgumentException ("columns less than zero.");\r
89 }if (columns != oldVal) {\r
90 this.columns = columns;\r
91 this.invalidate ();\r
92 }}, "~N");\r
93 Clazz.defineMethod (c$, "getColumnWidth", \r
94 function () {\r
95 if (this.columnWidth == 0) {\r
96 var metrics = this.getFontMetrics (this.getFont ());\r
97 this.columnWidth = metrics.charWidth ('m');\r
98 }return this.columnWidth;\r
99 });\r
100 Clazz.overrideMethod (c$, "getPreferredSize", \r
101 function () {\r
102 return this.getPrefSizeJTF ();\r
103 });\r
104 Clazz.defineMethod (c$, "getPrefSizeJTF", \r
105 function () {\r
106 var size = this.getPrefSizeJComp ();\r
107 if (this.columns != 0) {\r
108 var insets = this.getInsets ();\r
109 size.width = this.columns * this.getColumnWidth () + insets.left + insets.right;\r
110 }return size;\r
111 });\r
112 Clazz.defineMethod (c$, "setFont", \r
113 function (f) {\r
114 Clazz.superCall (this, javax.swing.JTextField, "setFont", [f]);\r
115 this.columnWidth = 0;\r
116 }, "java.awt.Font");\r
117 Clazz.defineMethod (c$, "addActionListener", \r
118 function (l) {\r
119 this.listenerList.add (java.awt.event.ActionListener, l);\r
120 }, "java.awt.event.ActionListener");\r
121 Clazz.defineMethod (c$, "removeActionListener", \r
122 function (l) {\r
123 if ((l != null) && (this.getAction () === l)) {\r
124 this.setAction (null);\r
125 } else {\r
126 this.listenerList.remove (java.awt.event.ActionListener, l);\r
127 }}, "java.awt.event.ActionListener");\r
128 Clazz.defineMethod (c$, "getActionListeners", \r
129 function () {\r
130 return this.listenerList.getListeners (java.awt.event.ActionListener);\r
131 });\r
132 Clazz.defineMethod (c$, "fireActionPerformed", \r
133 function () {\r
134 var listeners = this.listenerList.getListenerList ();\r
135 var modifiers = 0;\r
136 var currentEvent = java.awt.EventQueue.getCurrentEvent ();\r
137 if (Clazz.instanceOf (currentEvent, java.awt.event.InputEvent)) {\r
138 modifiers = (currentEvent).getModifiers ();\r
139 } else if (Clazz.instanceOf (currentEvent, java.awt.event.ActionEvent)) {\r
140 modifiers = (currentEvent).getModifiers ();\r
141 }var e =  new java.awt.event.ActionEvent (this, 1001, (this.command != null) ? this.command : this.getText (), java.awt.EventQueue.getMostRecentEventTime (), modifiers);\r
142 for (var i = listeners.length - 2; i >= 0; i -= 2) {\r
143 if (listeners[i] === java.awt.event.ActionListener) {\r
144 (listeners[i + 1]).actionPerformed (e);\r
145 }}\r
146 });\r
147 Clazz.defineMethod (c$, "setActionCommand", \r
148 function (command) {\r
149 this.command = command;\r
150 }, "~S");\r
151 Clazz.defineMethod (c$, "setAction", \r
152 function (a) {\r
153 var oldValue = this.getAction ();\r
154 if (this.$action == null || !this.$action.equals (a)) {\r
155 this.$action = a;\r
156 if (oldValue != null) {\r
157 this.removeActionListener (oldValue);\r
158 oldValue.removePropertyChangeListener (this.actionPropertyChangeListener);\r
159 this.actionPropertyChangeListener = null;\r
160 }this.configurePropertiesFromAction (this.$action);\r
161 if (this.$action != null) {\r
162 if (!this.isListener (java.awt.event.ActionListener, this.$action)) {\r
163 this.addActionListener (this.$action);\r
164 }this.actionPropertyChangeListener = this.createActionPropertyChangeListener (this.$action);\r
165 this.$action.addPropertyChangeListener (this.actionPropertyChangeListener);\r
166 }this.firePropertyChangeObject ("action", oldValue, this.$action);\r
167 }}, "javax.swing.Action");\r
168 Clazz.defineMethod (c$, "isListener", \r
169  function (c, a) {\r
170 var isListener = false;\r
171 var listeners = this.listenerList.getListenerList ();\r
172 for (var i = listeners.length - 2; i >= 0; i -= 2) {\r
173 if (listeners[i] === c && listeners[i + 1] === a) {\r
174 isListener = true;\r
175 }}\r
176 return isListener;\r
177 }, "Class,java.awt.event.ActionListener");\r
178 Clazz.defineMethod (c$, "getAction", \r
179 function () {\r
180 return this.$action;\r
181 });\r
182 Clazz.defineMethod (c$, "configurePropertiesFromAction", \r
183 function (a) {\r
184 javax.swing.AbstractAction.setEnabledFromAction (this, a);\r
185 javax.swing.AbstractAction.setToolTipTextFromAction (this, a);\r
186 this.setActionCommandFromAction (a);\r
187 }, "javax.swing.Action");\r
188 Clazz.defineMethod (c$, "actionPropertyChanged", \r
189 function (action, propertyName) {\r
190 if (propertyName === "ActionCommandKey") {\r
191 this.setActionCommandFromAction (action);\r
192 } else if (propertyName === "enabled") {\r
193 javax.swing.AbstractAction.setEnabledFromAction (this, action);\r
194 } else if (propertyName === "ShortDescription") {\r
195 javax.swing.AbstractAction.setToolTipTextFromAction (this, action);\r
196 }}, "javax.swing.Action,~S");\r
197 Clazz.defineMethod (c$, "setActionCommandFromAction", \r
198  function (action) {\r
199 this.setActionCommand ((action == null) ? null : action.getValue ("ActionCommandKey"));\r
200 }, "javax.swing.Action");\r
201 Clazz.defineMethod (c$, "createActionPropertyChangeListener", \r
202 function (a) {\r
203 return  new javax.swing.JTextField.TextFieldActionPropertyChangeListener (this, a);\r
204 }, "javax.swing.Action");\r
205 Clazz.defineMethod (c$, "getActions", \r
206 function () {\r
207 return javax.swing.text.TextAction.augmentList (Clazz.superCall (this, javax.swing.JTextField, "getActions", []), javax.swing.JTextField.defaultActions);\r
208 });\r
209 Clazz.defineMethod (c$, "postActionEvent", \r
210 function () {\r
211 this.fireActionPerformed ();\r
212 });\r
213 Clazz.defineMethod (c$, "hasActionListener", \r
214 function () {\r
215 var listeners = this.listenerList.getListenerList ();\r
216 for (var i = listeners.length - 2; i >= 0; i -= 2) {\r
217 if (listeners[i] === java.awt.event.ActionListener) {\r
218 return true;\r
219 }}\r
220 return false;\r
221 });\r
222 Clazz.defineMethod (c$, "paramString", \r
223 function () {\r
224 var horizontalAlignmentString;\r
225 if (this.horizontalAlignment == 2) {\r
226 horizontalAlignmentString = "LEFT";\r
227 } else if (this.horizontalAlignment == 0) {\r
228 horizontalAlignmentString = "CENTER";\r
229 } else if (this.horizontalAlignment == 4) {\r
230 horizontalAlignmentString = "RIGHT";\r
231 } else if (this.horizontalAlignment == 10) {\r
232 horizontalAlignmentString = "LEADING";\r
233 } else if (this.horizontalAlignment == 11) {\r
234 horizontalAlignmentString = "TRAILING";\r
235 } else horizontalAlignmentString = "";\r
236 var commandString = (this.command != null ? this.command : "");\r
237 return Clazz.superCall (this, javax.swing.JTextField, "paramString", []) + ",columns=" + this.columns + ",columnWidth=" + this.columnWidth + ",command=" + commandString + ",horizontalAlignment=" + horizontalAlignmentString;\r
238 });\r
239 c$.$JTextField$ScrollRepainter$ = function () {\r
240 Clazz.pu$h(self.c$);\r
241 c$ = Clazz.decorateAsClass (function () {\r
242 Clazz.prepareCallback (this, arguments);\r
243 Clazz.instantialize (this, arguments);\r
244 }, javax.swing.JTextField, "ScrollRepainter", null, javax.swing.event.ChangeListener);\r
245 Clazz.overrideMethod (c$, "stateChanged", \r
246 function (a) {\r
247 this.b$["javax.swing.JTextField"].repaint ();\r
248 }, "javax.swing.event.ChangeEvent");\r
249 c$ = Clazz.p0p ();\r
250 };\r
251 Clazz.pu$h(self.c$);\r
252 c$ = Clazz.declareType (javax.swing.JTextField, "TextFieldActionPropertyChangeListener", javax.swing.ActionPropertyChangeListener);\r
253 Clazz.overrideMethod (c$, "actionPropertyChanged", \r
254 function (a, b, c) {\r
255 if (javax.swing.AbstractAction.shouldReconfigure (c)) {\r
256 a.configurePropertiesFromAction (b);\r
257 } else {\r
258 a.actionPropertyChanged (b, c.getPropertyName ());\r
259 }}, "javax.swing.JTextField,javax.swing.Action,java.beans.PropertyChangeEvent");\r
260 c$ = Clazz.p0p ();\r
261 Clazz.pu$h(self.c$);\r
262 c$ = Clazz.declareType (javax.swing.JTextField, "NotifyAction", javax.swing.text.TextAction);\r
263 Clazz.makeConstructor (c$, \r
264 function () {\r
265 Clazz.superConstructor (this, javax.swing.JTextField.NotifyAction, ["notify-field-accept"]);\r
266 });\r
267 Clazz.overrideMethod (c$, "actionPerformed", \r
268 function (a) {\r
269 var b = this.getFocusedComponent ();\r
270 if (Clazz.instanceOf (b, javax.swing.JTextField)) {\r
271 var c = b;\r
272 c.postActionEvent ();\r
273 }}, "java.awt.event.ActionEvent");\r
274 Clazz.overrideMethod (c$, "isEnabled", \r
275 function () {\r
276 var a = this.getFocusedComponent ();\r
277 if (Clazz.instanceOf (a, javax.swing.JTextField)) {\r
278 return (a).hasActionListener ();\r
279 }return false;\r
280 });\r
281 c$ = Clazz.p0p ();\r
282 Clazz.defineStatics (c$,\r
283 "notifyAction", "notify-field-accept");\r
284 c$.defaultActions = c$.prototype.defaultActions =  Clazz.newArray (-1, [ new javax.swing.JTextField.NotifyAction ()]);\r
285 Clazz.defineStatics (c$,\r
286 "$uiClassID", "TextFieldUI");\r
287 });\r