public class TLcdTranslatedIcon extends Object implements ILcdIcon
ILcdIcon
, but translates it. Note that the icon width
and height are not adapted.
This can be especially useful when creating a composite icon, as in the following example use case:
TLcdResizeableIcon raster = new TLcdResizeableIcon(
new TLcdImageIcon("images/icons/raster_layer_16.png"));
TLcdResizeableIcon deco = new TLcdResizeableIcon(
new TLcdTranslatedIcon(
new TLcdImageIcon("images/icons/add_deco_16.png"), 7, 5));
TLcdCompositeIcon icon = new TLcdCompositeIcon();
icon.addIcon(raster);
icon.addIcon(deco);
icon.setIconHeight(16);
icon.setIconWidth(16);
Constructor and Description |
---|
TLcdTranslatedIcon(ILcdIcon aDelegateIcon,
int aX,
int aY)
Creates a new
TLcdTranslatedIcon . |
Modifier and Type | Method and Description |
---|---|
Object |
clone()
Makes
Object.clone() public. |
int |
getIconHeight()
Returns the fixed height of the icon.
|
int |
getIconWidth()
Returns the fixed width of the icon.
|
void |
paintIcon(Component c,
Graphics g,
int x,
int y)
Draw the
ILcdIcon at the specified location. |
public TLcdTranslatedIcon(ILcdIcon aDelegateIcon, int aX, int aY)
TLcdTranslatedIcon
.aDelegateIcon
- the icon to delegate to.aX
- the X translation.aY
- the Y translation.public void paintIcon(Component c, Graphics g, int x, int y)
ILcdIcon
ILcdIcon
at the specified location. ILcdIcon
implementations
may use the Component
argument to get properties useful for
painting, e.g. the foreground or background color.paintIcon
in interface ILcdIcon
c
- a Component to retrieve properties from.g
- the Graphics on which the icon will be painted.x
- the x position where the icon will be painted. x is the first coordinate of the top left
corner point of the icon.y
- the y position where the icon will be painted. y is the second coordinate of the top left
corner point of the icon.public int getIconWidth()
ILcdIcon
getIconWidth
in interface ILcdIcon
public int getIconHeight()
ILcdIcon
getIconHeight
in interface ILcdIcon
public Object clone()
ILcdCloneable
Makes Object.clone()
public.
java.lang.Object
, it can be implemented like this:
public Object clone() {
try {
return super.clone();
} catch ( CloneNotSupportedException e ) {
// Cannot happen: extends from Object and implements Cloneable (see also Object.clone)
throw new RuntimeException( e );
}
}
clone
in interface ILcdCloneable
clone
in class Object
Object.clone()