How the 97sbde2ht Demo Was Produced


This file summarizes the steps required to produce this demonstration:

These diagrams are Structure Chart diagrams for the static nesting levels of state-based action code. Each canvas drawing operation contains one switch statement on a current state variable. Within each case block there is a second switch statement with case blocks for each event type. In the case of bde canvas operations, the events are mouse move, button up and button down.

Anchor points are created within source text by GenAnchor and CtoHTML. The converter which creates html versions of the diagrams is called bde2src because it links diagram nodes and links to source code. Its exercutable is in $CASE/96f523/bde2ht1/anchen/executables/bde2src.

Diagram HG000001:

Three clickable hotspots are created per node on this diagram. The left, middle and right third of a node's area are hyperlinked to expansion diagrams, to source text and to a dummy Attribute-text block, respectively, if any of these exist. The latter opens up the node's hidden block of HA-text which could contain pseudo-code specifications for node actions.

Diagrams HG000002 and HG000003:

One clickable hotspot is created in each node and in each link's event label text in these diagrams. These diagrams show the static nesting structure of the state and event case branches. The same hotspots may be placed in call trees, state diagrams or other multi-level behavioral models. A comparable State Diagram example is TBD for comparison purposes.

The upper or leftmost hotspot links to an expansion diagram in the same file, if there is one.
The middle one links to source code for the state action, if it can be located automatically.
The lower right hotspot of each node links to node attribute text lines (HA-rows) if they exist.

Here are the steps used to create this browsable diagram hierarchy: