Module java.desktop

Class BasicMenuUI.MouseInputHandler

java.lang.Object
javax.swing.plaf.basic.BasicMenuUI.MouseInputHandler
All Implemented Interfaces:
MouseListener, MouseMotionListener, EventListener, MouseInputListener
Enclosing class:
BasicMenuUI

protected class BasicMenuUI.MouseInputHandler
extends Object
implements MouseInputListener
Instantiated and used by a menu item to handle the current menu selection from mouse events. A MouseInputHandler processes and forwards all mouse events to a shared instance of the MenuSelectionManager.

This class is protected so that it can be subclassed by other look and feels to implement their own mouse handling behavior. All overridden methods should call the parent methods so that the menu selection is correct.

Since:
1.4
See Also:
MenuSelectionManager
  • Constructor Details

    • MouseInputHandler

      protected MouseInputHandler()
  • Method Details

    • mousePressed

      public void mousePressed​(MouseEvent e)
      Invoked when the mouse has been clicked on the menu. This method clears or sets the selection path of the MenuSelectionManager.
      Specified by:
      mousePressed in interface MouseListener
      Parameters:
      e - the mouse event
    • mouseReleased

      public void mouseReleased​(MouseEvent e)
      Invoked when the mouse has been released on the menu. Delegates the mouse event to the MenuSelectionManager.
      Specified by:
      mouseReleased in interface MouseListener
      Parameters:
      e - the mouse event
    • mouseEntered

      public void mouseEntered​(MouseEvent e)
      Invoked when the cursor enters the menu. This method sets the selected path for the MenuSelectionManager and handles the case in which a menu item is used to pop up an additional menu, as in a hierarchical menu system.
      Specified by:
      mouseEntered in interface MouseListener
      Parameters:
      e - the mouse event; not used
    • mouseDragged

      public void mouseDragged​(MouseEvent e)
      Invoked when a mouse button is pressed on the menu and then dragged. Delegates the mouse event to the MenuSelectionManager.
      Specified by:
      mouseDragged in interface MouseMotionListener
      Parameters:
      e - the mouse event
      See Also:
      MouseMotionListener.mouseDragged(java.awt.event.MouseEvent)