The Composite renderer

The Composite renderer provides support for symbols and composite graphics to represent nodes and links. In particular, it allows you to:
  • Perform Swing actions on predefined gestures defined for any child of a composite graphic.
  • Define which child the links connect to.
The following code extract illustrates how to enable the Composite renderer:
SDM {
  Composite: "true";
}
The following table lists the per-object properties of the Composite renderer.
Per-object properties of the Composite renderer 
Property
Type
Default
Description
LinkConnectionRectangle
int
-1
Specifies the index used with the indexed property children of composite graphics. The links connect to the nearest edge of the bounding box of the child at the position defined by this property. This property is defined on the objects of type node.
FromCompositePin
String
null
Specifies the name of a decoration in a composite graphic, which is used to connect the origin of a link. This property is defined on the objects of type link.
FromCompositePinPosition
String
Center
Connects the origin to this position of the decoration. This property is defined on the objects of type link.
ToCompositePin
String
null
Specifies the name of a decoration in a composite graphic, which is used to connect the destination of a link. This property is defined on the objects of type link.
ToCompositePinPosition
String
Center
Connects the destination to this position of the decoration. This property is defined on the objects of type link.
The following code extract illustrates how to configure the link connection rectangle:
node {
  LinkConnectionRectangle: 0;
}
The following code extract illustrates how to specify the decoration to be used to connect links:
link {
  FromCompositePin:"decoration";       // use the name defined above
  FromCompositePinPosition:"Center";
  ToCompositePin:"decoration";         // use the name defined above
  ToCompositePinPosition:"Center";
}
See the class IlvCompositeRenderer for more details.