IInputMethod3 (Compact 2013)
3/28/2014
This interface extends the functionality of the IInputMethod2 interface to include notification of software-based input panel (SIP) input context changes.
Methods in Vtable Order
Like all Component Object Model (COM) interfaces, this interface inherits the methods for the IUnknown interface. The following table lists the methods for this interface in the order in which they appear in the Vtable following the methods inherited from IUnknown.
Method |
Description |
---|---|
Creates the windows and image list for the input method. |
|
Selects the input method from the SIP window and destroys the input method windows. |
|
Initializes display-related parameters, structures, and functions before an SIP window appears. |
|
Saves data before hiding the SIP. |
|
Returns information about the current input method to the operating system. |
|
Receives information about the size, placement, and docked status of the SIP for the input method. |
|
Receives a pointer to an IIMCallback interface. |
|
Sends data from the current input method to the current application. |
|
Responds to an application's request to set input method-specific data within the input method. |
|
Displays a dialog box that presents configurable options to the user that are specific to the input method. |
|
Receives the current state of the input method editor (IME). |
|
Receives a pointer to an IIMCallback2 interface. |
|
Receives notifications from the SIP when the input context changes. |
|
Receives a pointer to an IIMCallback3 interface. |
Remarks
The SIP calls the methods of this interface to notify the input method of state changes and to request action and information from the input method. Before an input method renders the SIP window space or responds to user actions, it receives method calls in the following sequence:
- Select
- RegisterCallback
- GetInfo
- ReceiveSipInfo
An input method receives user input and passes the input data to the SIP through the IIMCallback3 interface. When you create the input method, you only call IIMCallback3 methods in response to a call coming through an IInputMethod3 interface method.
Do not create a separate thread with your input method to implement a user interface (UI). Create and manipulate windows only in the thread that responds to IInputMethod3 method calls. Instead of creating a separate thread for the UI, the input method can create process threads to implement a UI. However, these process threads must not call IIMCallback3, because certain Graphics, Windowing, and Events Subsystem (GWES) window functions work properly only if they are created from the same thread that created the window.
When to Implement
Use this interface to add notification of SIP input context changes to an input-method component. An input context stores information about the status of the input environment, such as input scopes and the input language.
When you create a new input-method COM component that implements this extended interface, you can add the new component to Windows Embedded Compact by creating standard COM registry keys. We recommend that your setup application self-register the new component by calling the DllRegisterServer and DllUnregisterServer functions. Implement these functions in the input-method server dynamic-link library (DLL). Optionally, you can set the registry values directly. The Input PanelProperties dialog box does not provide any UI elements for the self-registration service. For more information, see Input Method Registry Settings.
Obtaining a Pointer
When a user first selects a registered input method from the SIP dialog box or the Input Panel, the SIP obtains a pointer to the input-method interface by calling the CoCreateInstance function. The SIP then calls IInputMethod3 methods to notify the input method of events and to request data.
When the user selects a different input method, the SIP frees the existing input method by calling the IUnknown::Release method on the interface pointer.
See Also
Reference
Software-based Input Panel Interfaces
IIMCallback3
IInputMethod
Other Resources
Software-based Input Panel
Graphics, Windowing, and Events (GWES)