- 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 forJProgressBar
.- Since:
- 1.7
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.plaf.basic.BasicProgressBarUI
BasicProgressBarUI.ChangeHandler
-
-
Field Summary
-
Fields inherited from class javax.swing.plaf.basic.BasicProgressBarUI
boxRect, changeListener, progressBar
-
Fields inherited from interface javax.swing.plaf.synth.SynthConstants
DEFAULT, DISABLED, ENABLED, FOCUSED, MOUSE_OVER, PRESSED, SELECTED
-
-
Constructor Summary
Constructors Constructor Description SynthProgressBarUI()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ComponentUI
createUI(JComponent x)
Creates a new UI object for the given component.int
getBaseline(JComponent c, int width, int height)
Returns the baseline.protected Rectangle
getBox(Rectangle r)
Stores the position and size of the bouncing box that would be painted for the current animation index inr
and returnsr
.SynthContext
getContext(JComponent c)
Returns the Context for the specified component.Dimension
getPreferredSize(JComponent c)
Returns the specified component's preferred size appropriate for the look and feel.protected void
installDefaults()
Installs default properties.protected void
installListeners()
Registers listeners.void
paint(Graphics g, JComponent c)
Paints the specified component according to the Look and Feel.protected void
paint(SynthContext context, Graphics g)
Paints the specified component.void
paintBorder(SynthContext context, Graphics g, int x, int y, int w, int h)
Paints the border.protected void
paintText(SynthContext context, Graphics g, String title)
Paints the component's text.void
propertyChange(PropertyChangeEvent e)
This method gets called when a bound property is changed.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.protected void
uninstallDefaults()
Unintalls default properties.protected void
uninstallListeners()
Removes all listeners installed by this object.void
update(Graphics g, JComponent c)
Notifies this UI delegate to repaint the specified component.-
Methods inherited from class javax.swing.plaf.basic.BasicProgressBarUI
getAmountFull, getAnimationIndex, getBaselineResizeBehavior, getBoxLength, getCellLength, getCellSpacing, getFrameCount, getMaximumSize, getMinimumSize, getPreferredInnerHorizontal, getPreferredInnerVertical, getSelectionBackground, getSelectionForeground, getStringPlacement, incrementAnimationIndex, installUI, paintDeterminate, paintIndeterminate, paintString, setCellLength, setCellSpacing, startAnimationTimer, stopAnimationTimer, uninstallUI
-
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount
-
-
-
-
Method Detail
-
createUI
public static ComponentUI createUI(JComponent x)
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:
installListeners
in classBasicProgressBarUI
-
uninstallListeners
protected void uninstallListeners()
Removes all listeners installed by this object.- Overrides:
uninstallListeners
in classBasicProgressBarUI
-
installDefaults
protected void installDefaults()
Installs default properties.- Overrides:
installDefaults
in classBasicProgressBarUI
-
uninstallDefaults
protected void uninstallDefaults()
Unintalls default properties.- Overrides:
uninstallDefaults
in classBasicProgressBarUI
-
getContext
public SynthContext getContext(JComponent c)
Returns the Context for the specified component.- Specified by:
getContext
in interfaceSynthUI
- Parameters:
c
- Component requesting SynthContext.- Returns:
- SynthContext describing component.
-
getBaseline
public int getBaseline(JComponent c, int width, int height)
Returns the baseline.- Overrides:
getBaseline
in classBasicProgressBarUI
- Parameters:
c
-JComponent
baseline 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:
JComponent.getBaseline(int, int)
-
getBox
protected Rectangle getBox(Rectangle r)
Stores the position and size of the bouncing box that would be painted for the current animation index inr
and 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:
getBox
in classBasicProgressBarUI
- Parameters:
r
- the Rectangle instance to be modified; may benull
- Returns:
null
if no box should be drawn; otherwise, returns the passed-in rectangle (if non-null) or a new rectangle- See Also:
BasicProgressBarUI.setAnimationIndex(int)
-
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 therepaint
method is invoked.- Overrides:
setAnimationIndex
in classBasicProgressBarUI
- Parameters:
newValue
- the new animation index; no checking is performed on its value- See Also:
BasicProgressBarUI.incrementAnimationIndex()
-
update
public void update(Graphics g, JComponent c)
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
paint
method.- Overrides:
update
in classComponentUI
- Parameters:
g
- theGraphics
object used for paintingc
- the component being painted- See Also:
paint(SynthContext,Graphics)
-
paint
public void paint(Graphics g, JComponent c)
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:
paint
in classBasicProgressBarUI
- Parameters:
g
- theGraphics
object used for paintingc
- the component being painted- See Also:
paint(SynthContext,Graphics)
-
paint
protected void paint(SynthContext context, Graphics g)
Paints the specified component.- Parameters:
context
- context for the component being paintedg
- theGraphics
object used for painting- See Also:
update(Graphics,JComponent)
-
paintText
protected void paintText(SynthContext context, Graphics g, String title)
Paints the component's text.- Parameters:
context
- context for the component being paintedg
-Graphics
object used for paintingtitle
- the text to paint
-
paintBorder
public void paintBorder(SynthContext context, Graphics g, int x, int y, int w, int h)
Paints the border.- Specified by:
paintBorder
in interfaceSynthUI
- Parameters:
context
- a component contextg
-Graphics
to paint onx
- the X coordinatey
- the Y coordinatew
- width of the borderh
- height of the border
-
propertyChange
public void propertyChange(PropertyChangeEvent e)
This method gets called when a bound property is changed.- Specified by:
propertyChange
in interfacePropertyChangeListener
- Parameters:
e
- A PropertyChangeEvent object describing the event source and the property that has changed.
-
getPreferredSize
public Dimension getPreferredSize(JComponent c)
Returns the specified component's preferred size appropriate for the look and feel. Ifnull
is 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:
getPreferredSize
in 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
Dimension
object containing given component's preferred size appropriate for the look and feel - See Also:
JComponent.getPreferredSize()
,LayoutManager.preferredLayoutSize(java.awt.Container)
-
-