SiteMap
Page Bottom  Documentation NewLeaf

Dyalog Describe with annotation

Adrian's Little Help Helper
===========================

This application is both useful (I hope) and a good flight test of CPro for a realistic application. It stores all it needs to build a .HLP in seven basic data arrays:

‘project ... header details (3-element vector) (index.htm) [1] ... titlebar for complete .HLP file [2] ... heading for main contents page (e.g. 'Contents') [3] ... a short outline of the application to go below this.

‘chapters ... [n;6] array, one row per chapter. (level 1 stuff) [;1] ... Chapter tag for tabbed selector (short text) [;2] ... Chapter heading (text vector) [;3] ... include in contents (boolean) [;4] ... text outline of chapter (vector of text vectors) [;5] ... section banner (TOC-1 style + possible banner page) [;6] ... open this section up when tree contents is loaded [;7] ... picture to use in WEB-style builds (text vector) ‘build ... [n;13] array, one row per build type (per customer or product type) [;1] ... Build tag [;2] ... Build description [;3] ... File name for output [;4] ... Build type - index to >> ‘buildtypes [;5] ... style - *.sty for DOC types or *.css for WEB/CHM [;6] ... default picture tag (BMP,EPS etc.) [;7] ... string swap list (~ch.¸ch ~leaf.¸nl) as split vector [;8] ... relative[;absolute] path to home page [;9] ... path to home icon [;10] ... path to pictures (unless fully qualified) [;11] ... platform ('Dyalog APL') [;12] ... date and time of last build (0=never) [;13] ... tags to treat as excluded (,sep vector)

‘topics ... [n;14] array, one row per topic. (level 2 stuff) [;1] ... Id (text vector) [;2] ... Chapter number (-->‘chapters) for browse groupings [;3] ... context number (integer) for direct access [;4] ... contents style (1=incl + 2=kept + 4=pagebrk + 8=subhead) [;5] ... title (text vector - used as topic heading) [;6] ... keyword list (text vector delimited by ';') [;7] ... help text (vector of text vectors) [;8] ... other topics referenced (v of tv) [;9] ... skip list (builds to avoid - type or id*) tv;... [;10] ... include list (only in these builds) tv;... [;11] ... date and time of creation [;12] ... date and time of last update [;13] ... name of user who last updated it [;14] ... 0=in-house 1=link to external topic ([;7] has file name)

‘flyleaf,‘consflg,‘docmap - flag vectors (same shape as ‘build is tall)

‘xbc ... [‘chapters;‘build] ... who in what as boolean (matrix of booleans, important), set all to 1 flag at level 1, enables one to exclude an entire chapter for a build ‘script ... [n;4] array of command scripts [;1] ... Script tag [;2] ... Script description [;3] ... Script content (vtv) [;4] ... Hot key (Ctrl+F1) to run it

‘seealso ... [n;2] ... see also set for topics (array of topic ids) [;1] ... topic which is referring to [;2] ... topic which is referred to ‘rubric ...[3] ... Flyleaf details (defaults - build should override)(useful for a printed user manual) [1] ... banner,subbanner [2] ... version,reldate [3] ... contact details (vtv) ‘windows ...[n;9] ... Help Window definitions [;1] ... window type ("main" is required in the first row) - max 8 chars [;2] ... window caption (ignored for primary window) [;3-6]... (x,y,w,h) in 1024ths (all co-ordinates) as integers [;7] ... Colour (RGB triple) of window or CPanel default [;8] ... Colour of non-scrolling region [;9] ... OnTop (boolean) to set window on top

Stuff to handle the multi-user aspects (no interface yet) ...

‘userlist ... [n;3] table of registered users <<< ECHO from server only [;1] ... user id (such as initials or email name) [;2] ... user name (Full name to be shown in any dialogues) [;3] ... contact info (e.g. phone number)

‘checkout ... which users are sitting on which topics [;1] ... user id from userlist [;2] ... topic id (beware of rename here) [;3] ... timestamp (ddddd.dddd format)

There are three other little globals to worry about ...

‘mainhdr ... this goes at the very top of the output .RTF - it sets the font and colour tables for use later. Leave well alone, unless you know what you are at!

‘subhdr ... goes in before headings to change font and spacing ‘subtlr ... follows along after to reset them.

At the moment. these are all saved in one lump with the .HSF file named by ‘file. Maybe they should be in a .INI instead? Compilers and viewers are: ‘hc ... the true old help compiler ‘hhc ... the amazingly naff HTML compiler ‘rte ... our preferred editor for RTF (probably Wordx)

FTP support reads a skeleton FTP script (name, password etc) and writes a script to copy all the files to your server. (not currently implemented) ‘ftpscript ... user+password+BINĀASCII ‘upload ... target output file for finished script ‘url ... name of web site which the FTP session should connect to ‘sitedir ... where in the site to put it relative to (e.g. 'g:\newsite docs')

‘treedef .... Navigation tree for left-hand pane (Jan 2000) INTERNAL USE ONLY!

Adrian Smith ... March 2002 these must be written to grapl file via REVPOL.W3 for Adrian to read in Dyalog (reverse polish)

horizontal line
to home page e-mail Page Top