JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / bin / javajs / swing / AbstractButton.js
1 Clazz.declarePackage ("javajs.swing");\r
2 Clazz.load (["javajs.api.SC", "javajs.swing.JComponent"], "javajs.swing.AbstractButton", null, function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.itemListener = null;\r
5 this.applet = null;\r
6 this.htmlName = null;\r
7 this.selected = false;\r
8 this.popupMenu = null;\r
9 this.icon = null;\r
10 Clazz.instantialize (this, arguments);\r
11 }, javajs.swing, "AbstractButton", javajs.swing.JComponent, javajs.api.SC);\r
12 Clazz.makeConstructor (c$, \r
13 function (type) {\r
14 Clazz.superConstructor (this, javajs.swing.AbstractButton, [type]);\r
15 this.enabled = true;\r
16 }, "~S");\r
17 Clazz.overrideMethod (c$, "setSelected", \r
18 function (selected) {\r
19 this.selected = selected;\r
20 {\r
21 SwingController.setSelected(this);\r
22 }}, "~B");\r
23 Clazz.overrideMethod (c$, "isSelected", \r
24 function () {\r
25 return this.selected;\r
26 });\r
27 Clazz.overrideMethod (c$, "addItemListener", \r
28 function (listener) {\r
29 this.itemListener = listener;\r
30 }, "~O");\r
31 Clazz.overrideMethod (c$, "getIcon", \r
32 function () {\r
33 return this.icon;\r
34 });\r
35 Clazz.overrideMethod (c$, "setIcon", \r
36 function (icon) {\r
37 this.icon = icon;\r
38 }, "~O");\r
39 Clazz.overrideMethod (c$, "init", \r
40 function (text, icon, actionCommand, popupMenu) {\r
41 this.text = text;\r
42 this.icon = icon;\r
43 this.actionCommand = actionCommand;\r
44 this.popupMenu = popupMenu;\r
45 {\r
46 SwingController.initMenuItem(this);\r
47 }}, "~S,~O,~S,javajs.api.SC");\r
48 Clazz.defineMethod (c$, "getTopPopupMenu", \r
49 function () {\r
50 return this.popupMenu;\r
51 });\r
52 Clazz.defineMethod (c$, "add", \r
53 function (item) {\r
54 this.addComponent (item);\r
55 }, "javajs.api.SC");\r
56 Clazz.overrideMethod (c$, "insert", \r
57 function (subMenu, index) {\r
58 this.insertComponent (subMenu, index);\r
59 }, "javajs.api.SC,~N");\r
60 Clazz.overrideMethod (c$, "getPopupMenu", \r
61 function () {\r
62 return null;\r
63 });\r
64 Clazz.defineMethod (c$, "getMenuHTML", \r
65 function () {\r
66 var label = (this.icon != null ? this.icon : this.text != null ? this.text : null);\r
67 var s = (label == null ? "" : "<li><a>" + label + "</a>" + this.htmlMenuOpener ("ul"));\r
68 var n = this.getComponentCount ();\r
69 if (n > 0) for (var i = 0; i < n; i++) s += this.getComponent (i).toHTML ();\r
70 \r
71 if (label != null) s += "</ul></li>";\r
72 return s;\r
73 });\r
74 Clazz.defineMethod (c$, "htmlMenuOpener", \r
75 function (type) {\r
76 return "<" + type + " id=\"" + this.id + "\"" + (this.enabled ? "" : this.getHtmlDisabled ()) + ">";\r
77 }, "~S");\r
78 Clazz.defineMethod (c$, "getHtmlDisabled", \r
79 function () {\r
80 return " disabled=\"disabled\"";\r
81 });\r
82 });\r