org.moyoman.client.reference.util
Class StatusBar

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JPanel
                          |
                          +--org.moyoman.client.reference.util.StatusBar
All Implemented Interfaces:
Accessible, ImageObserver, MenuContainer, Serializable

public class StatusBar
extends JPanel

Provides a UI for a status message area. The status bar may contain one to many separate message areas.

Since:
v0.01
Version:
v0.01
Author:
Jeffrey M. Thompson
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
private  JLabel[] _labelsUI
          Collection of message labels.
private  int[] _relativeSizes
          Array of the relative sizes of the message labels.
private  Timer[] _timers
          Collection of timers, one for each label.
static int DEFAULT_DISPLAY_TIME
          The time text is displayed by default in milliseconds.
static int FOREVER_DISPLAY_TIME
          The time text is displayed forever.
 
Fields inherited from class javax.swing.JPanel
 
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.Container
 
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
StatusBar(int[] relativeSizes)
          Construct a message area which contains the same number of message labels as the size of the input array of their relative sizes.
StatusBar(int[] relativeSizes, Color fontColor, Font font)
          Construct a message area which contains the same number of message labels as the size of the input array of their relative sizes.
 
Method Summary
 void clear(int position)
          Clear the specified message label.
 void clearAll()
          Clear all the message labels.
private  void constructLabels(int[] relativeSizes, Color color, Font font)
          Construct the message labels.
 String getText(int position)
          Return the display string on the specified message label.
 void setEnabled(int position, boolean enabled)
          Set the enabled state of the specified message label.
 void setHorizontalAlignment(int position, int alignment)
          Sets the alignment of the label's contents along the X axis.
 void setIcon(int position, Icon icon)
          Set the icon on the specified message label.
 void setText(int position, String message)
          Set the display string on the specified message label.
 void setText(int position, String message, int displayTime)
          Set the display string on the specified message label.
 void setToolTipText(int position, String toolTip)
          Set the tool tip on the specified message label.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, 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

DEFAULT_DISPLAY_TIME

public static final int DEFAULT_DISPLAY_TIME
The time text is displayed by default in milliseconds.

See Also:
Constant Field Values

FOREVER_DISPLAY_TIME

public static final int FOREVER_DISPLAY_TIME
The time text is displayed forever.

See Also:
Constant Field Values

_labelsUI

private JLabel[] _labelsUI
Collection of message labels.


_relativeSizes

private int[] _relativeSizes
Array of the relative sizes of the message labels.


_timers

private Timer[] _timers
Collection of timers, one for each label.

Constructor Detail

StatusBar

public StatusBar(int[] relativeSizes)
Construct a message area which contains the same number of message labels as the size of the input array of their relative sizes.

Parameters:
relativeSizes - Supplies the number and relative sizes of the message areas.
Since:
v0.01

StatusBar

public StatusBar(int[] relativeSizes,
                 Color fontColor,
                 Font font)
Construct a message area which contains the same number of message labels as the size of the input array of their relative sizes.

Parameters:
relativeSizes - Supplies the number and relative sizes of the message areas.
fontColor - Font color used for all message areas.
font - Font used for all message areas.
Since:
v0.01
Method Detail

setEnabled

public void setEnabled(int position,
                       boolean enabled)
Set the enabled state of the specified message label.

Parameters:
position - The position of the label in the status bar. 0==far left.
enabled - New enable state.
Since:
v0.01

setHorizontalAlignment

public void setHorizontalAlignment(int position,
                                   int alignment)
Sets the alignment of the label's contents along the X axis.

Parameters:
position - The position of the label in the status bar. 0==far left.
alignment - Alignment.
Since:
v0.01
See Also:
JLabel

setIcon

public void setIcon(int position,
                    Icon icon)
Set the icon on the specified message label.

Parameters:
position - The position of the label in the status bar. 0==far left.
icon - Icon.
Since:
v0.01

setText

public void setText(int position,
                    String message)
Set the display string on the specified message label.

Parameters:
position - The position of the label in the status bar. 0==far left.
message - Message.
Since:
v0.01

setText

public void setText(int position,
                    String message,
                    int displayTime)
Set the display string on the specified message label.

Parameters:
position - The position of the label in the status bar. 0==far left.
message - The message to display.
displayTime - The time to display the message. If <= 0, the message remains until replaced.
Since:
v0.01

getText

public String getText(int position)
Return the display string on the specified message label.

Parameters:
position - The position of the label in the status bar. 0==far left.
Since:
v0.01

setToolTipText

public void setToolTipText(int position,
                           String toolTip)
Set the tool tip on the specified message label.

Parameters:
position - The position of the label in the status bar. 0==far left.
toolTip - Tool tip text.
Since:
v0.01

clear

public void clear(int position)
Clear the specified message label.

Parameters:
position - The position of the label in the status bar. 0==far left.
Since:
v0.01

clearAll

public void clearAll()
Clear all the message labels.

Since:
v0.01

constructLabels

private void constructLabels(int[] relativeSizes,
                             Color color,
                             Font font)
Construct the message labels.

Parameters:
relativeSizes - Supplies the number and relative sizes of the message areas.
color - Foreground color.
font - Font.
Since:
v0.01