Package org.pushingpixels.flamingo.api.common.icon

# Class LayeredIcon

java.lang.Object
org.pushingpixels.flamingo.api.common.icon.LayeredIcon

All Implemented Interfaces:
  `Icon`, `ResizableIcon`

public class LayeredIcon extends Object implements ResizableIcon
Decorator icon that layers icons one on top of the other. The original icons are drawn and resized together as one layered stack.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected ResizableIcon[]`
`layers`
The layer icons.

## Constructor Summary

Constructors
Constructor
Description
`LayeredIcon(ResizableIcon... layers)`
Creates a new layered icon.

## Method Summary

Modifier and Type
Method
Description
`int`
`getIconHeight()`
`int`
`getIconWidth()`
`void`
`paintIcon(Component c, Graphics g, int x, int y)`
`void`
`setDimension(Dimension newDimension)`
Changes the dimension of `this` icon.

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

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

## Field Details

### layers

protected ResizableIcon[] layers
The layer icons.

## Constructor Details

### LayeredIcon

public LayeredIcon(ResizableIcon... layers)
Creates a new layered icon.

Parameters:
  `layers` - Layer icons.

## Method Details

### setDimension

public void setDimension(Dimension newDimension)
Description copied from interface: `ResizableIcon`
Changes the dimension of `this` icon.

Specified by:
  `setDimension` in interface `ResizableIcon`
Parameters:
  `newDimension` - New dimension for `this` icon.

### getIconHeight

public int getIconHeight()

Specified by:
  `getIconHeight` in interface `Icon`

### getIconWidth

public int getIconWidth()

Specified by:
  `getIconWidth` in interface `Icon`

### paintIcon

public void paintIcon(Component c, Graphics g, int x, int y)

Specified by:
  `paintIcon` in interface `Icon`