Package org.pushingpixels.substance.internal.contrib.jgoodies.looks.common

# Class ShadowPopup

java.lang.Object
javax.swing.Popup
org.pushingpixels.substance.internal.contrib.jgoodies.looks.common.ShadowPopup

public final class ShadowPopup extends Popup
Does all the magic for getting popups with drop shadows. It adds the drop shadow border to the Popup, in `#show` it snapshots the screen background as needed, and in `#hide` it cleans up all changes made before.

See Also:
  - invalid reference

        com.jgoodies.looks.common.ShadowPopupBorder

  - invalid reference

        com.jgoodies.looks.common.ShadowPopupFactory

## Constructor Summary

Constructors
Constructor
Description
`ShadowPopup()`

## Method Summary

Modifier and Type
Method
Description
`static boolean`
`canSnapshot()`
`void`
`hide()`
Hides and disposes of the `Popup`.
`void`
`show()`
Makes the `Popup` visible.

### Methods inherited from class java.lang.Object

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

## Constructor Details

### ShadowPopup

public ShadowPopup()

## Method Details

### canSnapshot

public static boolean canSnapshot()

### hide

public void hide()
Hides and disposes of the `Popup`. Once a `Popup` has been disposed you should no longer invoke methods on it. A `dispose`d `Popup` may be reclaimed and later used based on the `PopupFactory`. As such, if you invoke methods on a `disposed` `Popup`, indeterminate behavior will result.

In addition to the superclass behavior, we reset the stored horizontal and vertical drop shadows - if any.

Overrides:
  `hide` in class `Popup`

### show

public void show()
Makes the `Popup` visible. If the popup has a heavy-weight container, we try to snapshot the background. If the `Popup` is currently visible, it remains visible.

Overrides:
  `show` in class `Popup`