Class SynthProgressBarUI
java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.ProgressBarUI
javax.swing.plaf.basic.BasicProgressBarUI
javax.swing.plaf.synth.SynthProgressBarUI
- All Implemented Interfaces:
PropertyChangeListener, EventListener, SynthConstants, SynthUI
public class SynthProgressBarUI
extends BasicProgressBarUI
implements SynthUI, PropertyChangeListener
Provides the Synth L&F UI delegate for
JProgressBar.- Since:
- 1.7
-
Nested Class Summary
Nested classes/interfaces inherited from class BasicProgressBarUI
BasicProgressBarUI.ChangeHandlerModifier and TypeClassDescriptionclassThis class should be treated as a "protected" inner class. -
Field Summary
Fields inherited from class BasicProgressBarUI
boxRect, changeListener, progressBarModifier and TypeFieldDescriptionprotected RectangleUsed to hold the location and size of the bouncing box (returned by getBox) to be painted.protected ChangeListenerThe instance ofChangeListener.protected JProgressBarThe instance ofJProgressBar.Fields inherited from interface SynthConstants
DEFAULT, DISABLED, ENABLED, FOCUSED, MOUSE_OVER, PRESSED, SELECTEDModifier and TypeFieldDescriptionstatic final intIndicates the region is the default.static final intPrimary state indicating the region is not enabled.static final intPrimary state indicating the component is enabled.static final intIndicates the region has focus.static final intPrimary state indicating the mouse is over the region.static final intPrimary state indicating the region is in a pressed state.static final intIndicates the region is selected. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic ComponentUICreates a new UI object for the given component.intgetBaseline(JComponent c, int width, int height) Returns the baseline.protected RectangleStores the position and size of the bouncing box that would be painted for the current animation index inrand returnsr.Returns the Context for the specified component.Returns the specified component's preferred size appropriate for the look and feel.protected voidInstalls default properties.protected voidRegisters listeners.voidpaint(Graphics g, JComponent c) Paints the specified component according to the Look and Feel.protected voidpaint(SynthContext context, Graphics g) Paints the specified component.voidpaintBorder(SynthContext context, Graphics g, int x, int y, int w, int h) Paints the border.protected voidpaintText(SynthContext context, Graphics g, String title) Paints the component's text.voidThis method gets called when a bound property is changed.protected voidsetAnimationIndex(int newValue) Sets the index of the current animation frame to the specified value and requests that the progress bar be repainted.protected voidUnintalls default properties.protected voidRemoves all listeners installed by this object.voidupdate(Graphics g, JComponent c) Notifies this UI delegate to repaint the specified component.Methods inherited from class BasicProgressBarUI
getAmountFull, getAnimationIndex, getBaselineResizeBehavior, getBoxLength, getCellLength, getCellSpacing, getFrameCount, getMaximumSize, getMinimumSize, getPreferredInnerHorizontal, getPreferredInnerVertical, getSelectionBackground, getSelectionForeground, getStringPlacement, incrementAnimationIndex, installUI, paintDeterminate, paintIndeterminate, paintString, setCellLength, setCellSpacing, startAnimationTimer, stopAnimationTimer, uninstallUIModifier and TypeMethodDescriptionprotected intgetAmountFull(Insets b, int width, int height) This determines the amount of the progress bar that should be filled based on the percent done gathered from the model.protected intGets the index of the current animation frame.Returns an enum indicating how the baseline of the component changes as the size changes.protected intgetBoxLength(int availableLength, int otherDimension) Returns the length of the "bouncing box" to be painted.protected intReturns the width (if HORIZONTAL) or height (if VERTICAL) of each of the individual cells/units to be rendered in the progress bar.protected intReturns the spacing between each of the cells/units in the progress bar.protected final intReturns the number of frames for the complete animation loop used by an indeterminate JProgressBar.Returns the specified component's maximum size appropriate for the look and feel.The Minimum size for this component is 10.protected DimensionReturns preferred size of the horizontalJProgressBar.protected DimensionReturns preferred size of the verticalJProgressBar.protected ColorThe "selectionBackground" is the color of the text when it is painted over an unfilled area of the progress bar.protected ColorThe "selectionForeground" is the color of the text when it is painted over a filled area of the progress bar.protected PointgetStringPlacement(Graphics g, String progressString, int x, int y, int width, int height) Designate the place where the progress string will be painted.protected voidSets the index of the current animation frame, to the next valid value, which results in the progress bar being repainted.voidConfigures the specified component appropriately for the look and feel.protected voidAll purpose paint method that should do the right thing for almost all linear, determinate progress bars.protected voidAll purpose paint method that should do the right thing for all linear bouncing-box progress bars.protected voidpaintString(Graphics g, int x, int y, int width, int height, int amountFull, Insets b) Paints the progress string.protected voidsetCellLength(int cellLen) Sets the cell length.protected voidsetCellSpacing(int cellSpace) Sets the cell spacing.protected voidStarts the animation thread, creating and initializing it if necessary.protected voidStops the animation thread.voidReverses configuration which was done on the specified component duringinstallUI.Methods inherited from class ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCountModifier and TypeMethodDescriptionbooleancontains(JComponent c, int x, int y) Returnstrueif the specified x,y location is contained within the look and feel's defined shape of the specified component.getAccessibleChild(JComponent c, int i) Returns theithAccessiblechild of the object.intReturns the number of accessible children in the object.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitModifier and TypeMethodDescriptionprotected Objectclone()Creates and returns a copy of this object.booleanIndicates whether some other object is "equal to" this one.protected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.Finalization is deprecated and subject to removal in a future release.final Class<?> getClass()Returns the runtime class of thisObject.inthashCode()Returns a hash code value for this object.final voidnotify()Wakes up a single thread that is waiting on this object's monitor.final voidWakes up all threads that are waiting on this object's monitor.toString()Returns a string representation of the object.final voidwait()Causes the current thread to wait until it is awakened, typically by being notified or interrupted.final voidwait(long timeoutMillis) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.final voidwait(long timeoutMillis, int nanos) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
-
Constructor Details
-
SynthProgressBarUI
public SynthProgressBarUI()Constructs aSynthProgressBarUI.
-
-
Method Details
-
createUI
Creates a new UI object for the given component.- Parameters:
x- component to create UI object for- Returns:
- the UI object
-
installListeners
protected void installListeners()Registers listeners.- Overrides:
installListenersin classBasicProgressBarUI
-
uninstallListeners
protected void uninstallListeners()Removes all listeners installed by this object.- Overrides:
uninstallListenersin classBasicProgressBarUI
-
installDefaults
protected void installDefaults()Installs default properties.- Overrides:
installDefaultsin classBasicProgressBarUI
-
uninstallDefaults
protected void uninstallDefaults()Unintalls default properties.- Overrides:
uninstallDefaultsin classBasicProgressBarUI
-
getContext
Returns the Context for the specified component.- Specified by:
getContextin interfaceSynthUI- Parameters:
c- Component requesting SynthContext.- Returns:
- SynthContext describing component.
-
getBaseline
Returns the baseline.- Overrides:
getBaselinein classBasicProgressBarUI- Parameters:
c-JComponentbaseline is being requested forwidth- the width to get the baseline forheight- the height to get the baseline for- Returns:
- baseline or a value < 0 indicating there is no reasonable baseline
- See Also:
-
getBox
Stores the position and size of the bouncing box that would be painted for the current animation index inrand returnsr. Subclasses that add to the painting performed in this class's implementation ofpaintIndeterminate-- to draw an outline around the bouncing box, for example -- can use this method to get the location of the bouncing box that was just painted. By overriding this method, you have complete control over the size and position of the bouncing box, without having to reimplementpaintIndeterminate.- Overrides:
getBoxin classBasicProgressBarUI- Parameters:
r- the Rectangle instance to be modified; may benull- Returns:
nullif no box should be drawn; otherwise, returns the passed-in rectangle (if non-null) or a new rectangle- See Also:
-
setAnimationIndex
protected void setAnimationIndex(int newValue) Sets the index of the current animation frame to the specified value and requests that the progress bar be repainted. Subclasses that don't use the default painting code might need to override this method to change the way that therepaintmethod is invoked.- Overrides:
setAnimationIndexin classBasicProgressBarUI- Parameters:
newValue- the new animation index; no checking is performed on its value- See Also:
-
update
Notifies this UI delegate to repaint the specified component. This method paints the component background, then calls thepaint(SynthContext,Graphics)method.In general, this method does not need to be overridden by subclasses. All Look and Feel rendering code should reside in the
paintmethod.- Overrides:
updatein classComponentUI- Parameters:
g- theGraphicsobject used for paintingc- the component being painted- See Also:
-
paint
Paints the specified component according to the Look and Feel.This method is not used by Synth Look and Feel. Painting is handled by the
paint(SynthContext,Graphics)method.- Overrides:
paintin classBasicProgressBarUI- Parameters:
g- theGraphicsobject used for paintingc- the component being painted- See Also:
-
paint
Paints the specified component.- Parameters:
context- context for the component being paintedg- theGraphicsobject used for painting- See Also:
-
paintText
Paints the component's text.- Parameters:
context- context for the component being paintedg-Graphicsobject used for paintingtitle- the text to paint
-
paintBorder
Paints the border.- Specified by:
paintBorderin interfaceSynthUI- Parameters:
context- a component contextg-Graphicsto paint onx- the X coordinatey- the Y coordinatew- width of the borderh- height of the border
-
propertyChange
This method gets called when a bound property is changed.- Specified by:
propertyChangein interfacePropertyChangeListener- Parameters:
e- A PropertyChangeEvent object describing the event source and the property that has changed.
-
getPreferredSize
Returns the specified component's preferred size appropriate for the look and feel. Ifnullis returned, the preferred size will be calculated by the component's layout manager instead (this is the preferred approach for any component with a specific layout manager installed). The default implementation of this method returnsnull.- Overrides:
getPreferredSizein classBasicProgressBarUI- Parameters:
c- the component whose preferred size is being queried; this argument is often ignored, but might be used if the UI object is stateless and shared by multiple components- Returns:
- a
Dimensionobject containing given component's preferred size appropriate for the look and feel - See Also:
-