rwlogo
Rogue Wave Views 5.6

Rogue Wave Views
Grapher Package API Reference Guide

Product Documentation:

Rogue Wave Views
Documentation Home

IlvGenericPin Class Reference

Predefined IlvGrapherPin subclass. More...

#include <ilviews/grapher/pin.h>

Inheritance diagram for IlvGenericPin:
IlvGrapherPin IlvNamedProperty

List of all members.

Public Member Functions

 IlvGenericPin ()
 Constructor.
IlUInt addPin (const IlvGraphic *node, const IlvPoint &p, const IlvTransformer *t)
 Adds a new connection pin.
virtual IlUInt getCardinal (const IlvGraphic *, const IlvTransformer *) const
 Returns the number of connection pins handled by the instance.
virtual IlBoolean getClosest (const IlvGraphic *, const IlvPoint &, const IlvTransformer *t, IlvPoint &, IlUInt &) const
 Returns the closest connection pin from a given point.
virtual IlBoolean getLocation (IlUInt, const IlvGraphic *, const IlvTransformer *t, IlvPoint &) const
 Returns the coordinates of a connection pin.
IlBoolean movePin (IlUInt pinIndex, const IlvGraphic *node, const IlvPoint &p, const IlvTransformer *t)
 Changes the location of an existing connection pin.
void removePin (IlUInt pinIndex)
 Removes a connection pin.

Detailed Description

Predefined IlvGrapherPin subclass.

Library: ilvgrapher

IlvGenericPin is a predefined IlvGrapherPin subclass that handles a collection of connection pins that can be dynamically associated/removed from a node. The pin locations are specified with a point in the same coordinate system as their associated node.

See also:
IlvPinEditorInteractor.

Constructor & Destructor Documentation

IlvGenericPin::IlvGenericPin (  ) 

Constructor.

Initializes a new empty instance of IlvGenericPin.


Member Function Documentation

IlUInt IlvGenericPin::addPin ( const IlvGraphic node,
const IlvPoint p,
const IlvTransformer t 
)

Adds a new connection pin.

The location of the new pin is specified by its desired location p on the node node when it is displayed by the transformer t. The node parameter must be the node with which the current object is attached.

Parameters:
node The node with which the pin is associated.
p The location of the new pin.
t The transformer applied to the node.
Returns:
The index of the new connection pin or IlvBadIndex if none could be attached to this position.
virtual IlUInt IlvGenericPin::getCardinal ( const IlvGraphic node,
const IlvTransformer t 
) const [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.

Parameters:
node The node this instance is associated with.
t The transformer applied to the node.
Returns:
The number of connection pins handled by the instance.

Reimplemented from IlvGrapherPin.

virtual IlBoolean IlvGenericPin::getClosest ( const IlvGraphic node,
const IlvPoint p,
const IlvTransformer t,
IlvPoint returnPoint,
IlUInt pinIndex 
) const [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.

Parameters:
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.
Returns:
IlTrue if a connection pin was found, IlFalse otherwise.

Reimplemented from IlvGrapherPin.

virtual IlBoolean IlvGenericPin::getLocation ( IlUInt  pinIndex,
const IlvGraphic node,
const IlvTransformer t,
IlvPoint returnPoint 
) const [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.

Parameters:
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.
Returns:
IlTrue if there is a connecting pin at the index pinIndex for the node node, and IlFalse otherwise.

Reimplemented from IlvGrapherPin.

IlBoolean IlvGenericPin::movePin ( IlUInt  pinIndex,
const IlvGraphic node,
const IlvPoint p,
const IlvTransformer t 
)

Changes the location of an existing connection pin.

Allows you to modify the location of the connection pin at index pinIndex. The node parameter must be The node with which the current object is attached.

Parameters:
idx The index of the considered pin.
node The node with which the pin is associated.
p The new location of the pin.
t The transformer applied to the node.
Returns:
A Boolean value indicating whether the new location has been successfully set.
void IlvGenericPin::removePin ( IlUInt  pinIndex  ) 

Removes a connection pin.

Disconnects all links attached to the pin at index pinIndex. Also, all other link-pin connections can be re-indexed by this method.

Parameters:
pinIndex The index of the considered pin.
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends

© Copyright 2012, 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.