- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.SliderUI
-
- javax.swing.plaf.basic.BasicSliderUI
-
- javax.swing.plaf.synth.SynthSliderUI
-
- All Implemented Interfaces:
PropertyChangeListener,EventListener,SynthConstants,SynthUI
public class SynthSliderUI extends BasicSliderUI implements PropertyChangeListener, SynthUI
Provides the Synth L&F UI delegate forJSlider.- Since:
- 1.7
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.plaf.basic.BasicSliderUI
BasicSliderUI.ActionScroller, BasicSliderUI.ChangeHandler, BasicSliderUI.ComponentHandler, BasicSliderUI.FocusHandler, BasicSliderUI.PropertyChangeHandler, BasicSliderUI.ScrollListener, BasicSliderUI.TrackListener
-
-
Field Summary
-
Fields inherited from class javax.swing.plaf.basic.BasicSliderUI
changeListener, componentListener, contentRect, focusInsets, focusListener, focusRect, insetCache, labelRect, leftToRightCache, MAX_SCROLL, MIN_SCROLL, NEGATIVE_SCROLL, POSITIVE_SCROLL, propertyChangeListener, scrollListener, scrollTimer, slider, thumbRect, tickRect, trackBuffer, trackListener, trackRect
-
Fields inherited from interface javax.swing.plaf.synth.SynthConstants
DEFAULT, DISABLED, ENABLED, FOCUSED, MOUSE_OVER, PRESSED, SELECTED
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedSynthSliderUI(JSlider c)Constructs aSynthSliderUI.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcalculateGeometry()Calculates the geometry.protected voidcalculateThumbLocation()Calculates the thumb location.protected BasicSliderUI.TrackListenercreateTrackListener(JSlider s)Creates a track listener.static ComponentUIcreateUI(JComponent c)Creates a new UI object for the given component.intgetBaseline(JComponent c, int width, int height)Returns the baseline.SynthContextgetContext(JComponent c)Returns the Context for the specified component.DimensiongetMinimumSize(JComponent c)Returns the minimum size.DimensiongetPreferredSize(JComponent c)Returns the preferred size.protected DimensiongetThumbSize()Returns the thumb size.protected voidinstallDefaults(JSlider slider)Installs the defaults.protected voidinstallListeners(JSlider slider)Installs listeners.protected voidlayout()Lays out the slider.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 voidpaintThumb(SynthContext context, Graphics g, Rectangle thumbBounds)Paints the slider thumb.protected voidpaintTrack(SynthContext context, Graphics g, Rectangle trackBounds)Paints the slider track.voidpropertyChange(PropertyChangeEvent e)This method gets called when a bound property is changed.protected voidrecalculateIfInsetsChanged()Recalculates if the insets have changed.voidsetThumbLocation(int x, int y)Sets the thumb location.protected voiduninstallDefaults(JSlider slider)Uninstalls default setting.protected voiduninstallListeners(JSlider slider)Uninstalls listeners.voidupdate(Graphics g, JComponent c)Notifies this UI delegate to repaint the specified component.intvalueForXPosition(int xPos)Returns the value at the x position.intvalueForYPosition(int yPos)Returns the value at the y position.protected intxPositionForValue(int value)Returns the x position for a value.protected intyPositionForValue(int value, int trackY, int trackHeight)Returns the y location for the specified value.-
Methods inherited from class javax.swing.plaf.basic.BasicSliderUI
calculateContentRect, calculateFocusRect, calculateLabelRect, calculateThumbSize, calculateTickRect, calculateTrackBuffer, calculateTrackRect, createChangeListener, createComponentListener, createFocusListener, createPropertyChangeListener, createScrollListener, drawInverted, getBaselineResizeBehavior, getFocusColor, getHeightOfHighValueLabel, getHeightOfLowValueLabel, getHeightOfTallestLabel, getHighestValue, getHighestValueLabel, getHighlightColor, getLowestValue, getLowestValueLabel, getMaximumSize, getMinimumHorizontalSize, getMinimumVerticalSize, getPreferredHorizontalSize, getPreferredVerticalSize, getShadowColor, getTickLength, getWidthOfHighValueLabel, getWidthOfLowValueLabel, getWidthOfWidestLabel, installKeyboardActions, installUI, isDragging, labelsHaveSameBaselines, paintFocus, paintHorizontalLabel, paintLabels, paintMajorTickForHorizSlider, paintMajorTickForVertSlider, paintMinorTickForHorizSlider, paintMinorTickForVertSlider, paintThumb, paintTicks, paintTrack, paintVerticalLabel, recalculateIfOrientationChanged, scrollByBlock, scrollByUnit, scrollDueToClickInTrack, uninstallKeyboardActions, uninstallUI, yPositionForValue
-
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount
-
-
-
-
Constructor Detail
-
SynthSliderUI
protected SynthSliderUI(JSlider c)
Constructs aSynthSliderUI.- Parameters:
c- a slider
-
-
Method Detail
-
createUI
public static ComponentUI createUI(JComponent c)
Creates a new UI object for the given component.- Parameters:
c- component to create UI object for- Returns:
- the UI object
-
installDefaults
protected void installDefaults(JSlider slider)
Installs the defaults.- Overrides:
installDefaultsin classBasicSliderUI- Parameters:
slider- a slider
-
uninstallDefaults
protected void uninstallDefaults(JSlider slider)
Uninstalls default setting. This method is called when aLookAndFeelis uninstalled.- Overrides:
uninstallDefaultsin classBasicSliderUI- Parameters:
slider- a slider
-
installListeners
protected void installListeners(JSlider slider)
Installs listeners.- Overrides:
installListenersin classBasicSliderUI- Parameters:
slider- a slider
-
uninstallListeners
protected void uninstallListeners(JSlider slider)
Uninstalls listeners.- Overrides:
uninstallListenersin classBasicSliderUI- Parameters:
slider- a slider
-
createTrackListener
protected BasicSliderUI.TrackListener createTrackListener(JSlider s)
Creates a track listener.- Overrides:
createTrackListenerin classBasicSliderUI- Parameters:
s- a slider- Returns:
- a track listener
-
getBaseline
public int getBaseline(JComponent c, int width, int height)
Returns the baseline.- Overrides:
getBaselinein classBasicSliderUI- 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:
JComponent.getBaseline(int, int)
-
getPreferredSize
public Dimension getPreferredSize(JComponent c)
Returns the preferred size.- Overrides:
getPreferredSizein classBasicSliderUI- Parameters:
c- a component- Returns:
- the preferred size
- See Also:
JComponent.getPreferredSize(),LayoutManager.preferredLayoutSize(java.awt.Container)
-
getMinimumSize
public Dimension getMinimumSize(JComponent c)
Returns the minimum size.- Overrides:
getMinimumSizein classBasicSliderUI- Parameters:
c- a component- Returns:
- the minimum size
- See Also:
JComponent.getMinimumSize(),LayoutManager.minimumLayoutSize(java.awt.Container),ComponentUI.getPreferredSize(javax.swing.JComponent)
-
calculateGeometry
protected void calculateGeometry()
Calculates the geometry.- Overrides:
calculateGeometryin classBasicSliderUI
-
layout
protected void layout()
Lays out the slider.
-
calculateThumbLocation
protected void calculateThumbLocation()
Calculates the thumb location.- Overrides:
calculateThumbLocationin classBasicSliderUI
-
setThumbLocation
public void setThumbLocation(int x, int y)Sets the thumb location.- Overrides:
setThumbLocationin classBasicSliderUI- Parameters:
x- the x coordinatey- the y coordinate
-
xPositionForValue
protected int xPositionForValue(int value)
Returns the x position for a value.- Overrides:
xPositionForValuein classBasicSliderUI- Parameters:
value- the value- Returns:
- the x position for a value
-
yPositionForValue
protected int yPositionForValue(int value, int trackY, int trackHeight)Returns the y location for the specified value. No checking is done on the arguments. In particular iftrackHeightis negative undefined results may occur.- Overrides:
yPositionForValuein classBasicSliderUI- Parameters:
value- the slider value to get the location fortrackY- y-origin of the tracktrackHeight- the height of the track- Returns:
- the y location for the specified value of the slider
-
valueForYPosition
public int valueForYPosition(int yPos)
Returns the value at the y position. IfyPosis beyond the track at the bottom or the top, this method sets the value to either the minimum or maximum value of the slider, depending on if the slider is inverted or not.- Overrides:
valueForYPositionin classBasicSliderUI- Parameters:
yPos- the location of the slider along the y axis- Returns:
- the value at the y position
-
valueForXPosition
public int valueForXPosition(int xPos)
Returns the value at the x position. IfxPosis beyond the track at the left or the right, this method sets the value to either the minimum or maximum value of the slider, depending on if the slider is inverted or not.- Overrides:
valueForXPositionin classBasicSliderUI- Parameters:
xPos- the location of the slider along the x axis- Returns:
- the value of the x position
-
getThumbSize
protected Dimension getThumbSize()
Returns the thumb size.- Overrides:
getThumbSizein classBasicSliderUI- Returns:
- the thumb size
-
recalculateIfInsetsChanged
protected void recalculateIfInsetsChanged()
Recalculates if the insets have changed.- Overrides:
recalculateIfInsetsChangedin classBasicSliderUI
-
getContext
public SynthContext getContext(JComponent c)
Returns the Context for the specified component.- Specified by:
getContextin interfaceSynthUI- Parameters:
c- Component requesting SynthContext.- Returns:
- SynthContext describing component.
-
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
paintmethod.- Overrides:
updatein classComponentUI- Parameters:
g- theGraphicsobject 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:
paintin classBasicSliderUI- Parameters:
g- theGraphicsobject 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- theGraphicsobject used for painting- See Also:
update(Graphics,JComponent)
-
paintBorder
public void paintBorder(SynthContext context, Graphics g, int x, int y, int w, int h)
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
-
paintThumb
protected void paintThumb(SynthContext context, Graphics g, Rectangle thumbBounds)
Paints the slider thumb.- Parameters:
context- context for the component being paintedg-Graphicsobject used for paintingthumbBounds- bounding box for the thumb
-
paintTrack
protected void paintTrack(SynthContext context, Graphics g, Rectangle trackBounds)
Paints the slider track.- Parameters:
context- context for the component being paintedg-Graphicsobject used for paintingtrackBounds- bounding box for the track
-
propertyChange
public void propertyChange(PropertyChangeEvent e)
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.
-
-