NAME InvertKeyMap -- generate an input event from an ANSI code. (V36) SYNOPSIS success = InvertKeyMap(ansiCode,event,km) D0 D0 A0 A1 BOOL InvertKeyMap(ULONG,struct InputEvent *,struct KeyMap *); FUNCTION This function uses the system call MapANSI() to figure out what InputEvent translates to an ANSI character code 'ansiCode'. The InputEvent pointed to by 'event' is filled in with that information. The KeyMap 'km' is used for the translation, unless it is NULL, in which case the current system default keymap is used. INPUTS ansiCode - the ANSI code to convert to an input event event - the InputEvent to fill-in km - the keymap to use for the translation, or NULL to use the current system default keymap. RESULTS success - TRUE if the translation worked, FALSE otherwise. BUGS This function currently handles one-deep dead keys (such as <alt f>o ). It does not look up the high key map (keystrokes with scan codes greater than 0x40). Prior to V40, this function was not initializing the ie_SubClass and ie_TimeStamp fields of the InputEvent structure. A simple work around to the problem is to clear these values to 0 before making a call to this function: struct InputEvent ie; ie.ie_SubClass = 0; ie.ie_TimeStamp.tv_secs = 0; ie.ie_TimeStamp.tv_micro = 0; if (InvertKeyMap(ansiCode,&ie,NULL)) ... SEE ALSO cx_lib/InvertString()