Runtime

org.eclipse.gmf.runtime.diagram.ui.services.decorator
Interface IDecoratorTarget

All Superinterfaces:
IAdaptable
All Known Implementing Classes:
DecorationEditPolicy.DecoratorTarget

public interface IDecoratorTarget
extends IAdaptable

An object that can be decorated. The decorator target is an adaptable. Minimally, it adapts to an EditPart and org.eclipse.uml2.Element if the shape/connection has an underlying element.

Here is an example:

 theDecoratorTarget.getAdapter(EditPart.class)
 

This interface is not intended to be implemented by clients as new methods may be added in the future.


Nested Class Summary
static class IDecoratorTarget.Direction
          Enumeration of directions for the location of shape decorations.
 
Method Summary
 IDecoration addConnectionDecoration(IFigure figure, int percentageFromSource, boolean isVolatile)
          Adds a figure as a decoration on a connection.
 IDecoration addConnectionDecoration(Image image, int percentageFromSource, boolean isVolatile)
          Adds an image as a decoration on a connection.
 IDecoration addDecoration(IFigure figure, Locator locator, boolean isVolatile)
          Adds a figure as a decoration on a shape or connection.
 IDecoration addShapeDecoration(IFigure figure, IDecoratorTarget.Direction direction, int margin, boolean isVolatile)
          Adds a figure as a decoration on a shape.
 IDecoration addShapeDecoration(Image image, IDecoratorTarget.Direction direction, int margin, boolean isVolatile)
          Adds an image as a decoration on a shape.
 void installDecorator(java.lang.Object key, IDecorator decorator)
          Installs a decorator on this decorator target using a key (a String identifier).
 void removeDecoration(IDecoration decoration)
          Removes the decoration from the shape or connection it has been added to.
 
Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
 

Method Detail

installDecorator

public void installDecorator(java.lang.Object key,
                             IDecorator decorator)
Installs a decorator on this decorator target using a key (a String identifier). If another decorator is installed on the same target with the same key then it will override the previous one installed.

Parameters:
key - the key for the decorator, used to override a decorator previously installed on this decoratorTarget object
decorator - the decorator to install

addShapeDecoration

public IDecoration addShapeDecoration(Image image,
                                      IDecoratorTarget.Direction direction,
                                      int margin,
                                      boolean isVolatile)
Adds an image as a decoration on a shape.

Parameters:
image - The image to be used as the decoration.
direction - The direction relative to the shape to place the decoration.
margin - The margin is the space, in himetric units, between the shape's edge and the decoration. A positive margin will place the figure outside the shape, a negative margin will place the decoration inside the shape.
isVolatile - True if this decoration is volatile (i.e. not to be included in the printed output of a diagram); false otherwise.
Returns:
The decoration object, which will be needed to remove the decoration from the shape.

addConnectionDecoration

public IDecoration addConnectionDecoration(Image image,
                                           int percentageFromSource,
                                           boolean isVolatile)
Adds an image as a decoration on a connection.

Parameters:
image - The image to be used as the decoration.
percentageFromSource - The percentage of the connection length away from the source end (range is from 0 to 100) where the decoration should be positioned.
isVolatile - True if this decoration is volatile (i.e. not to be included in the printed output of a diagram); false otherwise.
Returns:
The decoration object, which will be needed to remove the decoration from the connection.

removeDecoration

public void removeDecoration(IDecoration decoration)
Removes the decoration from the shape or connection it has been added to.

Parameters:
decoration - The decoration to be removed.

addShapeDecoration

public IDecoration addShapeDecoration(IFigure figure,
                                      IDecoratorTarget.Direction direction,
                                      int margin,
                                      boolean isVolatile)
Adds a figure as a decoration on a shape.

Parameters:
figure - the figure to be used as the decoration
direction - The direction relative to the shape to place the decoration.
margin - The margin is the space, in himetric units, between the shape's edge and the decoration. A positive margin will place the figure outside the shape, a negative margin will place the decoration inside the shape.
isVolatile - True if this decoration is volatile (i.e. not to be included in the printed output of a diagram); false otherwise.
Returns:
The decoration object, which is needed to later remove the decoration.

addConnectionDecoration

public IDecoration addConnectionDecoration(IFigure figure,
                                           int percentageFromSource,
                                           boolean isVolatile)
Adds a figure as a decoration on a connection.

Parameters:
figure - the figure to be used as the decoration
percentageFromSource - The percentage of the connection length away from the source end (range is from 0 to 100) where the decoration should be positioned.
isVolatile - True if this decoration is volatile (i.e. not to be included in the printed output of a diagram); false otherwise.
Returns:
The decoration object, which is needed to later remove the decoration.

addDecoration

public IDecoration addDecoration(IFigure figure,
                                 Locator locator,
                                 boolean isVolatile)
Adds a figure as a decoration on a shape or connection.

Parameters:
figure - the figure to be used as the decoration
locator - The locator to be used to position the decoration
isVolatile - True if this decoration is volatile (i.e. not to be included in the printed output of a diagram); false otherwise.
Returns:
The decoration object, which is needed to later remove the decoration.

Runtime

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp., Borland Software Corp., and others 2005,2006. All rights reserved.