--- java/src/charvax/swing/ButtonGroup.java.orig 2016-06-20 12:40:44 UTC +++ java/src/charvax/swing/ButtonGroup.java @@ -63,9 +63,10 @@ public class ButtonGroup * Adds the specified button to the group. */ public void add(AbstractButton button_) { + if (getSelection() != null) + button_.setSelected(false); _buttons.add(button_); button_.addItemListener(this); - button_.setSelected(false); } /** @@ -133,10 +134,9 @@ public class ButtonGroup for (Enumeration e = _buttons.elements(); e.hasMoreElements();) { AbstractButton b = (AbstractButton) e.nextElement(); - if (source != b || statechange != ItemEvent.SELECTED) { + if (source != b && statechange == ItemEvent.SELECTED) { if (b.isSelected()) { b._selected = false; - b.setEnabled(true); } } }