OLD()
Short:
------
OLD() On Line Documentation - TOPIC oriented help system
Returns:
--------
NIL
Syntax:
-------
OLD()
Description:
------------
This is ON LINE DOCUMENTATION , similiar to NG or Windows help.
There are no parameters, but it has a couple of additional
exported functions that allow TOPIC selection and DEVELOPMENT
The documentation is stored in a DBF database, with one
record per TOPIC. A TOPIC has a TITLE, stored in the TOPIC field,
a variable length TEXT entry (can be as long as needed) stored in the
TEXT field, and hotlinks stored in the KEYS field, which link the TOPIC
to other topics via a (S)ee also button.
The options available to the user are:
(C)ontents -- go to the CONTENTS screen, a sort of index or
table of contents to the topics in the database
(S)ee also -- select from related topics
(O)ther -- not yet used
(B)ack -- go to previous screen
The DBF structure is TOPIC C 35
KEYS M
TEXT M
Additional Exported Functions:
OLD_DEV(bDevelopMent)
Where bDevelopment is a proc called during development
of the doc system. Always pass {||OLD_MOD()} to enable
development, and NIL to disable development. When development
is active, a prompt called (M)odify appears at the bottom
of the screen, allowing CREATION, EDITING, DELETING and
LINKING of topics.
The options avaialable to the developer are:
Add Topic - create a new TOPIC record
Edit Topic - edit the current TOPIC record
Delete Topic - delete the current TOPIC record
Modify SEEALSOs - add/delete See Also references
Generate CONTENTS record - generate the CONTENTS record
either by tagging selected TOPICS
or using ALL topics
OLD_TOPIC(cTopic)
This sets the current TOPIC for OLD(). For instance, on
entry into QUERY(), you could call OLD_TOPIC("QUERY BY EXAMPLE").
Presuming you had a TOPIC defined called "QUERY BY EXAMPLE",
this is what would come up when OLD() was called or activated
with a hotkey.
Call OLD_TOPIC("") to clear the topic. The default topic is
the CONTENTS page.
Examples:
---------
For development:
OLD_DEV({||OLD_MOD()})
OLD()
For distribution, simply comment out the OLD_DEV() call.
For hotkey activation:
SETKEY(K_WHATEVER,{||OLD()} )
When in a particular part of the program:
OLD_TOPIC("TOPIC NAME...")
to activate a particulat topic.
Notes:
-------
There's no reason this couldn't be used alongside of the
traditional Clipper context sensitive 'field level' help.
Source:
-------
S_OLD.PRG