Processes keyboard events and language-specific input.
Input Method Library (libIM.a)
This subroutine is a main entry point to the input method of the operating system. The IMProcess subroutine processes one keyboard event at a time. Processing proceeds as follows:
| Item | Description | 
|---|---|
| IM | Specifies the input method instance. | 
| KeySymbol | Defines the set of keyboard symbols that will be handled. | 
| State | Specifies the state of the keyboard. | 
| String |   Holds the returned string. Returning a null value means that
the input is used or discarded by the input method.   Note: The String parameter
is not a null-terminated string. 
 | 
| Length | Stores the length, in bytes, of the String parameter. | 
This subroutine returns the IMError global variable if an error occurs. The IMerrno global variable is set to indicate the error. Some of the variable values include:
| Item | Description | 
|---|---|
| IMError | Error occurred during this subroutine. | 
| IMTextAndAuxiliaryOff | No text string in the Text area, and the Auxiliary area is not shown. | 
| IMTextOn | Text string in the Text area, but no Auxiliary area. | 
| IMAuxiliaryOn | No text string in the Text area, and the Auxiliary area is shown. | 
| IMTextAndAuxiliaryOn | Text string in the Text area, and the Auxiliary is shown. |