Mercurial > games > semicongine
diff fuhtark_test/include/winapi/ime.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/fuhtark_test/include/winapi/ime.h Wed Nov 26 21:36:48 2025 +0700 @@ -0,0 +1,177 @@ +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the w64 mingw-runtime package. + * No warranty is given; refer to the file DISCLAIMER within this package. + */ +#ifndef _IME_ +#define _IME_ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _WINDEF_ + typedef unsigned int UINT; +#endif + +#define IME_MAXPROCESS 32 + +#ifdef UNICODE +#define SendIMEMessageEx SendIMEMessageExW +#else +#define SendIMEMessageEx SendIMEMessageExA +#endif + + LRESULT WINAPI SendIMEMessageExA(HWND,LPARAM); + LRESULT WINAPI SendIMEMessageExW(HWND,LPARAM); + + typedef struct tagIMESTRUCT { + UINT fnc; + WPARAM wParam; + UINT wCount; + UINT dchSource; + UINT dchDest; + LPARAM lParam1; + LPARAM lParam2; + LPARAM lParam3; + } IMESTRUCT,*PIMESTRUCT,*NPIMESTRUCT,*LPIMESTRUCT; + +#define CP_HWND 0 +#define CP_OPEN 1 +#define CP_DIRECT 2 +#define CP_LEVEL 3 + +#if !defined(VK_DBE_ALPHANUMERIC) +#define VK_DBE_ALPHANUMERIC 0x0f0 +#define VK_DBE_KATAKANA 0x0f1 +#define VK_DBE_HIRAGANA 0x0f2 +#define VK_DBE_SBCSCHAR 0x0f3 +#define VK_DBE_DBCSCHAR 0x0f4 +#define VK_DBE_ROMAN 0x0f5 +#define VK_DBE_NOROMAN 0x0f6 +#define VK_DBE_ENTERWORDREGISTERMODE 0x0f7 +#define VK_DBE_ENTERIMECONFIGMODE 0x0f8 +#define VK_DBE_FLUSHSTRING 0x0f9 +#define VK_DBE_CODEINPUT 0x0fa +#define VK_DBE_NOCODEINPUT 0x0fb +#define VK_DBE_DETERMINESTRING 0x0fc +#define VK_DBE_ENTERDLGCONVERSIONMODE 0x0fd +#endif + +#define MCW_DEFAULT 0x00 +#define MCW_RECT 0x01 +#define MCW_WINDOW 0x02 +#define MCW_SCREEN 0x04 +#define MCW_VERTICAL 0x08 +#define MCW_HIDDEN 0x10 + +#define IME_MODE_ALPHANUMERIC 0x0001 + +#ifdef KOREA +#define IME_MODE_SBCSCHAR 0x0002 +#else +#define IME_MODE_SBCSCHAR 0x0008 +#endif + +#define IME_MODE_KATAKANA 0x0002 +#define IME_MODE_HIRAGANA 0x0004 +#define IME_MODE_HANJACONVERT 0x0004 +#define IME_MODE_DBCSCHAR 0x0010 +#define IME_MODE_ROMAN 0x0020 +#define IME_MODE_NOROMAN 0x0040 +#define IME_MODE_CODEINPUT 0x0080 +#define IME_MODE_NOCODEINPUT 0x0100 + +#define IME_GETIMECAPS 0x03 +#define IME_SETOPEN 0x04 +#define IME_GETOPEN 0x05 +#define IME_GETVERSION 0x07 +#define IME_SETCONVERSIONWINDOW 0x08 +#define IME_MOVEIMEWINDOW IME_SETCONVERSIONWINDOW +#define IME_SETCONVERSIONMODE 0x10 + +#define IME_GETCONVERSIONMODE 0x11 +#define IME_SET_MODE 0x12 +#define IME_SENDVKEY 0x13 +#define IME_ENTERWORDREGISTERMODE 0x18 +#define IME_SETCONVERSIONFONTEX 0x19 + +#define IME_BANJAtoJUNJA 0x13 +#define IME_JUNJAtoBANJA 0x14 +#define IME_JOHABtoKS 0x15 +#define IME_KStoJOHAB 0x16 + +#define IMEA_INIT 0x01 +#define IMEA_NEXT 0x02 +#define IMEA_PREV 0x03 + +#define IME_REQUEST_CONVERT 0x01 +#define IME_ENABLE_CONVERT 0x02 + +#define INTERIM_WINDOW 0x00 +#define MODE_WINDOW 0x01 +#define HANJA_WINDOW 0x02 + +#define IME_RS_ERROR 0x01 +#define IME_RS_NOIME 0x02 +#define IME_RS_TOOLONG 0x05 +#define IME_RS_ILLEGAL 0x06 +#define IME_RS_NOTFOUND 0x07 +#define IME_RS_NOROOM 0x0a +#define IME_RS_DISKERROR 0x0e +#define IME_RS_INVALID 0x11 +#define IME_RS_NEST 0x12 +#define IME_RS_SYSTEMMODAL 0x13 + +#define WM_IME_REPORT 0x0280 + +#define IR_STRINGSTART 0x100 +#define IR_STRINGEND 0x101 +#define IR_OPENCONVERT 0x120 +#define IR_CHANGECONVERT 0x121 +#define IR_CLOSECONVERT 0x122 +#define IR_FULLCONVERT 0x123 +#define IR_IMESELECT 0x130 +#define IR_STRING 0x140 +#define IR_DBCSCHAR 0x160 +#define IR_UNDETERMINE 0x170 +#define IR_STRINGEX 0x180 +#define IR_MODEINFO 0x190 + +#define WM_WNT_CONVERTREQUESTEX 0x0109 +#define WM_CONVERTREQUEST 0x010A +#define WM_CONVERTRESULT 0x010B +#define WM_INTERIM 0x010C + +#define WM_IMEKEYDOWN 0x290 +#define WM_IMEKEYUP 0x291 + + typedef struct tagUNDETERMINESTRUCT { + DWORD dwSize; + UINT uDefIMESize; + UINT uDefIMEPos; + UINT uUndetTextLen; + UINT uUndetTextPos; + UINT uUndetAttrPos; + UINT uCursorPos; + UINT uDeltaStart; + UINT uDetermineTextLen; + UINT uDetermineTextPos; + UINT uDetermineDelimPos; + UINT uYomiTextLen; + UINT uYomiTextPos; + UINT uYomiDelimPos; + } UNDETERMINESTRUCT,*PUNDETERMINESTRUCT,*NPUNDETERMINESTRUCT,*LPUNDETERMINESTRUCT; + + typedef struct tagSTRINGEXSTRUCT { + DWORD dwSize; + UINT uDeterminePos; + UINT uDetermineDelimPos; + UINT uYomiPos; + UINT uYomiDelimPos; + } STRINGEXSTRUCT,*NPSTRINGEXSTRUCT,*LPSTRINGEXSTRUCT; + +#ifdef __cplusplus +} +#endif +#endif
