Class PolylineLinkingTool
The PolylineLinkingTool class the user to draw a new Link by clicking where the route should go, until clicking on a valid target port.
Namespace: Northwoods.Go.Tools.Extensions
Assembly: PolylineLinkingAvalonia.dll
Syntax
public class PolylineLinkingTool : LinkingTool
Remarks
This tool supports routing both orthogonal and straight links. You can customize the TemporaryLink as needed to affect the appearance and behavior of the temporary link that is shown during the linking operation. You can customize the ArchetypeLinkData to specify property values that can be data-bound by your link template for the Links that are actually created.
Constructors
PolylineLinkingTool()
Constructs an PolylineLinkingTool, sets PortGravity to 0, and sets the name for the tool.
Declaration
public PolylineLinkingTool()
Methods
DoActivate()
Use a "crosshair" cursor.
Declaration
public override void DoActivate()
Overrides
DoKeyDown()
This supports the "Z" command during this tool's operation to remove the last added point of the route. Type ESCAPE to completely cancel the operation of the tool.
Declaration
public override void DoKeyDown()
Overrides
DoMouseDown()
Add a point to the route that the temporary Link is accumulating.
Declaration
public override void DoMouseDown()
Overrides
DoMouseMove()
Have the temporary link reach to the last mouse point.
Declaration
public override void DoMouseMove()
Overrides
DoMouseUp()
If this event happens on a valid target port (as determined by FindTargetPort(bool)), we complete the link drawing operation.
Declaration
public override void DoMouseUp()
Overrides
Remarks
InsertLink(Node, GraphObject, Node, GraphObject) is overridden to transfer the accumulated route drawn by user clicks to the new Link that was created.
If this event happens elsewhere in the diagram, this tool is not stopped: the drawing of the route continues.
InsertLink(Node, GraphObject, Node, GraphObject)
This method overrides the standard link creation method by additionally replacing the default link route with the custom one laid out by the user.
Declaration
public override Link InsertLink(Node fromnode, GraphObject fromport, Node tonode, GraphObject toport)
Parameters
Type | Name | Description |
---|---|---|
Node | fromnode | |
GraphObject | fromport | |
Node | tonode | |
GraphObject | toport |
Returns
Type | Description |
---|---|
Link |