Skip to content

Decorators

greipadmin edited this page Mar 9, 2019 · 16 revisions

Intoduction

Decorators are graphical components to visualize data or images. Decorators are used by Greip widgets (e.g. Picture, Tile). You can also use all decorators for your own widgets.

IDecorator

IDecorator is the interface that is used by controls to paint decorators. All decorators must implement this interface. The base implementation is AbstractDecorator.

Methods

  • void doPaint(GC gc, int x, int y), paints the decorator to the specified GC.
  • Point getSize(), returns the size of the decorator

AbstractDecorator

AbstractDecorator is the base implementation of the IDecorator interface. All decorator implementations are subclasses of this abstract class.

Constructors

  • AbstractDecorator(Control parent)
    • parent the parent control to paint the decorator

Methods

  • void dispose(), is called when the parent control is disposed
  • Display getDisplay(), returns the display of the parent control
  • Control getParent(), returns the parent control
  • void redraw(), force decorator paintig by redrawing the parent control

ImageDecorator

Paint an image to the parent control. Supports all image formats supported by ImageLoaderplus animated GIFs.

Methods

  • void loadImage(InputStream stream), loads an image from input stream
  • void loadImage(String filename), loads an image from the file
  • void setImage(Image image), sets an image
  • void scaleTo(final Point scaleTo), scales the image to the defined size

PercentageDecorator

Displays an percentage value as animated graphic.

Methods

  • void setCircleBackground(Color color), defines the circle background color
  • void setCircleForeground(Color color), defines the circle foreground color
  • void setCircleType(CircleType type), defines the type of the circle
  • void setFont(final Font font), sets the text font
  • void setForeground(final Color color), sets the foreground (text) color
  • void setInnerDiameter(int innerDiameter), sets the inner diameter in pixels
  • void setMaxValue(int maxValue), sets the maximum number (equal to 100 percent)
  • void setMinValue(int minValue), sets the minimum number (equal to zero percent)
  • void setNumberFormat(NumberFormat format), sets the format for number formatting
  • void setOuterDiameter(int outerDiameter), sets the outer diameter in pixels
  • void setShowAnimation(boolean animate), enables or disables the animation
  • void setTreshholdColors(Map<Integer, Color> treshholdMap), defines color treshholds
  • void setUnit(String text), sets the unit text
  • void setUnitAlignment(int alignment), sets the alignment of the unit
  • void setUnitFont(Font font), sets the font to paint the unit text
  • void setValue(int value), sets the displayed value

You can also use all related getters.

ShapeDecorator

Displays an absolute number value as animated graphic.

Methods

  • void setBackground(Color color), defines the shape color
  • void setCornerArc(int arcWidth, int arcHeight), defines how the corners of the figure should be rounded off
  • void setFont(final Font font), sets the text font
  • void setForeground(final Color color), sets the foreground (text) color
  • void setLineWidth(int width), defines the line width with which the shape is drawn
  • void setNumberFormat(NumberFormat format), sets the format for number formatting
  • void setShapeSize(int width, int height), defines the size of the shape
  • void setShowAnimation(boolean animate), enables or disables the animation
  • void setTreshholdColors(Map<Integer, Color> treshholdMap), defines color treshholds
  • void setUnit(String text), sets the unit text
  • void setUnitAlignment(int alignment), sets the alignment of the unit
  • void setUnitFont(Font font), sets the font to paint the unit text
  • void setValue(int value), sets the displayed value

You can also use all related getters.

Examples

  • Sample1 shows the display of an animated GIF using the ImageDecorator.
  • Sample2 shows the use of an ShapeDecorator. The shape is configured as a circle.
  • Sample3 shows the use of an ShapeDecorator to display a formatted date. The shape is configured to paint a rectangle with rounded corners.
  • Sample4 shows the use of a PercentageDecorator.
Clone this wiki locally