https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ab115e30fe282624db703…
commit ab115e30fe282624db703ad16111eaf4a59841c0
Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com>
AuthorDate: Sat Sep 19 22:47:40 2020 +0900
Commit: GitHub <noreply(a)github.com>
CommitDate: Sat Sep 19 22:47:40 2020 +0900
[IMM32][INCLUDE] Add immtable.h and modify imm32.spec (#3207)
- Add immtable.h header into win32ss/user/user32/misc/.
- Modify imm32.spec file.
CORE-11700
---
dll/win32/imm32/imm32.spec | 120 ++++++++++++++++++------------------
win32ss/user/user32/misc/immtable.h | 52 ++++++++++++++++
2 files changed, 112 insertions(+), 60 deletions(-)
diff --git a/dll/win32/imm32/imm32.spec b/dll/win32/imm32/imm32.spec
index ca0ddb36904..b9c0fe55516 100644
--- a/dll/win32/imm32/imm32.spec
+++ b/dll/win32/imm32/imm32.spec
@@ -1,4 +1,4 @@
-@ stub ImmActivateLayout
+@ stdcall -stub ImmActivateLayout(long)
@ stdcall ImmAssociateContext(ptr ptr)
@ stdcall ImmAssociateContextEx(ptr ptr long)
@ stdcall ImmConfigureIMEA(ptr ptr long ptr)
@@ -16,100 +16,100 @@
@ stdcall ImmEnumInputContext(long ptr long)
@ stdcall ImmEnumRegisterWordA(long ptr str long str ptr)
@ stdcall ImmEnumRegisterWordW(long ptr wstr long wstr ptr)
-@ stdcall ImmEscapeA(long long long ptr)
-@ stdcall ImmEscapeW(long long long ptr)
-@ stub ImmFreeLayout
+@ stdcall ImmEscapeA(long ptr long ptr)
+@ stdcall ImmEscapeW(long ptr long ptr)
+@ stdcall -stub ImmFreeLayout(long)
@ stdcall ImmGenerateMessage(ptr)
@ stdcall ImmGetCandidateListA(long long ptr long)
@ stdcall ImmGetCandidateListCountA(long ptr)
@ stdcall ImmGetCandidateListCountW(long ptr)
@ stdcall ImmGetCandidateListW(long long ptr long)
@ stdcall ImmGetCandidateWindow(long long ptr)
-@ stdcall ImmGetCompositionFontA(long ptr)
-@ stdcall ImmGetCompositionFontW(long ptr)
-@ stdcall ImmGetCompositionString (long long ptr long) ImmGetCompositionStringA
-@ stdcall ImmGetCompositionStringA (long long ptr long)
-@ stdcall ImmGetCompositionStringW (long long ptr long)
-@ stdcall ImmGetCompositionWindow(long ptr)
-@ stdcall ImmGetContext(long)
-@ stdcall ImmGetConversionListA(long long str ptr long long)
-@ stdcall ImmGetConversionListW(long long wstr ptr long long)
-@ stdcall ImmGetConversionStatus(long ptr ptr)
-@ stdcall ImmGetDefaultIMEWnd(long)
+@ stdcall ImmGetCompositionFontA(ptr ptr)
+@ stdcall ImmGetCompositionFontW(ptr ptr)
+@ stdcall ImmGetCompositionString(ptr long ptr long) ImmGetCompositionStringA
+@ stdcall ImmGetCompositionStringA(ptr long ptr long)
+@ stdcall ImmGetCompositionStringW(ptr long ptr long)
+@ stdcall ImmGetCompositionWindow(ptr ptr)
+@ stdcall ImmGetContext(ptr)
+@ stdcall ImmGetConversionListA(long ptr str ptr long long)
+@ stdcall ImmGetConversionListW(long ptr wstr ptr long long)
+@ stdcall ImmGetConversionStatus(ptr ptr ptr)
+@ stdcall ImmGetDefaultIMEWnd(ptr)
@ stdcall ImmGetDescriptionA(long ptr long)
@ stdcall ImmGetDescriptionW(long ptr long)
-@ stdcall ImmGetGuideLineA(long long ptr long)
-@ stdcall ImmGetGuideLineW(long long ptr long)
+@ stdcall ImmGetGuideLineA(ptr long ptr long)
+@ stdcall ImmGetGuideLineW(ptr long ptr long)
@ stdcall ImmGetHotKey(long ptr ptr ptr)
-@ stdcall ImmGetIMCCLockCount(long)
-@ stdcall ImmGetIMCCSize(long)
-@ stdcall ImmGetIMCLockCount(long)
+@ stdcall ImmGetIMCCLockCount(ptr)
+@ stdcall ImmGetIMCCSize(ptr)
+@ stdcall ImmGetIMCLockCount(ptr)
@ stdcall ImmGetIMEFileNameA(long ptr long)
@ stdcall ImmGetIMEFileNameW(long ptr long)
@ stdcall ImmGetImeInfoEx(ptr long ptr)
-@ stdcall ImmGetImeMenuItemsA(long long long ptr ptr long)
-@ stdcall ImmGetImeMenuItemsW(long long long ptr ptr long)
-@ stdcall ImmGetOpenStatus(long)
+@ stdcall ImmGetImeMenuItemsA(ptr long long ptr ptr long)
+@ stdcall ImmGetImeMenuItemsW(ptr long long ptr ptr long)
+@ stdcall ImmGetOpenStatus(ptr)
@ stdcall ImmGetProperty(long long)
@ stdcall ImmGetRegisterWordStyleA(long long ptr)
@ stdcall ImmGetRegisterWordStyleW(long long ptr)
-@ stdcall ImmGetStatusWindowPos(long ptr)
-@ stdcall ImmGetVirtualKey(long)
-@ stub ImmIMPGetIMEA
-@ stub ImmIMPGetIMEW
-@ stub ImmIMPQueryIMEA
-@ stub ImmIMPQueryIMEW
-@ stub ImmIMPSetIMEA
-@ stub ImmIMPSetIMEW
+@ stdcall ImmGetStatusWindowPos(ptr ptr)
+@ stdcall ImmGetVirtualKey(ptr)
+@ stdcall -stub ImmIMPGetIMEA(ptr ptr)
+@ stdcall -stub ImmIMPGetIMEW(ptr ptr)
+@ stdcall -stub ImmIMPQueryIMEA(ptr)
+@ stdcall -stub ImmIMPQueryIMEW(ptr)
+@ stdcall -stub ImmIMPSetIMEA(ptr ptr)
+@ stdcall -stub ImmIMPSetIMEW(ptr ptr)
@ stdcall ImmInstallIMEA(str str)
@ stdcall ImmInstallIMEW(wstr wstr)
@ stdcall ImmIsIME(long)
@ stdcall ImmIsUIMessageA(long long long long)
@ stdcall ImmIsUIMessageW(long long long long)
-@ stub ImmLoadIME
-@ stub ImmLoadLayout
+@ stdcall -stub ImmLoadIME(long)
+@ stdcall -stub ImmLoadLayout(long ptr)
@ stub ImmLockClientImc
-@ stdcall ImmLockIMC(long)
-@ stdcall ImmLockIMCC(long)
-@ stub ImmLockImeDpi
-@ stdcall ImmNotifyIME(long long long long)
+@ stdcall ImmLockIMC(ptr)
+@ stdcall ImmLockIMCC(ptr)
+@ stdcall -stub ImmLockImeDpi(long)
+@ stdcall ImmNotifyIME(ptr long long long)
@ stub ImmPenAuxInput
-@ stdcall ImmProcessKey(long long long long long)
-@ stub ImmPutImeMenuItemsIntoMappedFile
-@ stdcall ImmReSizeIMCC(long long)
+@ stdcall ImmProcessKey(ptr long long long long)
+@ stdcall -stub ImmPutImeMenuItemsIntoMappedFile(ptr)
+@ stdcall ImmReSizeIMCC(ptr long)
@ stdcall ImmRegisterClient(ptr ptr)
@ stdcall ImmRegisterWordA(long str long str)
@ stdcall ImmRegisterWordW(long wstr long wstr)
-@ stdcall ImmReleaseContext(long long)
+@ stdcall ImmReleaseContext(ptr ptr)
@ stdcall ImmRequestMessageA(ptr long long)
@ stdcall ImmRequestMessageW(ptr long long)
-@ stub ImmSendIMEMessageExA
-@ stub ImmSendIMEMessageExW
+@ stdcall -stub ImmSendIMEMessageExA(ptr long)
+@ stdcall -stub ImmSendIMEMessageExW(ptr long)
@ stub ImmSendMessageToActiveDefImeWndW
@ stdcall ImmSetActiveContext(ptr ptr long)
@ stdcall ImmSetActiveContextConsoleIME(ptr long)
-@ stdcall ImmSetCandidateWindow(long ptr)
-@ stdcall ImmSetCompositionFontA(long ptr)
-@ stdcall ImmSetCompositionFontW(long ptr)
-@ stdcall ImmSetCompositionStringA(long long ptr long ptr long)
-@ stdcall ImmSetCompositionStringW(long long ptr long ptr long)
-@ stdcall ImmSetCompositionWindow(long ptr)
-@ stdcall ImmSetConversionStatus(long long long)
+@ stdcall ImmSetCandidateWindow(ptr ptr)
+@ stdcall ImmSetCompositionFontA(ptr ptr)
+@ stdcall ImmSetCompositionFontW(ptr ptr)
+@ stdcall ImmSetCompositionStringA(ptr long ptr long ptr long)
+@ stdcall ImmSetCompositionStringW(ptr long ptr long ptr long)
+@ stdcall ImmSetCompositionWindow(ptr ptr)
+@ stdcall ImmSetConversionStatus(ptr long long)
#@ stdcall ImmSetHotKey(long long long ptr) user32.CliImmSetHotKey
-@ stdcall ImmSetOpenStatus(long long)
-@ stdcall ImmSetStatusWindowPos(long ptr)
+@ stdcall ImmSetOpenStatus(ptr long)
+@ stdcall ImmSetStatusWindowPos(ptr ptr)
@ stdcall ImmShowSoftKeyboard(ptr long)
-@ stdcall ImmSimulateHotKey(long long)
-@ stub ImmSystemHandler
-@ stdcall ImmTranslateMessage(long long long long)
+@ stdcall ImmSimulateHotKey(ptr long)
+@ stdcall -stub ImmSystemHandler(ptr long long)
+@ stdcall ImmTranslateMessage(ptr long long long)
@ stub ImmUnlockClientImc
-@ stdcall ImmUnlockIMC(long)
-@ stdcall ImmUnlockIMCC(long)
-@ stub ImmUnlockImeDpi
+@ stdcall ImmUnlockIMC(ptr)
+@ stdcall ImmUnlockIMCC(ptr)
+@ stdcall -stub ImmUnlockImeDpi(ptr)
@ stdcall ImmUnregisterWordA(long str long str)
@ stdcall ImmUnregisterWordW(long wstr long wstr)
-@ stub ImmWINNLSEnableIME
-@ stub ImmWINNLSGetEnableStatus
+@ stdcall -stub ImmWINNLSEnableIME(ptr long)
+@ stdcall -stub ImmWINNLSGetEnableStatus(ptr)
@ stub ImmWINNLSGetIMEHotkey
################################################################
diff --git a/win32ss/user/user32/misc/immtable.h b/win32ss/user/user32/misc/immtable.h
new file mode 100644
index 00000000000..d0cbdc2e4a5
--- /dev/null
+++ b/win32ss/user/user32/misc/immtable.h
@@ -0,0 +1,52 @@
+DEFINE_IMM_ENTRY(BOOL, ImmWINNLSEnableIME, (HWND, BOOL))
+DEFINE_IMM_ENTRY(BOOL, ImmWINNLSGetEnableStatus, (HWND))
+DEFINE_IMM_ENTRY(LRESULT, ImmSendIMEMessageExW, (HWND, LPARAM))
+DEFINE_IMM_ENTRY(LRESULT, ImmSendIMEMessageExA, (HWND, LPARAM))
+DEFINE_IMM_ENTRY(BOOL, ImmIMPGetIMEW, (HWND, LPIMEPROW))
+DEFINE_IMM_ENTRY(BOOL, ImmIMPGetIMEA, (HWND, LPIMEPROA))
+DEFINE_IMM_ENTRY(BOOL, ImmIMPQueryIMEW, (LPIMEPROW))
+DEFINE_IMM_ENTRY(BOOL, ImmIMPQueryIMEA, (LPIMEPROA))
+DEFINE_IMM_ENTRY(BOOL, ImmIMPSetIMEW, (HWND, LPIMEPROW))
+DEFINE_IMM_ENTRY(BOOL, ImmIMPSetIMEA, (HWND, LPIMEPROA))
+DEFINE_IMM_ENTRY(HIMC, ImmAssociateContext, (HWND, HIMC))
+DEFINE_IMM_ENTRY(LRESULT, ImmEscapeA, (HKL, HIMC, UINT, LPVOID))
+DEFINE_IMM_ENTRY(LRESULT, ImmEscapeW, (HKL, HIMC, UINT, LPVOID))
+DEFINE_IMM_ENTRY(LONG, ImmGetCompositionStringA, (HIMC, DWORD, LPVOID, DWORD))
+DEFINE_IMM_ENTRY(LONG, ImmGetCompositionStringW, (HIMC, DWORD, LPVOID, DWORD))
+DEFINE_IMM_ENTRY(BOOL, ImmGetCompositionWindow, (HIMC, LPCOMPOSITIONFORM))
+DEFINE_IMM_ENTRY(HIMC, ImmGetContext, (HWND))
+DEFINE_IMM_ENTRY(HWND, ImmGetDefaultIMEWnd, (HWND))
+DEFINE_IMM_ENTRY(BOOL, ImmIsIME, (HKL))
+DEFINE_IMM_ENTRY(BOOL, ImmReleaseContext, (HWND, HIMC))
+DEFINE_IMM_ENTRY(BOOL, ImmRegisterClient, (/*PSHAREDINFO*/ LPVOID, HINSTANCE))
+DEFINE_IMM_ENTRY(BOOL, ImmGetCompositionFontW, (HIMC, LPLOGFONTW))
+DEFINE_IMM_ENTRY(BOOL, ImmGetCompositionFontA, (HIMC, LPLOGFONTA))
+DEFINE_IMM_ENTRY(BOOL, ImmSetCompositionFontW, (HIMC, LPLOGFONTW))
+DEFINE_IMM_ENTRY(BOOL, ImmSetCompositionFontA, (HIMC, LPLOGFONTA))
+DEFINE_IMM_ENTRY(BOOL, ImmSetCompositionWindow, (HIMC, LPCOMPOSITIONFORM))
+DEFINE_IMM_ENTRY(BOOL, ImmNotifyIME, (HIMC, DWORD, DWORD, DWORD))
+DEFINE_IMM_ENTRY(PINPUTCONTEXT, ImmLockIMC, (HIMC))
+DEFINE_IMM_ENTRY(BOOL, ImmUnlockIMC, (HIMC))
+DEFINE_IMM_ENTRY(BOOL, ImmLoadIME, (HKL))
+DEFINE_IMM_ENTRY(BOOL, ImmSetOpenStatus, (HIMC, BOOL))
+DEFINE_IMM_ENTRY(BOOL, ImmFreeLayout, (DWORD))
+DEFINE_IMM_ENTRY(BOOL, ImmActivateLayout, (HKL))
+DEFINE_IMM_ENTRY(BOOL, ImmSetCandidateWindow, (HIMC, LPCANDIDATEFORM))
+DEFINE_IMM_ENTRY(BOOL, ImmConfigureIMEW, (HKL, HWND, DWORD, LPVOID))
+DEFINE_IMM_ENTRY(BOOL, ImmGetConversionStatus, (HIMC, LPDWORD, LPDWORD))
+DEFINE_IMM_ENTRY(BOOL, ImmSetConversionStatus, (HIMC, DWORD, DWORD))
+DEFINE_IMM_ENTRY(BOOL, ImmSetStatusWindowPos, (HIMC, LPPOINT))
+DEFINE_IMM_ENTRY(BOOL, ImmGetImeInfoEx, (PIMEINFOEX, IMEINFOEXCLASS, LPVOID))
+DEFINE_IMM_ENTRY(PIMEDPI, ImmLockImeDpi, (HKL))
+DEFINE_IMM_ENTRY(VOID, ImmUnlockImeDpi, (/*PIMEDPI*/ LPVOID))
+DEFINE_IMM_ENTRY(BOOL, ImmGetOpenStatus, (HIMC))
+DEFINE_IMM_ENTRY(BOOL, ImmSetActiveContext, (HWND, HIMC, BOOL))
+DEFINE_IMM_ENTRY(BOOL, ImmTranslateMessage, (HWND, UINT, WPARAM, LPARAM))
+DEFINE_IMM_ENTRY(BOOL, ImmLoadLayout, (HKL, PIMEINFOEX))
+DEFINE_IMM_ENTRY(DWORD, ImmProcessKey, (HWND, HKL, UINT, LPARAM, DWORD))
+DEFINE_IMM_ENTRY(LRESULT, ImmPutImeMenuItemsIntoMappedFile, (HIMC))
+DEFINE_IMM_ENTRY(DWORD, ImmGetProperty, (HKL, DWORD))
+DEFINE_IMM_ENTRY(BOOL, ImmSetCompositionStringA, (HIMC, DWORD, LPCVOID, DWORD, LPCVOID,
DWORD))
+DEFINE_IMM_ENTRY(BOOL, ImmSetCompositionStringW, (HIMC, DWORD, LPCVOID, DWORD, LPCVOID,
DWORD))
+DEFINE_IMM_ENTRY(BOOL, ImmEnumInputContext, (DWORD, IMCENUMPROC, LPARAM))
+DEFINE_IMM_ENTRY(LRESULT, ImmSystemHandler, (HIMC, WPARAM, LPARAM))