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

Since:
  1.2

- ## 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 WindowAdapter

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

  ### Methods declared in class Object

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

- ## Constructor Details

  - ### 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 Details

  - ### 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