JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / bin / javajs / swing / JPanel.js
1 Clazz.declarePackage ("javajs.swing");\r
2 Clazz.load (["javajs.swing.JComponent"], "javajs.swing.JPanel", ["javajs.swing.Grid", "$.GridBagConstraints", "javajs.util.SB"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.grid = null;\r
5 this.nElements = 0;\r
6 this.last = null;\r
7 Clazz.instantialize (this, arguments);\r
8 }, javajs.swing, "JPanel", javajs.swing.JComponent);\r
9 Clazz.makeConstructor (c$, \r
10 function (manager) {\r
11 Clazz.superConstructor (this, javajs.swing.JPanel, ["JP"]);\r
12 this.grid =  new javajs.swing.Grid (10, 10);\r
13 }, "javajs.awt.LayoutManager");\r
14 Clazz.defineMethod (c$, "add", \r
15 function (btn, c) {\r
16 this.last = (++this.nElements == 1 ? btn : null);\r
17 if (Clazz.instanceOf (c, String)) {\r
18 if (c.equals ("North")) c =  new javajs.swing.GridBagConstraints (0, 0, 3, 1, 0, 0, 10, 0, null, 0, 0);\r
19  else if (c.equals ("South")) c =  new javajs.swing.GridBagConstraints (0, 2, 3, 1, 0, 0, 10, 0, null, 0, 0);\r
20  else if (c.equals ("East")) c =  new javajs.swing.GridBagConstraints (2, 1, 1, 1, 0, 0, 13, 0, null, 0, 0);\r
21  else if (c.equals ("West")) c =  new javajs.swing.GridBagConstraints (0, 1, 1, 1, 0, 0, 17, 0, null, 0, 0);\r
22  else c =  new javajs.swing.GridBagConstraints (1, 1, 1, 1, 0, 0, 10, 0, null, 0, 0);\r
23 }this.grid.add (btn, c);\r
24 }, "javajs.swing.JComponent,~O");\r
25 Clazz.overrideMethod (c$, "toHTML", \r
26 function () {\r
27 if (this.last != null) {\r
28 this.grid =  new javajs.swing.Grid (1, 1);\r
29 this.grid.add (this.last,  new javajs.swing.GridBagConstraints (0, 0, 1, 1, 0, 0, 10, 0, null, 0, 0));\r
30 this.last = null;\r
31 }var sb =  new javajs.util.SB ();\r
32 sb.append ("\n<div id='" + this.id + "' class='JPanel' style='" + this.getCSSstyle (100, 100) + "'>\n");\r
33 sb.append ("\n<span id='" + this.id + "_minimizer' style='width:" + this.minWidth + "px;height:" + this.minHeight + "px;'>");\r
34 sb.append (this.grid.toHTML (this.id));\r
35 sb.append ("</span>");\r
36 sb.append ("\n</div>\n");\r
37 return sb.toString ();\r
38 });\r
39 });\r