|
|
|
Bde is a Block Diagram Editor written in C++
using X11/Motif as its GUI. Bde is built using imake, make and the gnu g++
compiler. Bde’s CVS repository: CVSROOT = $CASE/95s523/95sbde/base/Master. |
|
The purpose of bde is to capture the semantics
of software design diagrams that support various CASE tools and track
design changes. |
|
The latest text version of a User Guide for bde
is in $CVSROOT/bde/doc/bdeUserGuide.tex,v (which does not contain these
diagrams.) |
|
|
|
|
This procedure will check out and build the
current version of bde (CVS tag bde2alpha_rv, for alpha platforms): |
|
Type (or add to your .login): |
|
“setenv CVSROOT
/usr/proj3/case/95s523/95sbde/base/Master” |
|
“setenv CXX g++ <RET>‘‘ |
|
To check out the bde tree (src, doc, etc.)
from its CVS repository into your $CWD, type “cvs co -r
bde2alpha_rv bde”. |
|
To build Makefiles, type “cd bde; xmkmf -a”. |
|
To compile and link bde, type “make -e”. |
|
|
|
|
This shell script executes the current
most stable version of bde: |
|
/usr/proj3/case/95s523/95sbde/bde/executables/bde |
|
Type (or add to your .login) |
|
“alias runbde ‘<above
path>‘ <RET>‘‘ |
|
then type “runbde” each time you run bde. |
|
Bde currently (Jan 2000) compiles on alpha
workstations but not on DecStations or vax
platforms. |
|
Bde has been ported to DEC/alpha machines
(jupiter or cs) and partially re-implemented in Java. |
|
|
|
|
|
|
|
|
To see bde’s pop-up FILE menu, click the
leftmost button in the top-row menu of bde’s main window. |
|
|
|
|
New opens a new unnamed file and its first
graph or diagram. A text widget prompts for a graph title. (TBD: Better
initial defaults.) |
|
Open displays a File Selection table and
prompts for a .dat file to open.* If successful, it displays the Graph Table and prompts for a diagram to
edit. (TBD: Change default .dat
file type to .bde.) |
|
Print opens a menu with options to
Print-Current- or Print-All- diagrams, or to save a PostScript or a gif
version of the current diagram to a file named <filename>_<HGid>.{ps or gif}.* |
|
|
|
|
Save saves a named file, overwriting a previous
file by that name. It will not save a new file without a name - use SaveAs
for this. |
|
SaveAs prompts for a name by which to save a
file being edited. All diagrams in the file will be saved, whether changed
or not. |
|
Exit terminates the editor. (The user is
prompted to Save the current file first.) |
|
If bde crashes, the database is usually saved to
a file called bdeabort.dat. |
|
|
|
|
Node |
|
Link |
|
Bendpoint |
|
Text |
|
Graph |
|
|
|
Create |
|
Move |
|
Delete |
|
Resize |
|
Restyle |
|
|
|
|
To Create a node click at its desired center
position. (Clicking means pressing mouse button 1 down then
up without moving it.) |
|
To Move a node, click to select and highlight
it, then drag to new location. (Dragging means moving the mouse with
mouse button 1 held down.) |
|
Delete a node by double-clicking within its
border. (Node Delete is not permitted until all attached
links are deleted.) |
|
Resize a node by clicking to highlight it then
dragging to a new size. (After node resize, attached links retain
their bendpoints and shape, and internal text
remains left-justified.) |
|
Restyle to select a non-default node shape from
the Restyle submenu. |
|
|
|
|
|
|
Bendpoints are points where links start or
end, change direction or drawing style. For bendpoint operation, first select
a link; this will highlight the link and its bendpoints, to avoid selecting
the wrong type of object. Then: |
|
Create a new successor bendpoint by clicking on an existing one. |
|
Move a bendpoint by dragging it. (Endpoints are
not movable.) |
|
Delete a bendpoint by clicking on it. (Endpoints
are not deletable.) |
|
(The first and last bendpoints (link
‘endpoints’) are treated
specially.) |
|
|
|
|
To enter/append text, select a node, link, or
graph caption box. This highlights the 'parent' object with which the text
is associated and its class whose actions are specialized. (To edit X11/Motif text, use arrow keys
to position the cursor to the left and delete text to its right.) |
|
All text is located relative to, and moves with,
its associated object. If a line of text is dragged, its successors (in
creation order) belonging to the same parent are dragged along. |
|
Initial whitespace (indents) are not preserved. |
|
Line edits after initial entry are not yet
supported. (One
work-around is to Text-edit the saved *.dat file) |
|
|
|
|
|
|
FI Holds file path and date information
(TBD) |
|
FO Holds font table info (X11, menu, PostScript) |
|
HG Identifies one diagram or Graph |
|
CG One Caption (block) of its parent HG |
|
GX One text line of its parent CG |
|
HN One Node (block) of its parent HG |
|
HA One text line of its parent HN |
|
HL One directed Link between two HN’s |
|
HI One link label of its parent HL |
|
HP One ‘bend’Point of its parent HL |
|
GD Graph Defaults - diagram drawing styles |
|
XB Text Block: SuperClass of GX and HA. (New
schema) [New bde schema format in 96f523/bdecode/cparisi]. TBD:
made HI a third subclass of XB [Ref: 96f523/bdecode/jsingh] |
|
SY, TK: Symbol and ToKen tables (decomposition
of XB text) [97f522/bde2java/hhuang/bde maintains XB-text = SY and ToKen xRefs.] |
|
|
|
|
|
|
|