Re: Cascaded Help with 4GL ???
Posted in 1995
rb@argon.in-ulm.de (Richard Bahcic) writes: >We try to implement a cascaded Help-System, meaning that on every press on F1 >the Help coming up gets more detailed or more global. >There seems to be no hint and so no posibility to do this. >Is this really right? >A short `yes' may be enough OR a hint where to look in the documentation >or at which site holding the info. This can be done fairly easily. If the user will come back from Help (with the "resume" selection from the default Help ring menu), you could: # disable the help key OPTIONS HELP KEY CONTROL-Q # 1st level help is 101, 2nd level help is 102, etc. LET helplevel = 100 INPUT BY NAME ... ON KEY (F1) # display help based on level IF helplevel < maximu_help_level THEN LET helplevel = helplevel + 1 CALL showhelp(helplevel) END IF ... If you *don't* want your user to resume from the first help screen before they see the other, you will need to write your own help utility and not use showhelp(). This isn't as complicated as it seems: INPUT BY NAME ... ON KEY (F1) # call the custom help function, telling them # where we're coming from CALL my_own_showhelp(101) CURENT WINDOW IS ... ... FUNCTION my_own_showhelp(idx) DEFINE idx SMALLINT OPEN WINDOW helpwin ... MENU "HELP" BEFORE MENU # show the first help # the function display_help() will get the help message # based on the passed idx number and display it to screen CALL display_help(idx) COMMAND "Resume" "Return to input" EXIT MENU COMMAND KEY (F1) # show the next help level IF idx < max_help_level THEN LET idx = idx + 1 END IF CALL display_help(idx) NEXT OPTIONS "Resume" ... END MENU CLOSE WINDOW helpwin END FUNCTION ======================================================================= Dennis J. Pimple dennisp@informix.com Opinions expressed Senior Consultant -------------------- are mine, and do not Informix Software Inc Voice: 303-850-0210 necessarily reflect Denver Colorado USA Fax: 303-779-4025 those of my employer.