Package org.pushingpixels.lafwidget.animation.effects

# Class GhostPaintingUtils

java.lang.Object
org.pushingpixels.lafwidget.animation.effects.GhostPaintingUtils

public class GhostPaintingUtils extends Object
Utility class that implements the ghost effects.

## Field Summary

Fields
Modifier and Type
Field
Description
`static float`
`DECAY_FACTOR`
Global decay factor.
`static float`
`MAX_ICON_GHOSTING_ALPHA`
Maximal starting opacity for icon ghosting.
`static float`
`MAX_PRESS_GHOSTING_ALPHA`
Maximal starting opacity for press ghosting.
`static float`
`MIN_ICON_GHOSTING_ALPHA`
Minimal starting opacity for icon ghosting.
`static float`
`MIN_PRESS_GHOSTING_ALPHA`
Minimal starting opacity for press ghosting.

## Constructor Summary

Constructors
Constructor
Description
`GhostPaintingUtils()`

## Method Summary

Modifier and Type
Method
Description
`protected static BufferedImage`
`getComponentGhostImage(JComponent comp, org.pushingpixels.trident.Timeline ghostPressTimeline, double scaleFactor)`
Returns a scaled ghost image of the specified component.
`protected static BufferedImage`
`getIconGhostImage(JComponent comp, org.pushingpixels.trident.Timeline ghostRolloverTimeline, Icon icon, double scaleFactor)`
Returns a scaled ghost image of the specified icon.
`static void`
`paintGhostIcon(Graphics2D graphics, Component b, Icon icon, Rectangle iconRectangle)`
Paints the ghost icon inside the bounds of the specified button.
`static void`
`paintGhostIcon(Graphics2D graphics, AbstractButton b, Rectangle iconRectangle)`
Paints the ghost icon inside the bounds of the specified button.
`static void`
`paintGhostIcon(Graphics2D graphics, AbstractButton b, Icon icon)`
Paints the ghost icon inside the bounds of the specified button.
`static void`
`paintGhostImages(Component mainComponent, Graphics g)`
Paints ghost images on the specified component.

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

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

## Field Details

### MIN_ICON_GHOSTING_ALPHA

public static float MIN_ICON_GHOSTING_ALPHA
Minimal starting opacity for icon ghosting. Change to a higher value for debugging / demoing purposes.

### MAX_ICON_GHOSTING_ALPHA

public static float MAX_ICON_GHOSTING_ALPHA
Maximal starting opacity for icon ghosting. Change to a higher value for debugging / demoing purposes.

### MIN_PRESS_GHOSTING_ALPHA

public static float MIN_PRESS_GHOSTING_ALPHA
Minimal starting opacity for press ghosting. Change to a higher value for debugging / demoing purposes.

### MAX_PRESS_GHOSTING_ALPHA

public static float MAX_PRESS_GHOSTING_ALPHA
Maximal starting opacity for press ghosting. Change to a higher value for debugging / demoing purposes.

### DECAY_FACTOR

public static float DECAY_FACTOR
Global decay factor.

## Constructor Details

### GhostPaintingUtils

public GhostPaintingUtils()

## Method Details

### getComponentGhostImage

protected static BufferedImage getComponentGhostImage(JComponent comp, org.pushingpixels.trident.Timeline ghostPressTimeline, double scaleFactor)
Returns a scaled ghost image of the specified component.

Parameters:
  `comp` - Component.
  `scaleFactor` - Scale factor.
Returns:
  A scaled ghost image of the specified component.

### getIconGhostImage

protected static BufferedImage getIconGhostImage(JComponent comp, org.pushingpixels.trident.Timeline ghostRolloverTimeline, Icon icon, double scaleFactor)
Returns a scaled ghost image of the specified icon.

Parameters:
  `comp` - Component.
  `icon` - Icon.
  `scaleFactor` - Scale factor.
Returns:
  A scaled ghost image of the specified icon.

### paintGhostImages

public static void paintGhostImages(Component mainComponent, Graphics g)
Paints ghost images on the specified component.

Parameters:
  `mainComponent` - Component.
  `g` - Graphics context.

### paintGhostIcon

public static void paintGhostIcon(Graphics2D graphics, AbstractButton b, Icon icon)
Paints the ghost icon inside the bounds of the specified button.

Parameters:
  `graphics` - Graphics context.
  `b` - Button.
  `icon` - Icon to paint.

### paintGhostIcon

public static void paintGhostIcon(Graphics2D graphics, AbstractButton b, Rectangle iconRectangle)
Paints the ghost icon inside the bounds of the specified button.

Parameters:
  `graphics` - Graphics context.
  `b` - Button.
  `iconRectangle` - Rectangle of the button icon.

### paintGhostIcon

public static void paintGhostIcon(Graphics2D graphics, Component b, Icon icon, Rectangle iconRectangle)
Paints the ghost icon inside the bounds of the specified button.

Parameters:
  `graphics` - Graphics context.
  `b` - Button.
  `icon` - Icon to paint.
  `iconRectangle` - Rectangle of the button icon.