Kbase P6558: Dynamic lookup is suppressing hot keys
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  28/01/2003 |
|
Status: Unverified
FACT(s) (Environment):
Dynamics 1.1A
SYMPTOM(s):
The dynamic lookup is suppressing hot keys which prevents access to the menu (e.g. Alt+F to show file menu) when the lookup has focus.
CAUSE:
Bug# 20020808-010
CAUSE:
This is due to the fact that the initializeLookup procedure in adm2/lookup.p has an event defined for Anykey. The Anykey trigger is being used to trap for 'F4' in order to show the lookup browser. This trigger is preventing any hot key combinations from firing. It is not restricted to the menu only. It will also prevent buttons from being chosen using Alt-key or Ctrl-key sequences.
FIX:
Open adm2/lookup.p
Browse to the initializeLookup procedure and scroll to the bottom of it.
Remove the code that says:
ON ANY-KEY OF hLookup PERSISTENT RUN anyKey IN TARGET-PROCEDURE.
Replace it with the following code:
ON 'F4':U OF hLookup PERSISTENT RUN showBrowse IN TARGET-PROCEDURE.
Delete the anyKey procedure from lookup.p.
Create a new procedure called: showBrowse.
Add the following code (that used to be in anyKey) to it.
DEFINE VARIABLE hButton AS HANDLE NO-UNDO.
{get ButtonHandle hButton}.
IF hButton:SENSITIVE = TRUE THEN
DO:
RUN initializeBrowse IN TARGET-PROCEDURE.
END.
Restart the appbuilder or remove the adm2/lookup.p procedure from memory
using the "procedure object viewer" on the protools menu.
Rerun the program, this time testing for Alt+F and "F4" and Alt+B to show
the corrected behavior.