Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

96 lines
2.3 KiB

/*++
Copyright (c) 1985 - 1999, Microsoft Corporation
Module Name:
uiwndhd.h
Abstract:
This file defines the IME UI window handler Class.
Author:
Revision History:
Notes:
--*/
#ifndef _UIWNDHD_H_
#define _UIWNDHD_H_
#include "globals.h"
#include "imtls.h"
extern LPCTSTR IMEUIWndHandlerName;
class CIMEUIWindowHandler
{
public:
CIMEUIWindowHandler(HWND hwnd = NULL);
LRESULT ImeUIWndProcWorker(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL fUnicode = TRUE);
private:
LRESULT UIWndCreateHandler(LPCREATESTRUCT lpcs);
VOID UIWndDestroyHandler();
VOID UIWndFinalDestroyHandler();
LRESULT ImeUINotifyHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL fUnicode);
LRESULT ImeUISelectHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL fUnicode);
LRESULT ImeUIMsImeHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL fUnicode);
LRESULT ImeUIMsImeMouseHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL fUnicode);
LRESULT ImeUIMsImeModeBiasHandler(WPARAM wParam, LPARAM lParam);
BOOL IsMsImeMessage(UINT uMsg)
{
if (uMsg == WM_MSIME_SERVICE ||
uMsg == WM_MSIME_UIREADY ||
uMsg == WM_MSIME_RECONVERTREQUEST ||
uMsg == WM_MSIME_RECONVERT ||
uMsg == WM_MSIME_DOCUMENTFEED ||
uMsg == WM_MSIME_QUERYPOSITION ||
uMsg == WM_MSIME_MODEBIAS ||
uMsg == WM_MSIME_SHOWIMEPAD ||
uMsg == WM_MSIME_MOUSE ||
uMsg == WM_MSIME_KEYMAP)
return TRUE;
else
return FALSE;
}
LRESULT ImeUIPrivateHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL fUnicode);
BOOL IsPrivateMessage(UINT uMsg)
{
IMTLS *ptls = IMTLS_GetOrAlloc();
if (ptls == NULL)
return FALSE;
if (uMsg == ptls->prvUIWndMsg.uMsgOnLayoutChange ||
uMsg == ptls->prvUIWndMsg.uMsgOnClearDocFeedBuffer)
return TRUE;
else
return FALSE;
}
private:
static BOOL EnumUnSelectCallback(HIMC hIMC, LPARAM lParam);
private:
typedef struct tagUIEXTRA {
HWND hImeUIWnd;
} UIEXTRA;
UIEXTRA m_imeuiextra;
};
CIMEUIWindowHandler* GetImeUIWndHandler(HWND hwnd);
#endif // _UIWNDHD_H_