ix.iface.ui
Class IXButPanel

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 ix.iface.ui.IXButPanel
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class IXButPanel
extends javax.swing.JPanel

A simple button panel with buttons of the same size. The button panel has an orientation (BoxLayout.X_AXIS or BoxLayout.Y_AXIS) and any number of buttons whose strings are given at creation or with a call to addButton. All buttons in the panel will have the same size.

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
 java.util.HashSet buttons
           
 javax.swing.ButtonGroup group
           
 boolean groupFlag
           
 int orientation
           
 
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
IXButPanel()
          Creates a panel for buttons with Y_AXIS layout.
IXButPanel(java.util.EventListener listener, int axis, java.lang.Object[] buts)
          Creates a panel with given buttons, given axis, adding the given listener.
IXButPanel(java.util.EventListener listener, java.lang.Object[] buttons)
          Creates a panel with given buttons, adding the given listener.
IXButPanel(int axis)
          Creates a panel for buttons with the given axis.
 
Method Summary
 void addActionListener(java.awt.event.ActionListener listener)
           
 javax.swing.AbstractButton addButton(java.util.EventListener listener, java.lang.Object but)
          Adds a button with the given listener to this panel.
 void addListener(java.util.EventListener listener)
           
 void addMouseListener(java.awt.event.MouseListener listener)
           
protected  void fillButtonGroup()
           
 javax.swing.ButtonGroup getButtonGroup()
           
 java.util.HashSet getButtons()
           
 int getOrientation()
           
 java.lang.String getSelectionCommand()
           
 boolean isButtonGroup()
           
 void setButtonGroup(boolean group)
           
 void setEnabled(boolean isEditable)
           
 
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, 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
 

Field Detail

groupFlag

public boolean groupFlag

group

public javax.swing.ButtonGroup group

buttons

public java.util.HashSet buttons

orientation

public int orientation
Constructor Detail

IXButPanel

public IXButPanel()
Creates a panel for buttons with Y_AXIS layout.


IXButPanel

public IXButPanel(int axis)
Creates a panel for buttons with the given axis.

Parameters:
axis - the layout orientation: BoxLayout.X_AXIS or BoxLayout.Y_AXIS

IXButPanel

public IXButPanel(java.util.EventListener listener,
                  int axis,
                  java.lang.Object[] buts)
Creates a panel with given buttons, given axis, adding the given listener.

Parameters:
listener - a listener interested in the buttons. MouseListener and ActionListener are good.
axis - the layout orientation: BoxLayout.X_AXIS or BoxLayout.Y_AXIS
buttons - a string array of button names or an array of buttons

IXButPanel

public IXButPanel(java.util.EventListener listener,
                  java.lang.Object[] buttons)
Creates a panel with given buttons, adding the given listener. Creates the panel with the default layout, i.e. Y_AXIS.

Parameters:
listener - a listener interested in the buttons
buttons - a string array of button names or an array of buttons
Method Detail

getOrientation

public int getOrientation()

addButton

public javax.swing.AbstractButton addButton(java.util.EventListener listener,
                                            java.lang.Object but)
Adds a button with the given listener to this panel. If the given object is a string, creates a new JButton with the string as its label. If the button's actionCommand is empty, it is set to the button's label. Sets sensible minimum widths for the button and adds it to this panel.

Parameters:
listener - a listener interested in the buttons
but - a string or an AbstractButton that will be added

addListener

public void addListener(java.util.EventListener listener)

addMouseListener

public void addMouseListener(java.awt.event.MouseListener listener)
Overrides:
addMouseListener in class java.awt.Component

addActionListener

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

getSelectionCommand

public java.lang.String getSelectionCommand()

setButtonGroup

public void setButtonGroup(boolean group)

isButtonGroup

public boolean isButtonGroup()

getButtonGroup

public javax.swing.ButtonGroup getButtonGroup()

getButtons

public java.util.HashSet getButtons()

fillButtonGroup

protected void fillButtonGroup()

setEnabled

public void setEnabled(boolean isEditable)
Overrides:
setEnabled in class javax.swing.JComponent