General
- Drawings can be made interactively or programmatically.
- Distinct shapes, styles, colors, font can be defined on a per item basis (for a node or a link) or as default properties for the control.
- Support of several collections allowing you to traverse the graph in many ways.
- Many properties allowing customizing the control (CanDrawNode, CanMoveNode, CanMultiLink, etc...) or an item (XSizeable, YSizeable, XMoveable, YMoveable, Selectable, Stretchable, etc...)
Interactivity and display facilities
- Multi selection
- Multi-level Undo/Redo
- Grid support
- Nodes stay connected when moved or resized
- Zooming
- Scrolling, drag scrolling
- Anti-aliasing
- OwnerDraw property to provide custom drawing for an item or for the entire AddFlow control
- Link autorouting via the free extension RouteFlow.
Input/Output
- Printing and print previewing via the free extension PrnFlow. The C# source code of PrnFlow is provided.
- Support of the IXmlSerializable interface: WriteXml and ReadXml methods
- XML serialization also via the free extension XMLFlow. The C# source code of XMLFlow is provided.
- Metafile exportation
- SVG exportation via SVGFlow: a class library allowing you to export the diagram in SVG format
Nodes
- 43 predefined shapes
- Custom shapes
- Ability to associate an image to a node
- Fill color, draw color, text color, gradient color
- Shadow
- In-place edition
- Autosize options
- Transparent nodes
- Hidden nodes
- Text alignment options
- Image positioning options
- Tooltip
- URL which can be used when the diagram is rendered to a Web page using SVG.
Links
- 15 predefined arrow styles
- Custom arrow styles
- Draw color, text color.
- Shadow
- Stretchable links. A link can be composed of many segments. The user can interactively add or remove segments
- Curved links (Bezier and Spline)
- Jumps possible at the intersection of links
- Reflexive links
- Rigid links
- Hidden links
- Possibility to interactively change the origin node or the destination node of a link
- Tooltip
- URL which can be used when the diagram is rendered to a Web page using SVG.
Automatic graph layout
AddFlow does not directly provide any automatic graph layout feature. However we provide LayoutFlow, a set of 4 Graph layout components that can be added on:
- HFlow for .NET (hierarchical layout)
- OFlow for .NET (orthogonal layout)
- SFlow for .NET (symmetric force directed layout)
- TFlow for .NET (tree layout)