|
|
Eight labels appear on the last line of the user's screen to indicate the functions currently assigned to the corresponding keyboard function keys <F1> through <F8>. The screen labels are analogous to a set of menu items that are always displayed and from which the user can make a selection at any time by pressing the corresponding function key. If a keyboard does not have function keys, the user can select the function by using one of the alternative keystroke sequences <CTRL-f> <1> through <CTRL-f> <8>.
FMLI provides two sets of screen labels for function keys. There are eight screen labels in each set. FMLI has preassigned functions to only the first set of eight for each frame type.
Default Screen-labeled Keys
Function
key |
Menu
frame |
Form
frame |
Text
frame |
Choices
menu |
Command
menu |
---|---|---|---|---|---|
<F1> | help | help | help | help | |
<F2> | mark* | choices | prevpage | ||
<F3> | enter | save | nextpage | enter | |
<F4> | prev-frm | prev-frm | prev-frm | ||
<F5> | next-frm | next-frm | next-frm | ||
<F6> | cancel | cancel | cancel | cancel | cancel |
<F7> | cmd-menu | cmd-menu | cmd-menu | ||
<F8> | chg-keys** | chg-keys** | chg-keys** | chg-keys** | chg-keys** |
<F16> | chg-keys** | chg-keys** | chg-keys** | chg-keys** | chg-keys** |
Function keys <F1> through <F7> in the first set can be disabled but not redefined. Function keys <F8> through <F16> may be defined. However, if you define <F8> or <F16>, the user loses the ability to alternate between the two sets of SLKs. If you want to define PREV-FRM, NEXT-FRM, PREVPAGE, or NEXTPAGE, on the second set of function keys, the labels must be spelled exactly as they are on the first set (case is irrelevant).
You can define which set of screen-labeled function keys first appears when a frame is opened by defining the frame level descriptor altslks in menu, text, and form definition files. If altslks evaluates to TRUE, the screen labels for function keys 9 through 16 will be displayed when the frame is first opened.
The following is a list of the descriptors used to define screen-labeled function keys. The name and button descriptors must be included in each set of SLK descriptors, and name must be first.
If the
interrupt
descriptor is defined for a SLK in the initialization file, that
value is inherited by the SLK unless the SLK is redefined in a
frame definition file.
Redefining a SLK in a frame definition file completely overrides
a definition of it you may have coded in the initialization file.
For example, if you define interrupt for a particular SLK
in the initialization file,
but do not include interrupt in a redefinition of that SLK in
a frame definition file, the SLK will inherit the value of the interrupt descriptor
defined at the next higher inheritance level
(from the frame descriptors if defined there, then from the general descriptors
in the initialization file if defined there, then from the FMLI defaults).
If the
oninterrupt
descriptor is defined for a SLK in the initialization file, that
value is current for the SLK, unless the SLK is redefined in a
frame definition file.
If
a SLK is redefined in a frame definition file, all descriptors
for that SLK in the initialization file, including the
oninterrupt
descriptor, are ignored.
If a SLK definition does not define
oninterrupt
,
the SLK inherits the value set for
oninterrupt
from the frame level descriptors, then from the application level
section of the initialization file.
The following example shows how to