org.argouml.ui
Class StatusBar

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.argouml.ui.StatusBar
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.lang.Runnable, java.util.EventListener, javax.accessibility.Accessible, org.argouml.taskmgmt.ProgressListener, org.argouml.taskmgmt.ProgressMonitor
Direct Known Subclasses:
ArgoStatusBar

public class StatusBar
extends javax.swing.JPanel
implements java.lang.Runnable, org.argouml.taskmgmt.ProgressMonitor

The status bar.

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.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
StatusBar()
          The constructor.
 
Method Summary
 void close()
          Indicate that the operation is complete.
 void doFakeProgress(java.lang.String s, int work)
           
 void incProgress(int delataPercent)
           
 boolean isCanceled()
          Determines if the user wants to cancel the current action.
 void notifyMessage(java.lang.String title, java.lang.String introduction, java.lang.String message)
          If something happens the user should be notified.
 void notifyNullAction()
          This method notifies the GUI that the working thread determines that there are no actions that could be done for various reasons.
 void progress(org.argouml.taskmgmt.ProgressEvent event)
          Called when a ProgressEvent is fired.
 void run()
           
 void setMaximumProgress(int max)
          Determines the maximum amount of progress that can be reached.
 void showProgress(int percent)
           
 void showStatus(java.lang.String s)
           
 void updateMainTask(java.lang.String name)
          Updates the major task that is going on.
 void updateProgress(int value)
          Informs the progress tool that the total progress was updated.
 void updateSubTask(java.lang.String name)
          Updates the subtask that is in progress.
 
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, setEnabled, 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

StatusBar

public StatusBar()
The constructor.

Method Detail

showStatus

public void showStatus(java.lang.String s)
Parameters:
s - the status string to show

showProgress

public void showProgress(int percent)
Parameters:
percent - the percentage of the progress bar to be shown

incProgress

public void incProgress(int delataPercent)
Parameters:
delataPercent - an increment for the progrss bar

doFakeProgress

public void doFakeProgress(java.lang.String s,
                           int work)
Parameters:
s - the status bar text
work - the work that has to be done, i.e. the maximum value for the progress

run

public void run()
Specified by:
run in interface java.lang.Runnable

progress

public void progress(org.argouml.taskmgmt.ProgressEvent event)
              throws java.lang.InterruptedException
Description copied from interface: org.argouml.taskmgmt.ProgressListener
Called when a ProgressEvent is fired.

Specified by:
progress in interface org.argouml.taskmgmt.ProgressListener
Parameters:
event - the ProgressEvent
Throws:
java.lang.InterruptedException - if thread is interrupted

updateProgress

public void updateProgress(int value)
Description copied from interface: org.argouml.taskmgmt.ProgressMonitor
Informs the progress tool that the total progress was updated.

Specified by:
updateProgress in interface org.argouml.taskmgmt.ProgressMonitor
Parameters:
value - the amount of progress done so far, this is the whole progress until now, not just the subtask's progress or the main task's progress

updateSubTask

public void updateSubTask(java.lang.String name)
Description copied from interface: org.argouml.taskmgmt.ProgressMonitor
Updates the subtask that is in progress.

Specified by:
updateSubTask in interface org.argouml.taskmgmt.ProgressMonitor
Parameters:
name - the name of the subtask

updateMainTask

public void updateMainTask(java.lang.String name)
Description copied from interface: org.argouml.taskmgmt.ProgressMonitor
Updates the major task that is going on.

Specified by:
updateMainTask in interface org.argouml.taskmgmt.ProgressMonitor
Parameters:
name - the new task

isCanceled

public boolean isCanceled()
Description copied from interface: org.argouml.taskmgmt.ProgressMonitor
Determines if the user wants to cancel the current action. If this happens the current action should be stopped.

So in a long running action, you should query this periodicaly to see if the user still wants to continue or he canceled the action.

NOTE: It appears to be some kind of Java tradition to misspell the name of this method, so we follow the Swing and Eclipse tradition of spelling it with a single "L".

Specified by:
isCanceled in interface org.argouml.taskmgmt.ProgressMonitor
Returns:
true if the user cancelled the action and false otherwise

setMaximumProgress

public void setMaximumProgress(int max)
Description copied from interface: org.argouml.taskmgmt.ProgressMonitor
Determines the maximum amount of progress that can be reached. This should be set before the progress is updated.

Specified by:
setMaximumProgress in interface org.argouml.taskmgmt.ProgressMonitor
Parameters:
max - the maximum progress value or -1 if the value is unknown

notifyNullAction

public void notifyNullAction()
Description copied from interface: org.argouml.taskmgmt.ProgressMonitor
This method notifies the GUI that the working thread determines that there are no actions that could be done for various reasons. The GUI should notify the user too.

Specified by:
notifyNullAction in interface org.argouml.taskmgmt.ProgressMonitor

notifyMessage

public void notifyMessage(java.lang.String title,
                          java.lang.String introduction,
                          java.lang.String message)
Description copied from interface: org.argouml.taskmgmt.ProgressMonitor
If something happens the user should be notified.

Specified by:
notifyMessage in interface org.argouml.taskmgmt.ProgressMonitor
Parameters:
title - a title for the error/information/etc
introduction - a short message that will continue with the message
message - the actual message with all the details

close

public void close()
Description copied from interface: org.argouml.taskmgmt.ProgressMonitor
Indicate that the operation is complete. This happens automatically when the value set by setProgress is >= max, but it may be called earlier if the operation ends early.

Specified by:
close in interface org.argouml.taskmgmt.ProgressMonitor


ArgoUML © 1996-2006ArgoUML HomepageArgoUML Cookbook