org.jdesktop.swingx
Class JXRadioGroup<T>

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by org.jdesktop.swingx.JXRadioGroup<T>
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible

public class JXRadioGroup<T>
extends JPanel

A group of radio buttons that functions as a unit. 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.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, 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(ActionListener l)
           
static
<T> JXRadioGroup<T>
create(T[] radioValues)
          Convenience factory method.
protected  void fireActionEvent(ActionEvent e)
           
 ActionListener[] getActionListeners()
           
 AbstractButton getChildButton(int index)
          Retrieve the child button by index.
 AbstractButton getChildButton(T value)
          Retrieve the child button that represents this value.
 int getChildButtonCount()
          Get the number of child buttons.
 AbstractButton getSelectedButton()
           
 T getSelectedValue()
           
 void removeActionListener(ActionListener l)
           
 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)
           
 void setValues(T[] radioValues)
           
 
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, 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, 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

setLayoutAxis

public void setLayoutAxis(int axis)
Set the layout axis of the radio group.

Parameters:
axis - values from BoxLayout.

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.

setValues

public void setValues(T[] radioValues)

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 AbstractButton getSelectedButton()

getSelectedValue

public T getSelectedValue()

setSelectedValue

public void setSelectedValue(T value)

getChildButton

public AbstractButton getChildButton(int index)
Retrieve the child button by index.


getChildButton

public 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(ActionListener l)

removeActionListener

public void removeActionListener(ActionListener l)

getActionListeners

public ActionListener[] getActionListeners()

fireActionEvent

protected void fireActionEvent(ActionEvent e)

setEnabled

public void setEnabled(boolean enabled)
Enable/disable all of the child buttons

Overrides:
setEnabled in class JComponent
Parameters:
enabled - true if this component should be enabled, false otherwise
See Also:
JComponent.setEnabled(boolean)