About AddFlow ActiveX

Create interactive flowcharts and workflow diagrams.

AddFlow is an ActiveX component that is useful each time you need to display and use relationships between objects in your application. Drawings can be made interactively or programmatically. Features include distinct shapes, styles, pictures, colors, fonts, user data, and so on for each object of the diagram, metafile support, serialization, printing, zooming, custom shapes, link autorouting, customization and more. Runtime Royalty free.

Whats New in AddFlow 5.4?

  • Custom polygonal shapes
  • Custom drawings with the OwnerDraw events
  • Gradient colors for nodes
  • Link autorouting
  • Rounded corners for polyline links
  • JumpSize and RoundCornerSize properties allowing selecting the size of the link jumps and link rounded corners
  • CanChangeOrg and CanChangeDst properties
  • UndoNode, UndoLink, RedoNode, RedoLink properties
  • BeforeChangeOrg and BeforeChangeDst events
  • XMLFlow.ocx: a ocx control to load/save diagrams in XML
  • New versions of HFlow, TFlow, SFlow
  • A new graph layout control: OFlow (Orthogonal layout)
  • A new version of PrnFlow

An AddFlow diagram is a set of objects that can be linked each other. The objects are called nodes and the lines that connect objects are called links.

AddFlow provides two ways to build diagrams:

  • Interactive way (with the mouse): see the Quick Start of the help file in order to know how to interactively draw a diagram
  • Programmatic way with the AddFlow API

Following is a list of the main AddFlow features. Note that all those features are encapsulated in a small (375 Kb only), robust, fast and easy to use ActiveX component.

General

  • Runtime-royalty free
  • Digitally signed
  • Interactive and programmatic drawings
  • Navigation (You can access every nodes and links of a diagram with just 5 properties)
  • Collections support (nodes, links, selected nodes, selected links)
  • Customization: many properties allowing to customize the control (CanDrawNode, CanMoveNode, ReadOnly, etc...)

Input/output

  • Metafiles support (WMF, EMF)
  • Serialisation of diagrams (LoadFile, SaveFile methods)
  • XML serialisation
  • Clipboard management
  • Printing and print previewing

Interactivity

  • Scrolling (interactive and programmatic)
  • Autoscrolling
  • Selection and Multiselection of nodes and links (interactive and programmatic)
  • Nodes stay connected when moved or resized

Display facilities

  • OwnerDraw event allowing customized drawings
  • Zooming
  • Grid support

Data

  • Ability to associate a text, a unique key, a tooltip and a tag to a node or a link
  • Nodes and links
  • Change painting order of objects (ZOrder property)
  • Distinct colors for each object (FillColor, ForeColor, DrawColor)
  • Distinct fonts for each object
  • Distinct drawing styles (DrawStyle property)
  • Hidden objects

Links

  • Stretchable links. A link can be composed of many segments
  • Curved links (Bezier, Spline)
  • Rigid links. If a link is rigid, it follows (without being stretched) its origin node when this origin node is being dragged
  • Reflexive links
  • Links having only vertical and horizontal segments
  • Ability to adjust the position of the first and last point of a link
  • 20 arrow styles for links
  • Ability to customize the drawing of a link (OwnerDraw event)
  • Link autorouting

Nodes

  • Ability to associate a picture (bitmap, standard or enhanced metafile, icon, GIF, JPEG) to a node
  • Ability to customize the drawing of a node (OwnerDraw event)
  • 46 distinct shapes for nodes
  • Custom shapes
  • Transparent nodes
  • Text alignment
  • Autosize options for nodes
  • Gradient color

Automatic graph layout

AddFlow does not directly provide any automatic graph layout feature. However we provide LayoutFlow, a set of four AddFlow graph layout controls:

  • HFlow (hierarchical layout)
  • OFlow (orthogonal layout)
  • SFlow (symmetric force directed layout)
  • TFlow (tree layout)

A demonstration of each of these products is available in the LayoutDemo sample.