Package org.pushingpixels.lafwidget.utils

# Class ShadowPopupBorder

java.lang.Object
javax.swing.border.AbstractBorder
org.pushingpixels.lafwidget.utils.ShadowPopupBorder

All Implemented Interfaces:
  `Serializable`, `Border`

public final class ShadowPopupBorder extends AbstractBorder
A border with a drop shadow intended to be used as the outer border of popups. Can paint the screen background if used with heavy-weight popup windows.

See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`ShadowPopupBorder()`

## Method Summary

Modifier and Type
Method
Description
`Insets`
`getBorderInsets(Component c)`
Returns the insets of the border.
`Insets`
`getBorderInsets(Component c, Insets insets)`
Reinitializes the insets parameter with this Border's current Insets.
`static ShadowPopupBorder`
`getInstance()`
Returns the singleton instance used to draw all borders.
`void`
`paintBorder(Component c, Graphics g, int x, int y, int width, int height)`
Paints the border for the specified component with the specified position and size.

### Methods inherited from class javax.swing.border.AbstractBorder

`getBaseline, getBaselineResizeBehavior, getInteriorRectangle, getInteriorRectangle, isBorderOpaque`

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

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

## Constructor Details

### ShadowPopupBorder

public ShadowPopupBorder()

## Method Details

### getInstance

public static ShadowPopupBorder getInstance()
Returns the singleton instance used to draw all borders.

### paintBorder

public void paintBorder(Component c, Graphics g, int x, int y, int width, int height)
Paints the border for the specified component with the specified position and size.

Specified by:
  `paintBorder` in interface `Border`
Overrides:
  `paintBorder` in class `AbstractBorder`

### getBorderInsets

public Insets getBorderInsets(Component c)
Returns the insets of the border.

Specified by:
  `getBorderInsets` in interface `Border`
Overrides:
  `getBorderInsets` in class `AbstractBorder`

### getBorderInsets

public Insets getBorderInsets(Component c, Insets insets)
Reinitializes the insets parameter with this Border's current Insets.

Overrides:
  `getBorderInsets` in class `AbstractBorder`
Parameters:
  `c` - the component for which this border insets value applies
  `insets` - the object to be reinitialized
Returns:
  the `insets` object