Package com.luciad.gui
Class TLcdResizeableIcon
java.lang.Object
com.luciad.gui.TLcdResizeableIcon
- All Implemented Interfaces:
ILcdAnchoredIcon,ILcdIcon,ILcdResizeableIcon,ILcdCloneable,Serializable,Cloneable
Wrapper implementation of ILcdResizeableIcon that rescales the
wrapped icon when it is too large to fit the given size. When the wrapped icon
is smaller than the asked size, it is painted centered.
Notice that this class is not guaranteed to work correctly with non-static icons.
- Since:
- 9.0
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionTLcdResizeableIcon(ILcdIcon aDelegateIcon) Constructs a newTLcdResizeableIconwith the height and width of the iconaDelegateIcon.TLcdResizeableIcon(ILcdIcon aDelegateIcon, int aIconWidth, int aIconHeight) Constructs a newTLcdResizeableIconwhere the width and/or height can be specified. -
Method Summary
Modifier and TypeMethodDescriptionvoidanchorPointSFCT(Point aPointSFCT) Updates the given point to the location of the icon's anchor point, in relative coordinates with respect to the top left.clone()MakesObject.clone()public.booleanReturns the base icon.intReturns the fixed height of the icon.intReturns the fixed width of the icon.inthashCode()voidDraw theILcdIconat the specified location.voidsetDelegateIcon(ILcdIcon aDelegateIcon) Sets the base icon.voidsetIconHeight(int aIconHeight) Set the height of the icon.voidsetIconWidth(int aIconWidth) Set the width of the icon.toString()
-
Constructor Details
-
TLcdResizeableIcon
Constructs a newTLcdResizeableIconwith the height and width of the iconaDelegateIcon. Notice that this class is not guaranteed to work correctly with non-static icons.- Parameters:
aDelegateIcon- the base icon. Must not benull
-
TLcdResizeableIcon
Constructs a newTLcdResizeableIconwhere the width and/or height can be specified. Notice that this class is not guaranteed to work correctly with non-static icons.- Parameters:
aDelegateIcon- the base icon.nullis allowed: nothing is painted.aIconWidth- when set to -1, the width is scaled in a relative manner. The height must be set in this case to a value greater than zeroaIconHeight- when set to -1, the height is scaled in a relative manner. The width must be set in this case to a value greater than zero
-
-
Method Details
-
getDelegateIcon
Returns the base icon.
- Returns:
- the base icon
- See Also:
-
setDelegateIcon
Sets the base icon.
- Parameters:
aDelegateIcon- the new base icon- See Also:
-
paintIcon
Description copied from interface:ILcdIconDraw theILcdIconat the specified location.ILcdIconimplementations may use theComponentargument to get properties useful for painting, e.g. the foreground or background color.- Specified by:
paintIconin interfaceILcdIcon- Parameters:
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.
-
getIconWidth
public int getIconWidth()Description copied from interface:ILcdIconReturns the fixed width of the icon.- Specified by:
getIconWidthin interfaceILcdIcon- Returns:
- the fixed width of the icon.
-
setIconWidth
public void setIconWidth(int aIconWidth) Description copied from interface:ILcdResizeableIconSet the width of the icon.- Specified by:
setIconWidthin interfaceILcdResizeableIcon- Parameters:
aIconWidth- the new width.
-
getIconHeight
public int getIconHeight()Description copied from interface:ILcdIconReturns the fixed height of the icon.- Specified by:
getIconHeightin interfaceILcdIcon- Returns:
- the fixed height of the icon.
-
setIconHeight
public void setIconHeight(int aIconHeight) Description copied from interface:ILcdResizeableIconSet the height of the icon.- Specified by:
setIconHeightin interfaceILcdResizeableIcon- Parameters:
aIconHeight- the new height.
-
equals
-
clone
Description copied from interface:ILcdCloneableMakes
When for example extending fromObject.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 ); } }- Specified by:
clonein interfaceILcdCloneable- Overrides:
clonein classObject- See Also:
-
hashCode
public int hashCode() -
anchorPointSFCT
Updates the given point to the location of the icon's anchor point, in relative coordinates with respect to the top left. The x-coordinate of the anchor point typically lies between 0 and getWidth(). The y-coordinate typically lies between 0 and getHeight().This implementation reuses the anchor point of the delegate icon. If the delegate icon is resized, the anchor point is shifted accordingly. If the delegate icon is not anchored, the icon center is returned.
- Specified by:
anchorPointSFCTin interfaceILcdAnchoredIcon- Parameters:
aPointSFCT- the point that has to be moved to the location of the anchor point
-
toString
-