|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent com.dlsc.flexgantt.swing.util.InfiniteProgressPanel
public class InfiniteProgressPanel
An infinite progress panel displays a rotating figure and a message to notice
the user of a long, duration unknown task. The shape and the text are drawn
upon a white veil which alpha level (or shield value) lets the underlying
component shine through. This panel is meant to be used asa glass pane
in the window performing the long operation.
On the contrary to regular glass panes, you don't need to set it visible or
not by yourself. Once you've started the animation all the mouse events are
intercepted by this panel, preventing them from being forwared to the
underlying components.
The panel can be controlled by the start()
,
stop()
and interrupt()
methods.
Example:
InfiniteProgressPanel pane = new InfiniteProgressPanel(); frame.setGlassPane(pane); pane.start()
setFont()
and setForeground()
.
Nested Class Summary |
---|
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 | |
---|---|
protected int |
alphaLevel
Alpha level of the veil, used for fade in/out. |
protected java.lang.Thread |
animation
The animation thread is responsible for fade in/out and rotation. |
protected int |
barsCount
Amount of bars composing the circular shape. |
protected float |
fps
Amount of frames per seconde. |
protected java.awt.RenderingHints |
hints
Rendering hints to set anti aliasing. |
protected int |
rampDelay
Duration of the veil's fade in/out. |
protected float |
shield
Alpha level of the veil. |
protected boolean |
started
Notifies whether the animation is running or not. |
protected java.lang.String |
text
Message displayed below the circular shape. |
protected java.awt.geom.Area[] |
ticker
Contains the bars composing the circular shape. |
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 | |
---|---|
InfiniteProgressPanel()
Creates a new progress panel with default values: No message 14 bars Veil's alpha level is 70% 15 frames per second Fade in/out last 300 ms |
|
InfiniteProgressPanel(java.lang.String text)
Creates a new progress panel with default values: 14 bars Veil's alpha level is 70% 15 frames per second Fade in/out last 300 ms |
|
InfiniteProgressPanel(java.lang.String text,
int barsCount)
Creates a new progress panel with default values: Veil's alpha level is 70% 15 frames per second Fade in/out last 300 ms |
|
InfiniteProgressPanel(java.lang.String text,
int barsCount,
float shield)
Creates a new progress panel with default values: 15 frames per second Fade in/out last 300 ms |
|
InfiniteProgressPanel(java.lang.String text,
int barsCount,
float shield,
float fps)
Creates a new progress panel with default values: Fade in/out last 300 ms |
|
InfiniteProgressPanel(java.lang.String text,
int barsCount,
float shield,
float fps,
int rampDelay)
Creates a new progress panel. |
Method Summary | |
---|---|
java.lang.String |
getText()
Returns the current displayed message. |
void |
interrupt()
Interrupts the animation, whatever its state is. |
void |
mouseClicked(java.awt.event.MouseEvent e)
|
void |
mouseEntered(java.awt.event.MouseEvent e)
|
void |
mouseExited(java.awt.event.MouseEvent e)
|
void |
mousePressed(java.awt.event.MouseEvent e)
|
void |
mouseReleased(java.awt.event.MouseEvent e)
|
void |
paintComponent(java.awt.Graphics g)
|
void |
setText(java.lang.String text)
Changes the displayed message at runtime. |
void |
start()
Starts the waiting animation by fading the veil in, then rotating the shapes. |
void |
stop()
Stops the waiting animation by stopping the rotation of the circular shape and then by fading out the veil. |
Methods inherited from class javax.swing.JComponent |
---|
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, 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, updateUI |
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 |
Field Detail |
---|
protected java.awt.geom.Area[] ticker
protected java.lang.Thread animation
protected boolean started
protected int alphaLevel
protected int rampDelay
protected float shield
protected java.lang.String text
protected int barsCount
protected float fps
protected java.awt.RenderingHints hints
Constructor Detail |
---|
public InfiniteProgressPanel()
public InfiniteProgressPanel(java.lang.String text)
text
- The message to be displayed. Can be null or empty.public InfiniteProgressPanel(java.lang.String text, int barsCount)
text
- The message to be displayed. Can be null or empty.barsCount
- The amount of bars composing the circular shapepublic InfiniteProgressPanel(java.lang.String text, int barsCount, float shield)
text
- The message to be displayed. Can be null or empty.barsCount
- The amount of bars composing the circular shape.shield
- The alpha level between 0.0 and 1.0 of the colored shield (or
veil).public InfiniteProgressPanel(java.lang.String text, int barsCount, float shield, float fps)
text
- The message to be displayed. Can be null or empty.barsCount
- The amount of bars composing the circular shape.shield
- The alpha level between 0.0 and 1.0 of the colored shield (or
veil).fps
- The number of frames per second. Lower this value to decrease
CPU usage.public InfiniteProgressPanel(java.lang.String text, int barsCount, float shield, float fps, int rampDelay)
text
- The message to be displayed. Can be null or empty.barsCount
- The amount of bars composing the circular shape.shield
- The alpha level between 0.0 and 1.0 of the colored shield (or
veil).fps
- The number of frames per second. Lower this value to decrease
CPU usage.rampDelay
- The duration, in milli seconds, of the fade in and the fade
out of the veil.Method Detail |
---|
public void setText(java.lang.String text)
text
- The message to be displayed. Can be null or empty.public java.lang.String getText()
public void start()
public void stop()
public void interrupt()
public void paintComponent(java.awt.Graphics g)
paintComponent
in class javax.swing.JComponent
public void mouseClicked(java.awt.event.MouseEvent e)
mouseClicked
in interface java.awt.event.MouseListener
public void mousePressed(java.awt.event.MouseEvent e)
mousePressed
in interface java.awt.event.MouseListener
public void mouseReleased(java.awt.event.MouseEvent e)
mouseReleased
in interface java.awt.event.MouseListener
public void mouseEntered(java.awt.event.MouseEvent e)
mouseEntered
in interface java.awt.event.MouseListener
public void mouseExited(java.awt.event.MouseEvent e)
mouseExited
in interface java.awt.event.MouseListener
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |