Module java.desktop
Package javax.swing

## Class JMenu.WinListener

- java.lang.Object
- - java.awt.event.WindowAdapter
  - - javax.swing.JMenu.WinListener

- All Implemented Interfaces:
    `WindowFocusListener`, `WindowListener`, `WindowStateListener`, `Serializable`, `EventListener`
  Enclosing class:
    JMenu

      protected class JMenu.WinListener
      extends WindowAdapter
      implements Serializable

  A listener class that watches for a popup window closing. When the popup is closing, the listener deselects the menu.

  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`.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `WinListener​(JPopupMenu p)` | Create the window listener for the specified popup.

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `windowClosing​(WindowEvent e)` | Deselect the menu when the popup is closed from outside.

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

      `windowActivated, windowClosed, windowDeactivated, windowDeiconified, windowGainedFocus, windowIconified, windowLostFocus, windowOpened, windowStateChanged`

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

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

- - ### Constructor Detail

    - #### WinListener

          public WinListener​(JPopupMenu p)

      Create the window listener for the specified popup.
      Parameters:
        `p` - the popup menu for which to create a listener
      Since:
        1.4

  - ### Method Detail

    - #### windowClosing

          public void windowClosing​(WindowEvent e)

      Deselect the menu when the popup is closed from outside.
      Specified by:
        `windowClosing` in interface `WindowListener`
      Overrides:
        `windowClosing` in class `WindowAdapter`
      Parameters:
        `e` - the event to be processed