34 imcLock.
get().cfCandForm[0].dwStyle = 0;
35 imcLock.
get().cfCandForm[0].dwIndex = (
DWORD)-1;
40 imcLock.
get().fdwInit &= ~INIT_GUIDMAP;
62 imcLock.
get().fdwConversion |= dwConv;
79 imcLock.
get().lfFont.W = lf;
102 lpIMEInfo->dwPrivateDataSize = 0;
126 lpIMEInfo->fdwSentenceCaps = 0;
139 lpIMEInfo->fdwSelectCaps = 0;
148 lpIMEInfo->fdwConversionCaps = 0;
149 lpIMEInfo->fdwSentenceCaps = 0;
150 lpIMEInfo->fdwSCSCaps = 0;
151 lpIMEInfo->fdwUICaps = 0;
152 lpIMEInfo->fdwSelectCaps = 0;
176 TRACE(
"(%p, %p, 0x%lX)\n", lpIMEInfo, lpszWndClass, dwSystemInfoFlags);
253 TRACE(
"(%u, %p)\n", nItem, lpStyleBuf);
274 TRACE(
"(%p, %s, %lu, %s, %p)\n", lpfnEnumProc,
debugstr_w(lpszReading),
292 TRACE(
"(%p, %p, %lu, %p)\n", hKL,
hWnd, dwMode, lpData);
302 return (pBridge->ConfigureGeneral(pTLS, pThreadMgr, hKL,
hWnd) ==
S_OK);
305 return (pBridge->ConfigureRegisterWord(pTLS, pThreadMgr, hKL,
hWnd, lpData) ==
S_OK);
320 TRACE(
"(%u)\n", uReserved);
353 TRACE(
"(%p, %u, %p)\n", hIMC, uEscape, lpData);
370 TRACE(
"(%p, %u, %p, lpbKeyState)\n", hIMC, uVirtKey,
lParam, lpbKeyState);
378 if (!pBridge || !pThreadMgr)
384 pThreadMgr->GetFocus(&pDocMgr);
405 return pBridge->ProcessKey(pTLS, pThreadMgr, hIMC, uVirtKey,
lParam, lpbKeyState, &nUnknown60);
422 TRACE(
"(%p, %u)\n", hIMC, fSelect);
440 TRACE(
"(%p, %u)\n", hIMC, fFlag);
459 TRACE(
"(%u, %u, %p, %p, %u, %p)\n", uVirtKey, uScanCode, lpbKeyState, lpTransMsgList,
468 if (!pBridge || !pThreadMgr)
472 HRESULT hr = pBridge->ToAsciiEx(pTLS, pThreadMgr, uVirtKey, uScanCode, lpbKeyState,
473 lpTransMsgList, fuState, hIMC, &
ret);
490 TRACE(
"(%p, 0x%lX, 0x%lX, %p)\n", hIMC, dwAction, dwIndex, dwValue);
498 if (!pBridge || !pThreadMgr)
501 HRESULT hr = pBridge->Notify(pTLS, pThreadMgr, hIMC, dwAction, dwIndex, dwValue);
520 TRACE(
"(%p, 0x%lX, %p, 0x%lX, %p, 0x%lX)\n", hIMC, dwIndex, lpComp, dwCompLen,
529 if (!pBridge || !pThreadMgr)
532 return pBridge->SetCompositionString(pTLS, pThreadMgr, hIMC, dwIndex,
533 lpComp, dwCompLen, lpRead, dwReadLen);
548 TRACE(
"(%p, %p, 0x%lX, %p)\n", lpIMEInfo, lpszWndClass, dwSystemInfoFlags, hKL);
562 return Inquire(lpIMEInfo, lpszWndClass, dwSystemInfoFlags, hKL);
576 TRACE(
"(%p, %d, %p)\n", hIMC, fSelect, hKL);
602 TRACE(
"(%p, %u, %p, %p)\n", hIMC, uSubFunc, lpData, hKL);
625 TRACE(
"(%p, 0x%lX, %p)\n", hIMC, dwUnknown, pdwGuidAtom);
633 return imccLock.
m_hr;
635 if (!imccLock.
get().m_pCicIC)
638 return imccLock.
get().m_pCicIC->GetGuidAtom(imcLock, dwUnknown, pdwGuidAtom);
650 TRACE(
"(%p)\n", hIMC);
742 TRACE(
"(%p)\n", hIMC);
760 TRACE(
"(%p)\n", hIMC);
781 TRACE(
"(%p, %d, %p, %p)\n", hIMC, fActive,
hWnd, hKL);
872 TRACE(
"(%p)\n", hKL);
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
EXTERN_C void cicGetOSInfo(LPUINT puACP, LPDWORD pdwOSInfo)
EXTERN_C BOOL TFInitLib(FN_CoCreateInstance fnCoCreateInstance)
LRESULT EscapeKorean(TLS *pTLS, HIMC hIMC, UINT uSubFunc, LPVOID lpData)
@implemented
static BOOL IsOwnDim(ITfDocumentMgr *pDocMgr)
@implemented
HRESULT DestroyInputContext(TLS *pTLS, HIMC hIMC)
@implemented
HRESULT CreateInputContext(TLS *pTLS, HIMC hIMC)
@implemented
HRESULT SetActiveContextAlways(TLS *pTLS, HIMC hIMC, BOOL fActive, HWND hWnd, HKL hKL)
HRESULT ActivateIMMX(_Inout_ TLS *pTLS, _Inout_ ITfThreadMgr_P *pThreadMgr)
@implemented
HRESULT SelectEx(_Inout_ TLS *pTLS, _Inout_ ITfThreadMgr_P *pThreadMgr, _In_ HIMC hIMC, _In_ BOOL fSelect, _In_ HKL hKL)
BOOL UnInitIMMX(_Inout_ TLS *pTLS)
@implemented
HRESULT DeactivateIMMX(_Inout_ TLS *pTLS, _Inout_ ITfThreadMgr_P *pThreadMgr)
@implemented
HRESULT InitIMMX(_Inout_ TLS *pTLS)
@implemented
INPUTCONTEXTDX & get() const
DWORD m_dwSystemInfoFlags
static TLS * PeekTLS()
@implemented
ITfThreadMgr_P * m_pThreadMgr
static TLS * GetTLS()
@implemented
static BOOL InternalDestroyTLS()
@implemented
static BOOL Initialize()
@implemented
static VOID Uninitialize()
@implemented
BOOL WINAPI CtfImmIsCiceroStartedInThread(VOID)
BOOL IsVKDBEKey(_In_ UINT uVirtKey)
@implemented
BYTE GetCharsetFromLangId(_In_ DWORD dwValue)
BOOL MsimtfIsGuidMapEnable(_In_ HIMC hIMC, _Out_opt_ LPBOOL pbValue)
@implemented
BOOL IsInteractiveUserLogon(VOID)
#define DLL_THREAD_DETACH
#define DLL_PROCESS_ATTACH
#define DLL_PROCESS_DETACH
#define IME_CMODE_KATAKANA
#define IME_SMODE_CONVERSATION
#define IME_PROP_AT_CARET
#define SELECT_CAP_CONVERSION
#define SELECT_CAP_SENTENCE
#define IME_CMODE_SOFTKBD
INT(CALLBACK * REGISTERWORDENUMPROCW)(_In_ LPCWSTR lpszReading, _In_ DWORD dwStyle, _In_ LPCWSTR lpszRegister, _Inout_opt_ LPVOID lpData)
#define SCS_CAP_SETRECONVERTSTRING
#define IME_PROP_SPECIAL_UI
#define IME_SMODE_PLAURALCLAUSE
#define IME_PROP_COMPLETE_ON_UNSELECT
#define IME_SMODE_PHRASEPREDICT
#define IME_CMODE_FULLSHAPE
#define IME_SYSINFO_WINLOGON
#define IME_PROP_NEED_ALTKEY
#define IME_PROP_KBD_CHAR_FIRST
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
static IN DWORD IN LPVOID lpvReserved
HRESULT WINAPI TF_GetThreadMgr(ITfThreadMgr **pptim)
EXTERN_C HRESULT WINAPI TF_DllDetachInOther(VOID)
EXTERN_C UINT WINAPI ImeEnumRegisterWord(_In_ REGISTERWORDENUMPROCW lpfnEnumProc, _In_opt_ LPCWSTR lpszReading, _In_ DWORD dwStyle, _In_opt_ LPCWSTR lpszString, _In_opt_ LPVOID lpData)
EXTERN_C VOID TFUninitLib(VOID)
EXTERN_C BOOL WINAPI ImeSetCompositionString(_In_ HIMC hIMC, _In_ DWORD dwIndex, _In_opt_ LPCVOID lpComp, _In_ DWORD dwCompLen, _In_opt_ LPCVOID lpRead, _In_ DWORD dwReadLen)
EXTERN_C DWORD WINAPI ImeConversionList(_In_ HIMC hIMC, _In_ LPCWSTR lpSrc, _Out_ LPCANDIDATELIST lpDst, _In_ DWORD dwBufLen, _In_ UINT uFlag)
EXTERN_C UINT WINAPI ImeGetRegisterWordStyle(_In_ UINT nItem, _Out_ LPSTYLEBUFW lpStyleBuf)
EXTERN_C HRESULT WINAPI CtfImeInquireExW(_Out_ LPIMEINFO lpIMEInfo, _Out_ LPWSTR lpszWndClass, _In_ DWORD dwSystemInfoFlags, _In_ HKL hKL)
BOOL AttachIME(VOID)
@implemented
EXTERN_C LRESULT WINAPI ImeEscape(_In_ HIMC hIMC, _In_ UINT uEscape, _Inout_opt_ LPVOID lpData)
EXTERN_C BOOL WINAPI CtfImeIsIME(_In_ HKL hKL)
EXTERN_C HRESULT WINAPI CtfImeProcessCicHotkey(_In_ HIMC hIMC, _In_ UINT vKey, _In_ LPARAM lParam)
EXTERN_C BOOL WINAPI ImeProcessKey(_In_ HIMC hIMC, _In_ UINT uVirtKey, _In_ LPARAM lParam, _In_ CONST LPBYTE lpbKeyState)
static HRESULT InternalSelectEx(_In_ HIMC hIMC, _In_ BOOL fSelect, _In_ LANGID LangID)
EXTERN_C BOOL WINAPI CtfImeIsGuidMapEnable(_In_ HIMC hIMC)
EXTERN_C BOOL WINAPI ImeDestroy(_In_ UINT uReserved)
EXTERN_C BOOL WINAPI ImeSetActiveContext(_In_ HIMC hIMC, _In_ BOOL fFlag)
EXTERN_C BOOL WINAPI NotifyIME(_In_ HIMC hIMC, _In_ DWORD dwAction, _In_ DWORD dwIndex, _In_ DWORD_PTR dwValue)
EXTERN_C BOOL WINAPI ImeInquire(_Out_ LPIMEINFO lpIMEInfo, _Out_ LPWSTR lpszWndClass, _In_ DWORD dwSystemInfoFlags)
BOOL ProcessAttach(HINSTANCE hinstDLL)
@implemented
EXTERN_C BOOL WINAPI CtfImeSelectEx(_In_ HIMC hIMC, _In_ BOOL fSelect, _In_ HKL hKL)
EXTERN_C HRESULT WINAPI CtfImeThreadDetach(VOID)
HRESULT Inquire(_Out_ LPIMEINFO lpIMEInfo, _Out_ LPWSTR lpszWndClass, _In_ DWORD dwSystemInfoFlags, _In_ HKL hKL)
EXTERN_C LRESULT WINAPI CtfImeDispatchDefImeMessage(_In_ HWND hWnd, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam)
EXTERN_C BOOL WINAPI ImeRegisterWord(_In_ LPCWSTR lpszReading, _In_ DWORD dwStyle, _In_ LPCWSTR lpszString)
EXTERN_C HRESULT WINAPI CtfImeCreateInputContext(_In_ HIMC hIMC)
EXTERN_C LRESULT WINAPI CtfImeEscapeEx(_In_ HIMC hIMC, _In_ UINT uSubFunc, _Inout_opt_ LPVOID lpData, _In_ HKL hKL)
EXTERN_C BOOL WINAPI ImeConfigure(_In_ HKL hKL, _In_ HWND hWnd, _In_ DWORD dwMode, _Inout_opt_ LPVOID lpData)
EXTERN_C BOOL WINAPI ImeSelect(_In_ HIMC hIMC, _In_ BOOL fSelect)
EXTERN_C BOOL WINAPI DllMain(_In_ HINSTANCE hinstDLL, _In_ DWORD dwReason, _Inout_opt_ LPVOID lpvReserved)
@implemented
EXTERN_C UINT WINAPI ImeToAsciiEx(_In_ UINT uVirtKey, _In_ UINT uScanCode, _In_ CONST LPBYTE lpbKeyState, _Out_ LPTRANSMSGLIST lpTransMsgList, _In_ UINT fuState, _In_ HIMC hIMC)
EXTERN_C HRESULT WINAPI CtfImeDestroyInputContext(_In_ HIMC hIMC)
CRITICAL_SECTION g_csLock
VOID ProcessDetach(HINSTANCE hinstDLL)
@implemented
EXTERN_C HRESULT WINAPI CtfImeGetGuidAtom(_In_ HIMC hIMC, _In_ DWORD dwUnknown, _Out_opt_ LPDWORD pdwGuidAtom)
VOID DetachIME(VOID)
@implemented
EXTERN_C HRESULT WINAPI CtfImeSetActiveContextAlways(_In_ HIMC hIMC, _In_ BOOL fActive, _In_ HWND hWnd, _In_ HKL hKL)
CDispAttrPropCache * g_pPropCache
EXTERN_C HRESULT WINAPI CtfImeDestroyThreadMgr(VOID)
EXTERN_C BOOL WINAPI ImeUnregisterWord(_In_ LPCWSTR lpszReading, _In_ DWORD dwStyle, _In_ LPCWSTR lpszString)
EXTERN_C HRESULT WINAPI CtfImeCreateThreadMgr(VOID)
#define SUBLANG_CHINESE_TRADITIONAL
#define SUBLANG_CHINESE_SIMPLIFIED
STRSAFEAPI StringCchCopyW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszSrc)
STDMETHOD() CallImm32HotkeyHandler(UINT vKey, LPARAM lParam, HRESULT *phrResult)=0
BOOL WINAPI InitializeCriticalSectionAndSpinCount(OUT LPCRITICAL_SECTION lpCriticalSection, IN DWORD dwSpinCount)
BOOL RegisterImeClass(VOID)
@implemented
BOOL IsMsImeMessage(_In_ UINT uMsg)
@implemented
BOOL RegisterMSIMEMessage(VOID)
@implemented
VOID UnregisterImeClass(VOID)
@implemented
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_writes_opt_ NumCharacters PUSHORT _Inout_ PUSHORT _In_ UCHAR _In_opt_ USHORT LangID
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
_In_ HCRYPTHASH _In_ BOOL _In_ DWORD _Inout_ DWORD _In_ DWORD dwBufLen
int WINAPI GetObjectW(_In_ HANDLE h, _In_ int c, _Out_writes_bytes_opt_(c) LPVOID pv)
HGDIOBJ WINAPI GetCurrentObject(_In_ HDC, _In_ UINT)
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
BOOL WINAPI IsWindow(_In_opt_ HWND)
HKL WINAPI GetKeyboardLayout(_In_ DWORD)
HDC WINAPI GetDC(_In_opt_ HWND)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)