Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jdesktop.swingx
Class JXRadioGroup<T>

    java.lang.Object
      java.awt.Component
          java.awt.Container
              javax.swing.JComponent
                  javax.swing.JPanel
                      org.jdesktop.swingx.JXRadioGroup<T>

All Implemented Interfaces:
  java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

    public class JXRadioGroup<T>

extends javax.swing.JPanel

`JXRadioGroup` is a group of radio buttons that functions as a unit. It is similar in concept to a `JComboBox` in functionality, but can offer a better presentation for a small number of choices. `JXRadioGroup` should be used in preference to `JComboBox` when the number of choices is small (less than six) or the choices are verbose.

Notes:

1. Enabling and disabling the JXRadioGroup will enable/disable all of the child buttons inside the JXRadioGroup.
2. If the generic type parameter of JXRadioGroup is a subclass of `AbstractButton`, then the buttons will be added "as is" to the container. If the generic type is anything else, buttons will be created as `JRadioButton` objects, and the button text will be set by calling toString() on the value object.
3. Alternatively, if you want to configure the buttons individually, construct the JXRadioGroup normally, and then call `getChildButton(int)` or `getChildButton(Object)` and configure the buttons.

TODO back with a model (possibly reuse of extend `ComboBoxModel`

Version:
  1.0
Author:
  Amy Fowler, Noel Grandin
See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class javax.swing.JPanel
`javax.swing.JPanel.AccessibleJPanel`

Nested classes/interfaces inherited from class javax.swing.JComponent
`javax.swing.JComponent.AccessibleJComponent`

Nested classes/interfaces inherited from class java.awt.Container
`java.awt.Container.AccessibleAWTContainer`

Nested classes/interfaces inherited from class java.awt.Component
`java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy`

Field Summary

Fields inherited from class javax.swing.JComponent
`accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

Fields inherited from class java.awt.Component
`BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

Fields inherited from interface java.awt.image.ImageObserver
`ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

Constructor Summary
`JXRadioGroup()` Create a default JXRadioGroup with a default layout axis of `BoxLayout.X_AXIS`.
`JXRadioGroup(T[] radioValues)` Create a default JXRadioGroup with a default layout axis of `BoxLayout.X_AXIS`.

Method Summary
`void` | `add(T radioValue)` You can use this method to manually add your own AbstractButton objects, provided you declared the class as `JXRadioGroup<JRadioButton>`.
`void` | `addActionListener(java.awt.event.ActionListener l)` Adds an `ActionListener`.
`static
`<T> JXRadioGroup<T>`
` | `create(T[] radioValues)` Convenience factory method.
`protected void` | `fireActionEvent(java.awt.event.ActionEvent e)` Notifies all listeners that have registered interest for notification on this event type.
`java.awt.event.ActionListener[]` | `getActionListeners()` Returns an array of all the `ActionListener`s added to this JRadioGroup with addActionListener().
`javax.swing.AbstractButton` | `getChildButton(int index)` Retrieve the child button by index.
`javax.swing.AbstractButton` | `getChildButton(T value)` Retrieve the child button that represents this value.
`int` | `getChildButtonCount()` Get the number of child buttons.
`javax.swing.AbstractButton` | `getSelectedButton()` Gets the currently selected button.
`T` | `getSelectedValue()` The currently selected value.
`void` | `removeActionListener(java.awt.event.ActionListener l)` Removes an `ActionListener`.
`void` | `setEnabled(boolean enabled)` Enable/disable all of the child buttons
`void` | `setLayoutAxis(int axis)` Set the layout axis of the radio group.
`void` | `setSelectedValue(T value)` Selects the supplied value.
`void` | `setValues(T[] radioValues)` Sets the values backing this group.

Methods inherited from class javax.swing.JPanel
`getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI`

Methods inherited from class javax.swing.JComponent
`addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update`

Methods inherited from class java.awt.Container
`add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree`

Methods inherited from class java.awt.Component
`action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### JXRadioGroup

    public JXRadioGroup()

  Create a default JXRadioGroup with a default layout axis of `BoxLayout.X_AXIS`.

### JXRadioGroup

    public JXRadioGroup(T[] radioValues)

  Create a default JXRadioGroup with a default layout axis of `BoxLayout.X_AXIS`.

  Parameters:
    `radioValues` - the list of values used to create the group.

Method Detail

### create

    public static <T> JXRadioGroup<T> create(T[] radioValues)

  Convenience factory method. Reduces code clutter when dealing with generics.

  Parameters:
    `radioValues` - the list of values used to create the group.

### setLayoutAxis

    public void setLayoutAxis(int axis)

  Set the layout axis of the radio group.

  Parameters:
    `axis` - values from `BoxLayout`.

### setValues

    public void setValues(T[] radioValues)

  Sets the values backing this group. This replaces the current set of values with the new set.

  Parameters:
    `radioValues` - the new backing values for this group

### add

    public void add(T radioValue)

  You can use this method to manually add your own AbstractButton objects, provided you declared the class as `JXRadioGroup<JRadioButton>`.

### getSelectedButton

    public javax.swing.AbstractButton getSelectedButton()

  Gets the currently selected button.

  Returns:
    the currently selected button
  See Also:
    `getSelectedValue()`

### getSelectedValue

    public T getSelectedValue()

  The currently selected value.

  Returns:
    the current value

### setSelectedValue

    public void setSelectedValue(T value)

  Selects the supplied value.

  Parameters:
    `value` - the value to select

### getChildButton

    public javax.swing.AbstractButton getChildButton(int index)

  Retrieve the child button by index.

### getChildButton

    public javax.swing.AbstractButton getChildButton(T value)

  Retrieve the child button that represents this value.

### getChildButtonCount

    public int getChildButtonCount()

  Get the number of child buttons.

### addActionListener

    public void addActionListener(java.awt.event.ActionListener l)

  Adds an `ActionListener`.

  The `ActionListener` will receive an `ActionEvent` when a selection has been made.

  Parameters:
    `l` - the `ActionListener` that is to be notified
  See Also:
    `#setSelectedItem`

### removeActionListener

    public void removeActionListener(java.awt.event.ActionListener l)

  Removes an `ActionListener`.

  Parameters:
    `l` - the `ActionListener` to remove

### getActionListeners

    public java.awt.event.ActionListener[] getActionListeners()

  Returns an array of all the `ActionListener`s added to this JRadioGroup with addActionListener().

  Returns:
    all of the `ActionListener`s added or an empty array if no listeners have been added

### fireActionEvent

    protected void fireActionEvent(java.awt.event.ActionEvent e)

  Notifies all listeners that have registered interest for notification on this event type.

  Parameters:
    `e` - the event to pass to the listeners
  See Also:
    `EventListenerList`

### setEnabled

    public void setEnabled(boolean enabled)

  Enable/disable all of the child buttons

  Overrides:
    `setEnabled` in class `javax.swing.JComponent`
  See Also:
    `JComponent.setEnabled(boolean)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2010. All Rights Reserved.