1 Clazz.declarePackage ("swingjs.plaf");
\r
2 Clazz.load (["swingjs.plaf.JSButtonUI"], "swingjs.plaf.JSRadioButtonUI", ["java.util.HashMap", "javax.swing.DefaultButtonModel", "swingjs.api.DOMNode"], function () {
\r
3 c$ = Clazz.decorateAsClass (function () {
\r
5 Clazz.instantialize (this, arguments);
\r
6 }, swingjs.plaf, "JSRadioButtonUI", swingjs.plaf.JSButtonUI);
\r
7 Clazz.overrideMethod (c$, "getDOMObject",
\r
9 return this.getButtonObject ("radio");
\r
11 Clazz.overrideMethod (c$, "getPropertyPrefix",
\r
13 return "RadioButton.";
\r
15 Clazz.overrideMethod (c$, "setHTMLSize",
\r
16 function (obj, addCSS) {
\r
17 swingjs.api.DOMNode.setStyles (this.domBtn, ["position", null]);
\r
18 swingjs.api.DOMNode.setStyles (this.label, ["position", null]);
\r
19 var d = this.setHTMLSize1 (obj, addCSS, false);
\r
20 swingjs.api.DOMNode.setStyles (this.domBtn, ["position", "absolute"]);
\r
21 swingjs.api.DOMNode.setStyles (this.label, ["position", "absolute"]);
\r
23 }, "swingjs.api.DOMNode,~B");
\r
24 Clazz.defineMethod (c$, "getButtonObject",
\r
29 if (this.domNode == null) {
\r
31 if (swingjs.plaf.JSRadioButtonUI.groupNames == null) swingjs.plaf.JSRadioButtonUI.groupNames = new java.util.HashMap ();
\r
35 if (Clazz.instanceOf (b.getModel (), javax.swing.DefaultButtonModel)) {
\r
36 bg = (b.getModel ()).getGroup ();
\r
37 name = swingjs.plaf.JSRadioButtonUI.groupNames.get (bg);
\r
38 if (name == null) swingjs.plaf.JSRadioButtonUI.groupNames.put (bg, name = this.id);
\r
40 }this.domBtn = this.enableNode = this.createDOMObject ("input", this.id, ["type", myType, "name", name]);
\r
41 this.label = this.textNode = this.createDOMObject ("label", this.id + "l", ["htmlFor", this.id]);
\r
42 }if (b.isSelected () || isNew) swingjs.api.DOMNode.setAttr (this.domBtn, "checked", "true");
\r
43 this.setCssFont (swingjs.api.DOMNode.setAttr (this.label, "innerHTML", (this.c).getText ()), this.c.getFont ());
\r
44 var drad = this.setHTMLSize1 (this.domBtn, false, false);
\r
45 this.setHTMLSize1 (this.label, false, false);
\r
46 var obj = this.wrap ("div", "", [this.domBtn, this.label]);
\r
47 var dobj = this.setHTMLSize1 (obj, true, true);
\r
48 swingjs.plaf.JSComponentUI.vCenter (this.domBtn, -75);
\r
49 swingjs.plaf.JSComponentUI.vCenter (this.label, -50);
\r
50 swingjs.api.DOMNode.setStyles (this.label, ["position", "absolute", "left", drad.width + "px"]);
\r
51 swingjs.api.DOMNode.setStyles (this.domBtn, ["position", "absolute"]);
\r
53 obj = this.wrap ("div", this.id + "_0", [this.domBtn, this.label]);
\r
54 swingjs.api.DOMNode.setStyles (obj, ["position", "absolute"]);
\r
57 obj.appendChild (this.domBtn);
\r
58 obj.appendChild (this.label);
\r
59 }return swingjs.api.DOMNode.setSize (obj, dobj.width, dobj.height);
\r
61 Clazz.defineStatics (c$,
\r
62 "groupNames", null);
\r