JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / bin / javajs / swing / JComboBox.js
1 Clazz.declarePackage ("javajs.swing");\r
2 Clazz.load (["javajs.swing.AbstractButton"], "javajs.swing.JComboBox", ["javajs.util.SB"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.info = null;\r
5 this.selectedIndex = 0;\r
6 Clazz.instantialize (this, arguments);\r
7 }, javajs.swing, "JComboBox", javajs.swing.AbstractButton);\r
8 Clazz.makeConstructor (c$, \r
9 function (info) {\r
10 Clazz.superConstructor (this, javajs.swing.JComboBox, ["cmbJCB"]);\r
11 this.info = info;\r
12 }, "~A");\r
13 Clazz.defineMethod (c$, "setSelectedIndex", \r
14 function (i) {\r
15 this.selectedIndex = i;\r
16 {\r
17 SwingController.setSelectedIndex(this);\r
18 }}, "~N");\r
19 Clazz.defineMethod (c$, "getSelectedIndex", \r
20 function () {\r
21 return this.selectedIndex;\r
22 });\r
23 Clazz.defineMethod (c$, "getSelectedItem", \r
24 function () {\r
25 return (this.selectedIndex < 0 ? null : this.info[this.selectedIndex]);\r
26 });\r
27 Clazz.overrideMethod (c$, "toHTML", \r
28 function () {\r
29 var sb =  new javajs.util.SB ();\r
30 sb.append ("\n<select id='" + this.id + "' class='JComboBox' onchange='SwingController.click(this)'>\n");\r
31 for (var i = 0; i < this.info.length; i++) sb.append ("\n<option class='JComboBox_option'" + (i == this.selectedIndex ? "selected" : "") + ">" + this.info[i] + "</option>");\r
32 \r
33 sb.append ("\n</select>\n");\r
34 return sb.toString ();\r
35 });\r
36 });\r