aa147e593ae25d5146070975e6b2a1c4225bce52
[jalviewjs.git] / site / swingjs / j2s / javax / swing / JScrollPane.js
1 Clazz.declarePackage ("javax.swing");
2 Clazz.load (["javax.swing.JComponent", "$.JScrollBar", "$.ScrollPaneConstants", "javax.swing.plaf.UIResource"], "javax.swing.JScrollPane", ["java.lang.Boolean", "$.ClassCastException", "$.IllegalArgumentException", "java.awt.Point", "$.Rectangle", "javax.swing.JViewport", "$.ScrollPaneLayout", "$.Scrollable", "$.SwingUtilities", "$.UIManager"], function () {
3 c$ = Clazz.decorateAsClass (function () {
4 this.viewportBorder = null;
5 this.verticalScrollBarPolicy = 20;
6 this.horizontalScrollBarPolicy = 30;
7 this.viewport = null;
8 this.verticalScrollBar = null;
9 this.horizontalScrollBar = null;
10 this.rowHeader = null;
11 this.columnHeader = null;
12 this.lowerLeft = null;
13 this.lowerRight = null;
14 this.upperLeft = null;
15 this.upperRight = null;
16 this.wheelScrollState = true;
17 if (!Clazz.isClassDefined ("javax.swing.JScrollPane.ScrollBar")) {
18 javax.swing.JScrollPane.$JScrollPane$ScrollBar$ ();
19 }
20 Clazz.instantialize (this, arguments);
21 }, javax.swing, "JScrollPane", javax.swing.JComponent, javax.swing.ScrollPaneConstants);
22 Clazz.makeConstructor (c$, 
23 function (view, vsbPolicy, hsbPolicy) {
24 Clazz.superConstructor (this, javax.swing.JScrollPane, []);
25 this.setLayout ( new javax.swing.ScrollPaneLayout.UIResource ());
26 this.setVerticalScrollBarPolicy (vsbPolicy);
27 this.setHorizontalScrollBarPolicy (hsbPolicy);
28 this.setViewport (this.createViewport ());
29 this.setVerticalScrollBar (this.createVerticalScrollBar ());
30 this.setHorizontalScrollBar (this.createHorizontalScrollBar ());
31 if (view != null) {
32 this.setViewportView (view);
33 }this.setUIProperty ("opaque", new Boolean (true));
34 this.updateUI ();
35 if (!this.getComponentOrientation ().isLeftToRight ()) {
36 this.viewport.setViewPosition ( new java.awt.Point (2147483647, 0));
37 }}, "java.awt.Component,~N,~N");
38 Clazz.makeConstructor (c$, 
39 function (view) {
40 this.construct (view, 20, 30);
41 }, "java.awt.Component");
42 Clazz.makeConstructor (c$, 
43 function (vsbPolicy, hsbPolicy) {
44 this.construct (null, vsbPolicy, hsbPolicy);
45 }, "~N,~N");
46 Clazz.makeConstructor (c$, 
47 function () {
48 this.construct (null, 20, 30);
49 });
50 Clazz.overrideMethod (c$, "getUI", 
51 function () {
52 return this.ui;
53 });
54 Clazz.overrideMethod (c$, "updateUI", 
55 function () {
56 this.setUI (javax.swing.UIManager.getUI (this));
57 });
58 Clazz.overrideMethod (c$, "getUIClassID", 
59 function () {
60 return "ScrollPaneUI";
61 });
62 Clazz.defineMethod (c$, "setLayout", 
63 function (layout) {
64 if (Clazz.instanceOf (layout, javax.swing.ScrollPaneLayout)) {
65 Clazz.superCall (this, javax.swing.JScrollPane, "setLayout", [layout]);
66 (layout).syncWithScrollPane (this);
67 } else if (layout == null) {
68 Clazz.superCall (this, javax.swing.JScrollPane, "setLayout", [layout]);
69 } else {
70 var s = "layout of JScrollPane must be a ScrollPaneLayout";
71 throw  new ClassCastException (s);
72 }}, "java.awt.LayoutManager");
73 Clazz.overrideMethod (c$, "isValidateRoot", 
74 function () {
75 return true;
76 });
77 Clazz.defineMethod (c$, "getVerticalScrollBarPolicy", 
78 function () {
79 return this.verticalScrollBarPolicy;
80 });
81 Clazz.defineMethod (c$, "setVerticalScrollBarPolicy", 
82 function (policy) {
83 switch (policy) {
84 case 20:
85 case 21:
86 case 22:
87 break;
88 default:
89 throw  new IllegalArgumentException ("invalid verticalScrollBarPolicy");
90 }
91 var old = this.verticalScrollBarPolicy;
92 this.verticalScrollBarPolicy = policy;
93 this.firePropertyChangeInt ("verticalScrollBarPolicy", old, policy);
94 this.revalidate ();
95 this.repaint ();
96 }, "~N");
97 Clazz.defineMethod (c$, "getHorizontalScrollBarPolicy", 
98 function () {
99 return this.horizontalScrollBarPolicy;
100 });
101 Clazz.defineMethod (c$, "setHorizontalScrollBarPolicy", 
102 function (policy) {
103 switch (policy) {
104 case 30:
105 case 31:
106 case 32:
107 break;
108 default:
109 throw  new IllegalArgumentException ("invalid horizontalScrollBarPolicy");
110 }
111 var old = this.horizontalScrollBarPolicy;
112 this.horizontalScrollBarPolicy = policy;
113 this.firePropertyChangeInt ("horizontalScrollBarPolicy", old, policy);
114 this.revalidate ();
115 this.repaint ();
116 }, "~N");
117 Clazz.defineMethod (c$, "getViewportBorder", 
118 function () {
119 return this.viewportBorder;
120 });
121 Clazz.defineMethod (c$, "setViewportBorder", 
122 function (viewportBorder) {
123 var oldValue = this.viewportBorder;
124 this.viewportBorder = viewportBorder;
125 this.firePropertyChangeObject ("viewportBorder", oldValue, viewportBorder);
126 }, "javax.swing.border.Border");
127 Clazz.defineMethod (c$, "getViewportBorderBounds", 
128 function () {
129 var borderR =  new java.awt.Rectangle (this.getSize ());
130 var insets = this.getInsets ();
131 borderR.x = insets.left;
132 borderR.y = insets.top;
133 borderR.width -= insets.left + insets.right;
134 borderR.height -= insets.top + insets.bottom;
135 var leftToRight = javax.swing.SwingUtilities.isLeftToRight (this);
136 var colHead = this.getColumnHeader ();
137 if ((colHead != null) && (colHead.isVisible ())) {
138 var colHeadHeight = colHead.getHeight ();
139 borderR.y += colHeadHeight;
140 borderR.height -= colHeadHeight;
141 }var rowHead = this.getRowHeader ();
142 if ((rowHead != null) && (rowHead.isVisible ())) {
143 var rowHeadWidth = rowHead.getWidth ();
144 if (leftToRight) {
145 borderR.x += rowHeadWidth;
146 }borderR.width -= rowHeadWidth;
147 }var vsb = this.getVerticalScrollBar ();
148 if ((vsb != null) && (vsb.isVisible ())) {
149 var vsbWidth = vsb.getWidth ();
150 if (!leftToRight) {
151 borderR.x += vsbWidth;
152 }borderR.width -= vsbWidth;
153 }var hsb = this.getHorizontalScrollBar ();
154 if ((hsb != null) && (hsb.isVisible ())) {
155 borderR.height -= hsb.getHeight ();
156 }return borderR;
157 });
158 Clazz.defineMethod (c$, "createHorizontalScrollBar", 
159 function () {
160 return Clazz.innerTypeInstance (javax.swing.JScrollPane.ScrollBar, this, null, 0);
161 });
162 Clazz.defineMethod (c$, "getHorizontalScrollBar", 
163 function () {
164 return this.horizontalScrollBar;
165 });
166 Clazz.defineMethod (c$, "setHorizontalScrollBar", 
167 function (horizontalScrollBar) {
168 var old = this.getHorizontalScrollBar ();
169 this.horizontalScrollBar = horizontalScrollBar;
170 if (horizontalScrollBar != null) {
171 this.add (horizontalScrollBar, "HORIZONTAL_SCROLLBAR");
172 } else if (old != null) {
173 this.remove (old);
174 }this.firePropertyChangeObject ("horizontalScrollBar", old, horizontalScrollBar);
175 this.revalidate ();
176 this.repaint ();
177 }, "javax.swing.JScrollBar");
178 Clazz.defineMethod (c$, "createVerticalScrollBar", 
179 function () {
180 return Clazz.innerTypeInstance (javax.swing.JScrollPane.ScrollBar, this, null, 1);
181 });
182 Clazz.defineMethod (c$, "getVerticalScrollBar", 
183 function () {
184 return this.verticalScrollBar;
185 });
186 Clazz.defineMethod (c$, "setVerticalScrollBar", 
187 function (verticalScrollBar) {
188 var old = this.getVerticalScrollBar ();
189 this.verticalScrollBar = verticalScrollBar;
190 this.add (verticalScrollBar, "VERTICAL_SCROLLBAR");
191 this.firePropertyChangeObject ("verticalScrollBar", old, verticalScrollBar);
192 this.revalidate ();
193 this.repaint ();
194 }, "javax.swing.JScrollBar");
195 Clazz.defineMethod (c$, "createViewport", 
196 function () {
197 return  new javax.swing.JViewport ();
198 });
199 Clazz.defineMethod (c$, "getViewport", 
200 function () {
201 return this.viewport;
202 });
203 Clazz.defineMethod (c$, "setViewport", 
204 function (viewport) {
205 var old = this.getViewport ();
206 this.viewport = viewport;
207 if (viewport != null) {
208 this.add (viewport, "VIEWPORT");
209 } else if (old != null) {
210 this.remove (old);
211 }this.firePropertyChangeObject ("viewport", old, viewport);
212 this.revalidate ();
213 this.repaint ();
214 }, "javax.swing.JViewport");
215 Clazz.defineMethod (c$, "setViewportView", 
216 function (view) {
217 if (this.getViewport () == null) {
218 this.setViewport (this.createViewport ());
219 }this.getViewport ().setView (view);
220 }, "java.awt.Component");
221 Clazz.defineMethod (c$, "getRowHeader", 
222 function () {
223 return this.rowHeader;
224 });
225 Clazz.defineMethod (c$, "setRowHeader", 
226 function (rowHeader) {
227 var old = this.getRowHeader ();
228 this.rowHeader = rowHeader;
229 if (rowHeader != null) {
230 this.add (rowHeader, "ROW_HEADER");
231 } else if (old != null) {
232 this.remove (old);
233 }this.firePropertyChangeObject ("rowHeader", old, rowHeader);
234 this.revalidate ();
235 this.repaint ();
236 }, "javax.swing.JViewport");
237 Clazz.defineMethod (c$, "setRowHeaderView", 
238 function (view) {
239 if (this.getRowHeader () == null) {
240 this.setRowHeader (this.createViewport ());
241 }this.getRowHeader ().setView (view);
242 }, "java.awt.Component");
243 Clazz.defineMethod (c$, "getColumnHeader", 
244 function () {
245 return this.columnHeader;
246 });
247 Clazz.defineMethod (c$, "setColumnHeader", 
248 function (columnHeader) {
249 var old = this.getColumnHeader ();
250 this.columnHeader = columnHeader;
251 if (columnHeader != null) {
252 this.add (columnHeader, "COLUMN_HEADER");
253 } else if (old != null) {
254 this.remove (old);
255 }this.firePropertyChangeObject ("columnHeader", old, columnHeader);
256 this.revalidate ();
257 this.repaint ();
258 }, "javax.swing.JViewport");
259 Clazz.defineMethod (c$, "setColumnHeaderView", 
260 function (view) {
261 if (this.getColumnHeader () == null) {
262 this.setColumnHeader (this.createViewport ());
263 }this.getColumnHeader ().setView (view);
264 }, "java.awt.Component");
265 Clazz.defineMethod (c$, "getCorner", 
266 function (key) {
267 var isLeftToRight = this.getComponentOrientation ().isLeftToRight ();
268 if (key.equals ("LOWER_LEADING_CORNER")) {
269 key = isLeftToRight ? "LOWER_LEFT_CORNER" : "LOWER_RIGHT_CORNER";
270 } else if (key.equals ("LOWER_TRAILING_CORNER")) {
271 key = isLeftToRight ? "LOWER_RIGHT_CORNER" : "LOWER_LEFT_CORNER";
272 } else if (key.equals ("UPPER_LEADING_CORNER")) {
273 key = isLeftToRight ? "UPPER_LEFT_CORNER" : "UPPER_RIGHT_CORNER";
274 } else if (key.equals ("UPPER_TRAILING_CORNER")) {
275 key = isLeftToRight ? "UPPER_RIGHT_CORNER" : "UPPER_LEFT_CORNER";
276 }if (key.equals ("LOWER_LEFT_CORNER")) {
277 return this.lowerLeft;
278 } else if (key.equals ("LOWER_RIGHT_CORNER")) {
279 return this.lowerRight;
280 } else if (key.equals ("UPPER_LEFT_CORNER")) {
281 return this.upperLeft;
282 } else if (key.equals ("UPPER_RIGHT_CORNER")) {
283 return this.upperRight;
284 } else {
285 return null;
286 }}, "~S");
287 Clazz.defineMethod (c$, "setCorner", 
288 function (key, corner) {
289 var old;
290 var isLeftToRight = this.getComponentOrientation ().isLeftToRight ();
291 if (key.equals ("LOWER_LEADING_CORNER")) {
292 key = isLeftToRight ? "LOWER_LEFT_CORNER" : "LOWER_RIGHT_CORNER";
293 } else if (key.equals ("LOWER_TRAILING_CORNER")) {
294 key = isLeftToRight ? "LOWER_RIGHT_CORNER" : "LOWER_LEFT_CORNER";
295 } else if (key.equals ("UPPER_LEADING_CORNER")) {
296 key = isLeftToRight ? "UPPER_LEFT_CORNER" : "UPPER_RIGHT_CORNER";
297 } else if (key.equals ("UPPER_TRAILING_CORNER")) {
298 key = isLeftToRight ? "UPPER_RIGHT_CORNER" : "UPPER_LEFT_CORNER";
299 }if (key.equals ("LOWER_LEFT_CORNER")) {
300 old = this.lowerLeft;
301 this.lowerLeft = corner;
302 } else if (key.equals ("LOWER_RIGHT_CORNER")) {
303 old = this.lowerRight;
304 this.lowerRight = corner;
305 } else if (key.equals ("UPPER_LEFT_CORNER")) {
306 old = this.upperLeft;
307 this.upperLeft = corner;
308 } else if (key.equals ("UPPER_RIGHT_CORNER")) {
309 old = this.upperRight;
310 this.upperRight = corner;
311 } else {
312 throw  new IllegalArgumentException ("invalid corner key");
313 }if (old != null) {
314 this.remove (old);
315 }if (corner != null) {
316 this.add (corner, key);
317 }this.firePropertyChangeObject (key, old, corner);
318 this.revalidate ();
319 this.repaint ();
320 }, "~S,java.awt.Component");
321 Clazz.defineMethod (c$, "setComponentOrientation", 
322 function (co) {
323 Clazz.superCall (this, javax.swing.JScrollPane, "setComponentOrientation", [co]);
324 if (this.verticalScrollBar != null) this.verticalScrollBar.setComponentOrientation (co);
325 if (this.horizontalScrollBar != null) this.horizontalScrollBar.setComponentOrientation (co);
326 }, "java.awt.ComponentOrientation");
327 Clazz.defineMethod (c$, "isWheelScrollingEnabled", 
328 function () {
329 return this.wheelScrollState;
330 });
331 Clazz.defineMethod (c$, "setWheelScrollingEnabled", 
332 function (handleWheel) {
333 var old = this.wheelScrollState;
334 this.wheelScrollState = handleWheel;
335 this.firePropertyChangeBool ("wheelScrollingEnabled", old, handleWheel);
336 }, "~B");
337 Clazz.defineMethod (c$, "paramString", 
338 function () {
339 var viewportBorderString = (this.viewportBorder != null ? this.viewportBorder.toString () : "");
340 var viewportString = (this.viewport != null ? this.viewport.toString () : "");
341 var verticalScrollBarPolicyString;
342 if (this.verticalScrollBarPolicy == 20) {
343 verticalScrollBarPolicyString = "VERTICAL_SCROLLBAR_AS_NEEDED";
344 } else if (this.verticalScrollBarPolicy == 21) {
345 verticalScrollBarPolicyString = "VERTICAL_SCROLLBAR_NEVER";
346 } else if (this.verticalScrollBarPolicy == 22) {
347 verticalScrollBarPolicyString = "VERTICAL_SCROLLBAR_ALWAYS";
348 } else verticalScrollBarPolicyString = "";
349 var horizontalScrollBarPolicyString;
350 if (this.horizontalScrollBarPolicy == 30) {
351 horizontalScrollBarPolicyString = "HORIZONTAL_SCROLLBAR_AS_NEEDED";
352 } else if (this.horizontalScrollBarPolicy == 31) {
353 horizontalScrollBarPolicyString = "HORIZONTAL_SCROLLBAR_NEVER";
354 } else if (this.horizontalScrollBarPolicy == 32) {
355 horizontalScrollBarPolicyString = "HORIZONTAL_SCROLLBAR_ALWAYS";
356 } else horizontalScrollBarPolicyString = "";
357 var horizontalScrollBarString = (this.horizontalScrollBar != null ? this.horizontalScrollBar.toString () : "");
358 var verticalScrollBarString = (this.verticalScrollBar != null ? this.verticalScrollBar.toString () : "");
359 var columnHeaderString = (this.columnHeader != null ? this.columnHeader.toString () : "");
360 var rowHeaderString = (this.rowHeader != null ? this.rowHeader.toString () : "");
361 var lowerLeftString = (this.lowerLeft != null ? this.lowerLeft.toString () : "");
362 var lowerRightString = (this.lowerRight != null ? this.lowerRight.toString () : "");
363 var upperLeftString = (this.upperLeft != null ? this.upperLeft.toString () : "");
364 var upperRightString = (this.upperRight != null ? this.upperRight.toString () : "");
365 return Clazz.superCall (this, javax.swing.JScrollPane, "paramString", []) + ",columnHeader=" + columnHeaderString + ",horizontalScrollBar=" + horizontalScrollBarString + ",horizontalScrollBarPolicy=" + horizontalScrollBarPolicyString + ",lowerLeft=" + lowerLeftString + ",lowerRight=" + lowerRightString + ",rowHeader=" + rowHeaderString + ",upperLeft=" + upperLeftString + ",upperRight=" + upperRightString + ",verticalScrollBar=" + verticalScrollBarString + ",verticalScrollBarPolicy=" + verticalScrollBarPolicyString + ",viewport=" + viewportString + ",viewportBorder=" + viewportBorderString;
366 });
367 c$.$JScrollPane$ScrollBar$ = function () {
368 Clazz.pu$h(self.c$);
369 c$ = Clazz.decorateAsClass (function () {
370 Clazz.prepareCallback (this, arguments);
371 this.unitIncrementSet = false;
372 this.blockIncrementSet = false;
373 Clazz.instantialize (this, arguments);
374 }, javax.swing.JScrollPane, "ScrollBar", javax.swing.JScrollBar, javax.swing.plaf.UIResource);
375 Clazz.makeConstructor (c$, 
376 function (a) {
377 Clazz.superConstructor (this, javax.swing.JScrollPane.ScrollBar, [a]);
378 this.putClientProperty ("JScrollBar.fastWheelScrolling", Boolean.TRUE);
379 }, "~N");
380 Clazz.defineMethod (c$, "setUnitIncrement", 
381 function (a) {
382 this.unitIncrementSet = true;
383 this.putClientProperty ("JScrollBar.fastWheelScrolling", null);
384 Clazz.superCall (this, javax.swing.JScrollPane.ScrollBar, "setUnitIncrement", [a]);
385 }, "~N");
386 Clazz.defineMethod (c$, "getUnitIncrement", 
387 function (a) {
388 var b = this.b$["javax.swing.JScrollPane"].getViewport ();
389 if (!this.unitIncrementSet && (b != null) && (Clazz.instanceOf (b.getView (), javax.swing.Scrollable))) {
390 var c = (b.getView ());
391 var d = b.getViewRect ();
392 return c.getScrollableUnitIncrement (d, this.getOrientation (), a);
393 } else {
394 return Clazz.superCall (this, javax.swing.JScrollPane.ScrollBar, "getUnitIncrement", [a]);
395 }}, "~N");
396 Clazz.defineMethod (c$, "setBlockIncrement", 
397 function (a) {
398 this.blockIncrementSet = true;
399 this.putClientProperty ("JScrollBar.fastWheelScrolling", null);
400 Clazz.superCall (this, javax.swing.JScrollPane.ScrollBar, "setBlockIncrement", [a]);
401 }, "~N");
402 Clazz.defineMethod (c$, "getBlockIncrement", 
403 function (a) {
404 var b = this.b$["javax.swing.JScrollPane"].getViewport ();
405 if (this.blockIncrementSet || b == null) {
406 return Clazz.superCall (this, javax.swing.JScrollPane.ScrollBar, "getBlockIncrement", [a]);
407 } else if (Clazz.instanceOf (b.getView (), javax.swing.Scrollable)) {
408 var c = (b.getView ());
409 var d = b.getViewRect ();
410 return c.getScrollableBlockIncrement (d, this.getOrientation (), a);
411 } else if (this.getOrientation () == 1) {
412 return b.getExtentSize ().height;
413 } else {
414 return b.getExtentSize ().width;
415 }}, "~N");
416 c$ = Clazz.p0p ();
417 };
418 Clazz.defineStatics (c$,
419 "$uiClassID", "ScrollPaneUI");
420 });