![]() At this point, the UI window should call ImmSetConversionStatus. Because the Input Context is managed by the IMM, the IMM along with the IME should be notified when the Input Context is changed.įor example, the UI window occasionally needs to change the conversion mode of the Input Context when the user clicks the mouse. However, if the UI window wants to update the Input Context, it should call the IMM functions. The UI window refers to the Input Context, but does not need to update it. Thus, the Input Context must contain all the information needed by the UI window to display the composition window, the status window, and so forth. The UI window then uses that Input Context. When a window of an application is activated, the UI window receives a message that contains the current Input Context. The UI window must perform all tasks by referring to the Input Context that is currently selected. Even if the message is not handled by the UI window procedure, the UI window does not pass it to DefWindowProc. The UI window procedure can use DefWindowProc, but the UI window cannot pass a WM_IME_xxx message to DefWindowProc. When the UI window needs more than one LONG_PTR value extra for private use, the UI window can place a handle for a memory block into the IMMGWLP_PRIVATE area. This IMMGWLP_PRIVATE provides a LONG_PTR value extra of the window instance. When the IME needs to use the extra byte of the window instance, the UI window uses SetWindowLongPtr and GetWindowLongPtr with IMMGWLP_PRIVATE. The cbWndExtra of the UI windows cannot be enhanced by the IME. The Input Context from GetWindowLongPtr with IMMGWLP_IMC is available at any time during the UI window procedure, except when handling a WM_CREATE message. The UI window can refer to this Input Context and handles the messages. This Input Context can be obtained by calling GetWindowLongPtr with IMMGWLP_IMC when the UI window receives a WM_IME_xxx message. When the IME window is created, the UI window provided by the IME itself is created and owned by the IME window.Įach UI window contains the current Input Context. The IME windows of the IME class are created by the application or by the system.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |