BasicSliderUI.TrackListener (Java SE 12 & JDK 12 )
Keywords: javax.swing.plaf.basic.BasicSliderUI.TrackListener class

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

## Class BasicSliderUI.TrackListener

- java.lang.Object
- - java.awt.event.MouseAdapter
  - - javax.swing.event.MouseInputAdapter
    - - javax.swing.plaf.basic.BasicSliderUI.TrackListener

- All Implemented Interfaces:
    `MouseListener`, `MouseMotionListener`, `MouseWheelListener`, `EventListener`, `MouseInputListener`
  Enclosing class:
    BasicSliderUI

      public class BasicSliderUI.TrackListener
      extends MouseInputAdapter

  Track mouse movements. This class should be treated as a "protected" inner class. Instantiate it only within subclasses of `Foo`.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected int` | `currentMouseX` | Current mouse x.
    `protected int` | `currentMouseY` | Current mouse y.
    `protected int` | `offset` | The offset

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `TrackListener()` |

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `mouseDragged​(MouseEvent e)` | Set the models value to the position of the top/left of the thumb relative to the origin of the track.
    `void` | `mousePressed​(MouseEvent e)` | If the mouse is pressed above the "thumb" component then reduce the scrollbars value by one page ("page up"), otherwise increase it by one page.
    `boolean` | `shouldScroll​(int direction)` | Returns if scrolling should occur

    - ### Methods declared in class java.awt.event.MouseAdapter

      `mouseMoved, mouseWheelMoved`

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

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

    - ### Methods declared in interface java.awt.event.MouseListener

      `mouseClicked, mouseEntered, mouseExited, mouseReleased`

    - ### Methods declared in interface java.awt.event.MouseMotionListener

      `mouseMoved`

- - ### Field Detail

    - #### offset

          protected transient int offset

      The offset

    - #### currentMouseX

          protected transient int currentMouseX

      Current mouse x.

    - #### currentMouseY

          protected transient int currentMouseY

      Current mouse y.

  - ### Constructor Detail

    - #### TrackListener

          public TrackListener()

  - ### Method Detail

    - #### mousePressed

          public void mousePressed​(MouseEvent e)

      If the mouse is pressed above the "thumb" component then reduce the scrollbars value by one page ("page up"), otherwise increase it by one page. If there is no thumb then page up if the mouse is in the upper half of the track.
      Parameters:
        `e` - the event to be processed

    - #### shouldScroll

          public boolean shouldScroll​(int direction)

      Returns if scrolling should occur
      Parameters:
        `direction` - the direction.
      Returns:
        if scrolling should occur

    - #### mouseDragged

          public void mouseDragged​(MouseEvent e)

      Set the models value to the position of the top/left of the thumb relative to the origin of the track.
      Specified by:
        `mouseDragged` in interface `MouseMotionListener`
      Overrides:
        `mouseDragged` in class `MouseAdapter`
      Parameters:
        `e` - the event to be processed