Class ValueButtonGroup<T>

java.lang.Object
javax.swing.ButtonGroup
uk.ac.starlink.util.gui.ValueButtonGroup<T>
All Implemented Interfaces:
Serializable

public class ValueButtonGroup<T> extends ButtonGroup
Extends ButtonGroup by associating a value with each button.
Since:
11 Jan 2005
Author:
Mark Taylor
See Also:
  • Constructor Details

    • ValueButtonGroup

      public ValueButtonGroup()
      Constructor.
  • Method Details

    • add

      public void add(AbstractButton button, T value)
      Adds a button and associates a value with it. When button is selected, getValue() will return value. You can use null for a value, but don't have two buttons with associated values which are equal.
      Parameters:
      button - button
      value - associated value
    • remove

      public void remove(AbstractButton button)
      Overrides:
      remove in class ButtonGroup
    • getValue

      public T getValue()
      Returns the currently selected value, that is the value associated with the currently selected button.
      Returns:
      selected value
    • setValue

      public void setValue(T value)
      Sets the currently selected value. The associated button will be selected (and others deselected). value must be one of the values associated with a button in this group.
      Parameters:
      value - new value
    • addChangeListener

      public void addChangeListener(ChangeListener listener)
      Adds a listener which will be notified whenever this group's selected value changes.
      Parameters:
      listener - listener to add
    • removeChangeListener

      public void removeChangeListener(ChangeListener listener)
      Removes a listener previously added by addChangeListener.
      Parameters:
      listener - listener to remove