Rogue Wave Views Grapher Package API Reference Guide |
Rogue Wave Views Documentation Home |
Grapher pins management class. More...
#include <ilviews/grapher/pin.h>
Public Member Functions | |
IlvGrapherPin () | |
Constructor. More... | |
virtual | ~IlvGrapherPin () |
Destructor. More... | |
virtual void | drawGhost (IlvPort *dst, IlvPalette *palette, const IlvGraphic *node, const IlvTransformer *t) const |
Displays a ghost image of the connection pins. More... | |
virtual IlUInt | getCardinal (const IlvGraphic *node, const IlvTransformer *t) const |
Returns the number of connection pins handled by the instance. More... | |
virtual IlBoolean | getClosest (const IlvGraphic *node, const IlvPoint &p, const IlvTransformer *t, IlvPoint &returnPoint, IlUInt &pinIndex) const |
Returns the closest connection pin from a given point. More... | |
virtual IlBoolean | getLinkLocation (const IlvGraphic *node, const IlvGraphic *link, const IlvTransformer *t, IlvPoint &returnPoint) const |
Returns the connection point of a given link. More... | |
IlvGraphic *const * | getLinks (const IlvGraphic *node, IlUInt pinIndex, IlBoolean from, IlUInt &count) const |
Returns all the links attached to a given connection pin. More... | |
virtual IlBoolean | getLocation (IlUInt pinIndex, const IlvGraphic *node, const IlvTransformer *t, IlvPoint &returnPoint) const |
Returns the coordinates of a connection pin. More... | |
virtual IlUInt | getPinIndex (const IlvGraphic *link, IlBoolean from) |
Returns the index of the connection pin for a given link. More... | |
void | removeLink (const IlvGraphic *node, const IlvGraphic *link, IlBoolean from) |
Removes a link connected to a pin. More... | |
IlvGrapherPin * | set (IlvGraphic *node) |
Associates the instance with a graphic node. More... | |
virtual void | setPinIndex (const IlvGraphic *link, IlUInt pinIndex, IlBoolean from) |
Sets the connection pin for a given link. More... | |
Static Public Member Functions | |
static IlvGrapherPin * | Get (const IlvGraphic *node) |
Returns the IlvGrapherPin instance associated with a given node. More... | |
static IlvGrapherPin * | Remove (IlvGraphic *node) |
Removes the IlvGrapherPin instance associated with a given node. More... | |
Grapher pins management class.
Library: ilvgrapher
The IlvGrapherPin
class handles the exact location of link connections on nodes in a grapher. These link connections are referred to as "connection pins".
To add a grapher pin to a node, add the following code:
IlvGrapherPin
is a subclass of IlvNamedProperty
, add the following two lines to your class declaration when creating your own classes that manage grapher pins: IlvGrapher
, IlvMakeLinkInteractor
. IlvGrapherPin::IlvGrapherPin | ( | ) |
Constructor.
Initializes a new empty instance of IlvGrapherPin
.
|
virtual |
Destructor.
The destructor releases all the resources used by the instance.
|
virtual |
Displays a ghost image of the connection pins.
Displays a ghost image of the grapher pin in the destination port dst, using the palette palette, for the node node displayed using the transformer t.
dst | The destination port. |
palette | The palette used to perform the drawing. |
node | The node this instance is associated with. |
t | The transformer applied to the node. |
|
static |
Returns the IlvGrapherPin
instance associated with a given node.
node | The considered node. |
|
virtual |
Returns the number of connection pins handled by the instance.
Returns the number of connection pins available for the node node, when displayed with the transformer t. This method has to be defined in subclasses.
node | The node this instance is associated with. |
t | The transformer applied to the node. |
Reimplemented in IlvGenericPin.
|
virtual |
Returns the closest connection pin from a given point.
Returns, in the parameter returnPoint, the coordinates of the connection pin closest to the point p when node is displayed after transformer t is applied. The corresponding pin index is stored in pinIndex. The default implementation uses the IlvGrapherPin::getLocation()
method for all connection pins and returns the closest point found.
node | The node this instance is associated with. |
p | The reference point. |
t | The transformer applied to the node. |
returnPoint | The coordinate of the closest connection pin. |
pinIndex | The index of the closest connection pin. |
IlTrue
if a connection pin was found, IlFalse
otherwise. Reimplemented in IlvGenericPin.
|
virtual |
Returns the connection point of a given link.
Returns, in the parameter returnPoint, the coordinates of the connection pin where link connects to node, when displayed after transformer t is applied. The default implementation uses the IlvGrapherPin::getPinIndex()
method to fetch the index of the connection pin associated to link, and then calls the IlvGrapherPin::getLocation()
method.
node | The node this instance is associated with. |
link | The considered link. |
t | The transformer applied to the node and the link. |
returnPoint | The coordinates of the link connection point. |
IlTrue
if there is a connecting pin for the link and the node, and IlFalse
otherwise. IlvGraphic* const* IlvGrapherPin::getLinks | ( | const IlvGraphic * | node, |
IlUInt | pinIndex, | ||
IlBoolean | from, | ||
IlUInt & | count | ||
) | const |
Returns all the links attached to a given connection pin.
The returned array is stored in an IlPoolOf(Pointer)
and should not be deleted or modified.
node | The node this instance is associated with. |
pinIndex | The index of the considered connection pin. |
from | A Boolean value indicating whether the link starts (IlTrue ) or ends (IlFalse ) at the corresponding node. |
count | The number of returned links. |
|
virtual |
Returns the coordinates of a connection pin.
Returns, in the parameter returnPoint, the coordinates of the connection pin that has the index pinIndex on the node node, when displayed after transformer t is applied. This method has to be defined in subclasses.
pinIndex | The index of the considered pin. |
node | The node this instance is associated with. |
t | The transformer applied to the node. |
returnPoint | The coordinates of the connection point. |
IlTrue
if there is a connecting pin at the index pinIndex for the node node, and IlFalse
otherwise. Reimplemented in IlvGenericPin.
|
virtual |
Returns the index of the connection pin for a given link.
Returns the index of the connection pin handled by the object where the link link is connected.
link | The considered link. |
from | A Boolean value indicating whether the connection is made on the start point of the link (IlTrue ) or on its end point (IlFalse ). |
IlvBadIndex
if none was found.
|
static |
Removes the IlvGrapherPin
instance associated with a given node.
Does not delete the grapher pin. It can therefore be kept for future use.
node | The considered node. |
void IlvGrapherPin::removeLink | ( | const IlvGraphic * | node, |
const IlvGraphic * | link, | ||
IlBoolean | from | ||
) |
Removes a link connected to a pin.
Removes link from the list of links connected to one of the pins managed by the instance.
node | The node this instance is associated with. |
link | The link to disconnect. |
from | A Boolean value indicating whether the link starts (IlTrue ) or ends (IlFalse ) at the corresponding node. |
IlvGrapherPin* IlvGrapherPin::set | ( | IlvGraphic * | node | ) |
Associates the instance with a graphic node.
This method is equivalent to: node->setNamedProperty(this);
.
node | The considered node. |
IlvGrapherPin
instance that was previously associated with the node node.
|
virtual |
Sets the connection pin for a given link.
Specifies that the link link connects through this grapher pin at the pin index pinIndex. If the link was already connected through the grapher pin, its previous pin index is replaced.
link | The considered link. |
pinIndex | The index of the new connection pin. |
from | A Boolean value indicating whether the connection is made on the start point of the link (IlTrue ) or on its end point (IlFalse ). |
© Copyright 2017, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.