MetalSliderUI (Java SE 13 & JDK 13 )
Description: declaration: module: java.desktop, package: javax.swing.plaf.metal, class: MetalSliderUI
Keywords: javax.swing.plaf.metal.MetalSliderUI class

Module java.desktop
Package javax.swing.plaf.metal

# Class MetalSliderUI

java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.SliderUI
javax.swing.plaf.basic.BasicSliderUI
javax.swing.plaf.metal.MetalSliderUI

    public class MetalSliderUI
    extends BasicSliderUI

A Java L&F implementation of SliderUI.

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the `java.beans` package. Please see `XMLEncoder`.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type | Class | Description
  --- | --- | ---
  `protected class` | `MetalSliderUI.MetalPropertyListener` | `PropertyListener` for `JSlider.isFilled`.

  ## Nested classes/interfaces declared in class javax.swing.plaf.basic.BasicSliderUI

  `BasicSliderUI.ActionScroller, BasicSliderUI.ChangeHandler, BasicSliderUI.ComponentHandler, BasicSliderUI.FocusHandler, BasicSliderUI.PropertyChangeHandler, BasicSliderUI.ScrollListener, BasicSliderUI.TrackListener`

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `protected static Color` | `darkShadowColor` | The color of dark shadow.
  `protected boolean` | `filledSlider` | The value of the property `JSlider.isFilled`.
  `protected static Color` | `highlightColor` | The color of highlighting.
  `protected static Icon` | `horizThumbIcon` | A default horizontal thumb `Icon`.
  `protected String` | `SLIDER_FILL` | Property for `JSlider.isFilled`.
  `protected static Color` | `thumbColor` | The color of a thumb
  `protected int` | `TICK_BUFFER` | The buffer of a tick.
  `protected static int` | `tickLength` | The length of a tick.
  `protected static int` | `trackWidth` | The width of a track.
  `protected static Icon` | `vertThumbIcon` | A default vertical thumb `Icon`.

  ### Fields declared in 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`

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `MetalSliderUI()` | Constructs a `MetalSliderUI` instance.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `protected PropertyChangeListener` | `createPropertyChangeListener​(JSlider slider)` | Constructs `MetalPropertyListener`.
  `static ComponentUI` | `createUI​(JComponent c)` | Constructs a `MetalSliderUI` instance.
  `protected int` | `getThumbOverhang()` | Returns the amount that the thumb goes past the slide bar.
  `int` | `getTickLength()` | Gets the height of the tick area for horizontal sliders and the width of the tick area for vertical sliders.
  `protected int` | `getTrackLength()` | Returns the longer dimension of the slide bar.
  `protected int` | `getTrackWidth()` | Returns the shorter dimension of the track.

  ### Methods declared in class javax.swing.plaf.basic.BasicSliderUI

  `calculateContentRect, calculateFocusRect, calculateGeometry, calculateLabelRect, calculateThumbLocation, calculateThumbSize, calculateTickRect, calculateTrackBuffer, calculateTrackRect, createChangeListener, createComponentListener, createFocusListener, createScrollListener, createTrackListener, drawInverted, getBaseline, getBaselineResizeBehavior, getFocusColor, getHeightOfHighValueLabel, getHeightOfLowValueLabel, getHeightOfTallestLabel, getHighestValue, getHighestValueLabel, getHighlightColor, getLowestValue, getLowestValueLabel, getMaximumSize, getMinimumHorizontalSize, getMinimumSize, getMinimumVerticalSize, getPreferredHorizontalSize, getPreferredSize, getPreferredVerticalSize, getShadowColor, getThumbSize, getWidthOfHighValueLabel, getWidthOfLowValueLabel, getWidthOfWidestLabel, installDefaults, installKeyboardActions, installListeners, installUI, isDragging, labelsHaveSameBaselines, paintFocus, paintHorizontalLabel, paintLabels, paintMajorTickForHorizSlider, paintMajorTickForVertSlider, paintMinorTickForHorizSlider, paintMinorTickForVertSlider, paintThumb, paintTicks, paintTrack, paintVerticalLabel, recalculateIfInsetsChanged, recalculateIfOrientationChanged, scrollByBlock, scrollByUnit, scrollDueToClickInTrack, setThumbLocation, uninstallDefaults, uninstallKeyboardActions, uninstallListeners, uninstallUI, valueForXPosition, valueForYPosition, xPositionForValue, yPositionForValue, yPositionForValue`

  ### Methods declared in class javax.swing.plaf.ComponentUI

  `contains, getAccessibleChild, getAccessibleChildrenCount, paint, update`

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### TICK_BUFFER

    protected final int TICK_BUFFER
    The buffer of a tick.
    See Also:
      Constant Field Values

  - ### filledSlider

    protected boolean filledSlider
    The value of the property `JSlider.isFilled`. By default, `false` if the property is not set, `true` for Ocean theme.

  - ### thumbColor

    protected static Color thumbColor
    The color of a thumb

  - ### highlightColor

    protected static Color highlightColor
    The color of highlighting.

  - ### darkShadowColor

    protected static Color darkShadowColor
    The color of dark shadow.

  - ### trackWidth

    protected static int trackWidth
    The width of a track.

  - ### tickLength

    protected static int tickLength
    The length of a tick.

  - ### horizThumbIcon

    protected static Icon horizThumbIcon
    A default horizontal thumb `Icon`. This field might not be used. To change the `Icon` used by this delegate directly set it using the `Slider.horizontalThumbIcon` UIManager property.

  - ### vertThumbIcon

    protected static Icon vertThumbIcon
    A default vertical thumb `Icon`. This field might not be used. To change the `Icon` used by this delegate directly set it using the `Slider.verticalThumbIcon` UIManager property.

  - ### SLIDER_FILL

    protected final String SLIDER_FILL
    Property for `JSlider.isFilled`.
    See Also:
      Constant Field Values

- ## Constructor Details

  - ### MetalSliderUI

    public MetalSliderUI()
    Constructs a `MetalSliderUI` instance.

- ## Method Details

  - ### createUI

    public static ComponentUI createUI​(JComponent c)
    Constructs a `MetalSliderUI` instance.
    Parameters:
      `c` - a component
    Returns:
      a `MetalSliderUI` instance

  - ### createPropertyChangeListener

    protected PropertyChangeListener createPropertyChangeListener​(JSlider slider)
    Constructs `MetalPropertyListener`.
    Overrides:
      `createPropertyChangeListener` in class `BasicSliderUI`
    Parameters:
      `slider` - a `JSlider`
    Returns:
      the `MetalPropertyListener`

  - ### getTickLength

    public int getTickLength()
    Gets the height of the tick area for horizontal sliders and the width of the tick area for vertical sliders. BasicSliderUI uses the returned value to determine the tick area rectangle.
    Overrides:
      `getTickLength` in class `BasicSliderUI`
    Returns:
      an integer representing the height of the tick area for horizontal sliders, and the width of the tick area for the vertical sliders

  - ### getTrackWidth

    protected int getTrackWidth()
    Returns the shorter dimension of the track.
    Returns:
      the shorter dimension of the track

  - ### getTrackLength

    protected int getTrackLength()
    Returns the longer dimension of the slide bar. (The slide bar is only the part that runs directly under the thumb)
    Returns:
      the longer dimension of the slide bar

  - ### getThumbOverhang

    protected int getThumbOverhang()
    Returns the amount that the thumb goes past the slide bar.
    Returns:
      the amount that the thumb goes past the slide bar