Merge branch 'master' of https://source.jalview.org/git/jalviewjs.git
[jalviewjs.git] / site / j2s / swingjs / plaf / JSRadioButtonUI.java
index 01ad791..793a8ae 100644 (file)
@@ -1,94 +1,94 @@
-package swingjs.plaf;\r
-\r
-import java.util.HashMap;\r
-import java.util.Map;\r
-\r
-import swingjs.api.DOMNode;\r
-import jsjava.awt.Dimension;\r
-import jsjavax.swing.AbstractButton;\r
-import jsjavax.swing.ButtonGroup;\r
-import jsjavax.swing.DefaultButtonModel;\r
-import jsjavax.swing.JRadioButton;\r
-\r
-public class JSRadioButtonUI extends JSButtonUI {\r
-\r
-       private DOMNode label;\r
-       private static Map<ButtonGroup, String> groupNames;\r
-       \r
-\r
-       @Override\r
-       public DOMNode getDOMObject() {\r
-               return getButtonObject("radio");\r
-       }\r
-\r
-       @Override\r
-       protected String getPropertyPrefix() {\r
-               return "RadioButton.";\r
-       }\r
-\r
-       protected Dimension setHTMLSize(DOMNode obj, boolean addCSS) {\r
-               // "absolute" is required for positioning of button, but must not be there for setting the size. \r
-               DOMNode.setStyles(domBtn, "position", null);\r
-               DOMNode.setStyles(label, "position", null);\r
-               Dimension d = setHTMLSize1(obj, addCSS, false);\r
-               DOMNode.setStyles(domBtn, "position", "absolute");\r
-               DOMNode.setStyles(label, "position", "absolute");\r
-               return d;\r
-       }\r
-\r
-       protected DOMNode getButtonObject(String myType) {\r
-               JRadioButton b = (JRadioButton) c;\r
-               boolean isNew = false;\r
-               boolean doAll = false;\r
-               if (domNode == null) {\r
-                       doAll = true;\r
-                       if (groupNames == null)\r
-                               groupNames = new HashMap<ButtonGroup, String>();\r
-                       ButtonGroup bg = null;\r
-                       String name = id;\r
-                       isNew = true;\r
-                       if (b.getModel() instanceof DefaultButtonModel) {\r
-                               bg = ((DefaultButtonModel) b.getModel()).getGroup();\r
-                               name = groupNames.get(bg);\r
-                               if (name == null)\r
-                                       groupNames.put(bg, name = id);\r
-                               else\r
-                                       isNew = false;\r
-                       }\r
-                       domBtn = enableNode = createDOMObject("input", id, "type", myType, "name",\r
-                                       name);\r
-                       label = textNode = createDOMObject("label", id + "l", "htmlFor", id);\r
-               }\r
-               if (b.isSelected() || isNew)\r
-                       DOMNode.setAttr(domBtn, "checked", "true");\r
-               setCssFont(\r
-                               DOMNode.setAttr(label, "innerHTML", ((AbstractButton) c).getText()),\r
-                               c.getFont());\r
-               // now wrap the two with a span and get its dimensions\r
-               // along with the dimensions of the radio button by itself.\r
-               // This is a hack, for sure.\r
-\r
-               Dimension drad = setHTMLSize1(domBtn, false, false);\r
-               /*Dimension dlab = */ setHTMLSize1(label, false, false);\r
-               \r
-               DOMNode obj = wrap("div", "", domBtn, label);\r
-               Dimension dobj = setHTMLSize1(obj, true, true);\r
-               vCenter(domBtn, -75);\r
-               vCenter(label, -50);\r
-               DOMNode.setStyles(label, "position", "absolute", "left", drad.width + "px");\r
-               DOMNode.setStyles(domBtn, "position", "absolute");\r
-               if (doAll) {\r
-                       // now wrap these in a div\r
-                       obj = wrap("div", id + "_0", domBtn, label);\r
-                       DOMNode.setStyles(obj, "position", "absolute");\r
-               } else {\r
-                       // must re-introduce these to the original object\r
-                       obj = domNode;\r
-                       obj.appendChild(domBtn);\r
-                       obj.appendChild(label);\r
-               }\r
-               return DOMNode.setSize(obj, dobj.width, dobj.height);\r
-       }\r
-\r
-       \r
-}\r
+package swingjs.plaf;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import swingjs.api.DOMNode;
+import jsjava.awt.Dimension;
+import jsjavax.swing.AbstractButton;
+import jsjavax.swing.ButtonGroup;
+import jsjavax.swing.DefaultButtonModel;
+import jsjavax.swing.JRadioButton;
+
+public class JSRadioButtonUI extends JSButtonUI {
+
+       private DOMNode label;
+       private static Map<ButtonGroup, String> groupNames;
+       
+
+       @Override
+       public DOMNode getDOMObject() {
+               return getButtonObject("radio");
+       }
+
+       @Override
+       protected String getPropertyPrefix() {
+               return "RadioButton.";
+       }
+
+       protected Dimension setHTMLSize(DOMNode obj, boolean addCSS) {
+               // "absolute" is required for positioning of button, but must not be there for setting the size. 
+               DOMNode.setStyles(domBtn, "position", null);
+               DOMNode.setStyles(label, "position", null);
+               Dimension d = setHTMLSize1(obj, addCSS, false);
+               DOMNode.setStyles(domBtn, "position", "absolute");
+               DOMNode.setStyles(label, "position", "absolute");
+               return d;
+       }
+
+       protected DOMNode getButtonObject(String myType) {
+               JRadioButton b = (JRadioButton) c;
+               boolean isNew = false;
+               boolean doAll = false;
+               if (domNode == null) {
+                       doAll = true;
+                       if (groupNames == null)
+                               groupNames = new HashMap<ButtonGroup, String>();
+                       ButtonGroup bg = null;
+                       String name = id;
+                       isNew = true;
+                       if (b.getModel() instanceof DefaultButtonModel) {
+                               bg = ((DefaultButtonModel) b.getModel()).getGroup();
+                               name = groupNames.get(bg);
+                               if (name == null)
+                                       groupNames.put(bg, name = id);
+                               else
+                                       isNew = false;
+                       }
+                       domBtn = enableNode = createDOMObject("input", id, "type", myType, "name",
+                                       name);
+                       label = textNode = createDOMObject("label", id + "l", "htmlFor", id);
+               }
+               if (b.isSelected() || isNew)
+                       DOMNode.setAttr(domBtn, "checked", "true");
+               setCssFont(
+                               DOMNode.setAttr(label, "innerHTML", ((AbstractButton) c).getText()),
+                               c.getFont());
+               // now wrap the two with a span and get its dimensions
+               // along with the dimensions of the radio button by itself.
+               // This is a hack, for sure.
+
+               Dimension drad = setHTMLSize1(domBtn, false, false);
+               /*Dimension dlab = */ setHTMLSize1(label, false, false);
+               
+               DOMNode obj = wrap("div", "", domBtn, label);
+               Dimension dobj = setHTMLSize1(obj, true, true);
+               vCenter(domBtn, -75);
+               vCenter(label, -50);
+               DOMNode.setStyles(label, "position", "absolute", "left", drad.width + "px");
+               DOMNode.setStyles(domBtn, "position", "absolute");
+               if (doAll) {
+                       // now wrap these in a div
+                       obj = wrap("div", id + "_0", domBtn, label);
+                       DOMNode.setStyles(obj, "position", "absolute");
+               } else {
+                       // must re-introduce these to the original object
+                       obj = domNode;
+                       obj.appendChild(domBtn);
+                       obj.appendChild(label);
+               }
+               return DOMNode.setSize(obj, dobj.width, dobj.height);
+       }
+
+       
+}