- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.ScrollBarUI
-
- javax.swing.plaf.basic.BasicScrollBarUI
-
- javax.swing.plaf.metal.MetalScrollBarUI
-
- All Implemented Interfaces:
- LayoutManager, SwingConstants
public class MetalScrollBarUI extends BasicScrollBarUI
Implementation of ScrollBarUI for the Metal Look and Feel
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.plaf.basic.BasicScrollBarUI
BasicScrollBarUI.ArrowButtonListener, BasicScrollBarUI.ModelListener, BasicScrollBarUI.PropertyChangeHandler, BasicScrollBarUI.ScrollListener, BasicScrollBarUI.TrackListener
-
-
Field Summary
Fields Modifier and Type Field and Description protected javax.swing.plaf.metal.MetalBumps
bumps
protected MetalScrollButton
decreaseButton
static String
FREE_STANDING_PROP
protected MetalScrollButton
increaseButton
protected boolean
isFreeStanding
protected int
scrollBarWidth
-
Fields inherited from class javax.swing.plaf.basic.BasicScrollBarUI
buttonListener, decrButton, DECREASE_HIGHLIGHT, decrGap, incrButton, INCREASE_HIGHLIGHT, incrGap, isDragging, maximumThumbSize, minimumThumbSize, modelListener, NO_HIGHLIGHT, propertyChangeListener, scrollbar, scrollListener, scrollTimer, thumbDarkShadowColor, thumbLightShadowColor, thumbRect, trackColor, trackHighlight, trackHighlightColor, trackListener, trackRect
-
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
-
-
Constructor Summary
Constructors Constructor and Description MetalScrollBarUI()
-
Method Summary
Methods Modifier and Type Method and Description protected void
configureScrollBarColors()
protected JButton
createDecreaseButton(int orientation)
Returns the view that represents the decrease view.protected JButton
createIncreaseButton(int orientation)
Returns the view that represents the increase view.protected PropertyChangeListener
createPropertyChangeListener()
static ComponentUI
createUI(JComponent c)
protected Dimension
getMinimumThumbSize()
Returns the smallest acceptable size for the thumb.Dimension
getPreferredSize(JComponent c)
A vertical scrollbar's preferred width is the maximum of preferred widths of the (nonnull
) increment/decrement buttons, and the minimum width of the thumb.protected void
installDefaults()
protected void
installListeners()
protected void
paintThumb(Graphics g, JComponent c, Rectangle thumbBounds)
protected void
paintTrack(Graphics g, JComponent c, Rectangle trackBounds)
protected void
setThumbBounds(int x, int y, int width, int height)
This is overridden only to increase the invalid area.-
Methods inherited from class javax.swing.plaf.basic.BasicScrollBarUI
addLayoutComponent, createArrowButtonListener, createModelListener, createScrollListener, createTrackListener, getMaximumSize, getMaximumThumbSize, getSupportsAbsolutePositioning, getThumbBounds, getTrackBounds, installComponents, installKeyboardActions, installUI, isThumbRollover, layoutContainer, layoutHScrollbar, layoutVScrollbar, minimumLayoutSize, paint, paintDecreaseHighlight, paintIncreaseHighlight, preferredLayoutSize, removeLayoutComponent, scrollByBlock, scrollByUnit, setThumbRollover, uninstallComponents, uninstallDefaults, uninstallKeyboardActions, uninstallListeners, uninstallUI
-
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMinimumSize, update
-
-
-
-
Field Detail
-
bumps
protected javax.swing.plaf.metal.MetalBumps bumps
-
increaseButton
protected MetalScrollButton increaseButton
-
decreaseButton
protected MetalScrollButton decreaseButton
-
scrollBarWidth
protected int scrollBarWidth
-
FREE_STANDING_PROP
public static final String FREE_STANDING_PROP
- See Also:
- Constant Field Values
-
isFreeStanding
protected boolean isFreeStanding
-
-
Method Detail
-
createUI
public static ComponentUI createUI(JComponent c)
-
installDefaults
protected void installDefaults()
- Overrides:
installDefaults
in classBasicScrollBarUI
-
installListeners
protected void installListeners()
- Overrides:
installListeners
in classBasicScrollBarUI
-
createPropertyChangeListener
protected PropertyChangeListener createPropertyChangeListener()
- Overrides:
createPropertyChangeListener
in classBasicScrollBarUI
-
configureScrollBarColors
protected void configureScrollBarColors()
- Overrides:
configureScrollBarColors
in classBasicScrollBarUI
-
getPreferredSize
public Dimension getPreferredSize(JComponent c)
Description copied from class:BasicScrollBarUI
A vertical scrollbar's preferred width is the maximum of preferred widths of the (nonnull
) increment/decrement buttons, and the minimum width of the thumb. The preferred height is the sum of the preferred heights of the same parts. The basis for the preferred size of a horizontal scrollbar is similar.The
preferredSize
is only computed once, subsequent calls to this method just return a cached size.- Overrides:
getPreferredSize
in classBasicScrollBarUI
- Parameters:
c
- theJScrollBar
that's delegating this method to us- Returns:
- the preferred size of a Basic JScrollBar
- See Also:
BasicScrollBarUI.getMaximumSize(javax.swing.JComponent)
,ComponentUI.getMinimumSize(javax.swing.JComponent)
-
createDecreaseButton
protected JButton createDecreaseButton(int orientation)
Returns the view that represents the decrease view.- Overrides:
createDecreaseButton
in classBasicScrollBarUI
-
createIncreaseButton
protected JButton createIncreaseButton(int orientation)
Returns the view that represents the increase view.- Overrides:
createIncreaseButton
in classBasicScrollBarUI
-
paintTrack
protected void paintTrack(Graphics g, JComponent c, Rectangle trackBounds)
- Overrides:
paintTrack
in classBasicScrollBarUI
-
paintThumb
protected void paintThumb(Graphics g, JComponent c, Rectangle thumbBounds)
- Overrides:
paintThumb
in classBasicScrollBarUI
-
getMinimumThumbSize
protected Dimension getMinimumThumbSize()
Description copied from class:BasicScrollBarUI
Returns the smallest acceptable size for the thumb. If the scrollbar becomes so small that this size isn't available, the thumb will be hidden.Warning : the value returned by this method should not be be modified, it's a shared static constant.
- Overrides:
getMinimumThumbSize
in classBasicScrollBarUI
- Returns:
- The smallest acceptable size for the thumb.
- See Also:
BasicScrollBarUI.getMaximumThumbSize()
-
setThumbBounds
protected void setThumbBounds(int x, int y, int width, int height)
This is overridden only to increase the invalid area. This ensures that the "Shadow" below the thumb is invalidated- Overrides:
setThumbBounds
in classBasicScrollBarUI
- See Also:
BasicScrollBarUI.getThumbBounds()
-
-
Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-javax/swing/plaf/metal/metalscrollbarui.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.