Each application must define one LHAPIBLOCK with which LHAPI keeps track of that application's windowing. LHAPI is notified of the block's location during application initialization, and after context switching back to the application.
The application itself should not modify or peek into the structure of the LHAPIBLOCK, as the LHAPIBLOCK structure is subject to change. If the application needs information, it should get it through calls to LHAPI functions.
STATUS_ALT_PRESS
0x0002 This bit is the flag for last shift state of the <Alt> key: 0=Up, 1=Pressed.
This bit is set when the <Alt> key is pressed (make) and cleared when the <Alt> key is released (break).
STATUS_SHIFT_PRESS
0x0004 This bit is the flag for last shift state of the <Shift> key: 0=Up, 1=Pressed.
This bit is set when a <Shift> key is pressed (make) and cleared when a <Shift> key is released (break). Note that these values are set according to what the BIOS tells us. If the BIOS implements a "sticky" key, we do not actually realize that the key has been released until the next key has been struck and the BIOS tells us then that the prior keys has been released.
STATUS_CTRL_PRESS
0x0008 This bit is the flag for last shift state of the <Ctrl> key: 0=Up, 1=Pressed.
This bit is set when the <Ctrl> key is pressed (make) and cleared when the <Ctrl> key is released (break).
STATUS_CAPSLOCK
0x0010 This bit is the flag for the current state of <CapsLock>: 0=Off, 1=On.
This bit is set when the CapsLock state toggles on, and cleared when the CapsLock state toggles off.
STATUS_SCROLLLOCK
0x0020 This bit is the flag for the current state of <ScrollLock>: 0=Off, 1=On.
This bit is set when the ScrollLock state toggles on, and cleared when the ScrollLock state toggles off.
STATUS_KEYPAD_PRESS
0x0040 This bit is the flag which is set when the user presses an <Alt-UpArrow> or an <Alt-DownArrow> keystroke in a ComboBox. The subsequent <Alt-NumberPad> scan code which will be generated by the BIOS will then be ignored.
STATUS_EDIT_UNDO
0x0080 This bit is the flag which signals whether or not the edit text has been modified since the edit window received the focus (1=modified; 0=unchanged). If this bit is set, the next <Esc> key press will cause the original copy of the edit text to be restored from the save buffer.
STATUS_SUBMENUS
0x8000 This bit is the set when the sub-menus below the top menubar items are displayed while the user navigates through the top menubar items. This is needed when the menubar item selection is moved from an item that has a sub-menu to one that doesn't. In this case, the appropriate sub-menu will automatically be activated by LHAPI when the top menubar selection returns to an item that has a sub-menu.