Using the InputMethodEx Interface

InputMethodEx is implemented by the IM component. The input panel calls the InputMethodEx interfaces to notify the IM of state changes and to request action and information from the IM. Because an IM is a COM interface, it is up to the developer to implement the following methods. The following table describes the IInputMethodEx methods.

IInputMethodEx method
Description
Select Creates the windows and image list for the IM
Deselect Select the IM out of the input panel window and destroys the IM windows.
Showing Performs any initialization before the input panel window is displayed.
Hiding Performs any saving routines before the input panel is hidden.
GetInfo Returns information about the current IM to the operating system.
ReceiveSipInfo Receives information about the size, placement, and docked status of the input panel.
RegisterCallback Receives a pointer to an IIMCallback interface. An IM uses the IIMCallback interface to send keystrokes to applications and to change the icons on the Input Panel button.
GetImData Sends data from the current IM to the current application.
SetImData Responds to an application’s request to set IM-specific data within the IM.
UserOptionsDlg Presents the user options dialog for a specific IM.
SetIMMActiveContext Called whenever ImmSetActiveContext is called. The information received indentifies the current state of the IME.
RegisterCallbackEx Receives a pointer to an IIMCallbeckEx interface. An IM uses the IIMCallbackEx interface to send keystrokes to applications and to change the icons on the Input Panel button.

Note Except for SetIMMActiveContext and RegisterCallbackEx, all the InputMethodEx methods are identical to the InputMethod methods.