comparison 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
comparison
equal deleted inserted replaced
1499:1f58458b7ef7 1500:91c8c3b7cbf0
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
5 */
6 #ifndef _IME_
7 #define _IME_
8
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12
13 #ifndef _WINDEF_
14 typedef unsigned int UINT;
15 #endif
16
17 #define IME_MAXPROCESS 32
18
19 #ifdef UNICODE
20 #define SendIMEMessageEx SendIMEMessageExW
21 #else
22 #define SendIMEMessageEx SendIMEMessageExA
23 #endif
24
25 LRESULT WINAPI SendIMEMessageExA(HWND,LPARAM);
26 LRESULT WINAPI SendIMEMessageExW(HWND,LPARAM);
27
28 typedef struct tagIMESTRUCT {
29 UINT fnc;
30 WPARAM wParam;
31 UINT wCount;
32 UINT dchSource;
33 UINT dchDest;
34 LPARAM lParam1;
35 LPARAM lParam2;
36 LPARAM lParam3;
37 } IMESTRUCT,*PIMESTRUCT,*NPIMESTRUCT,*LPIMESTRUCT;
38
39 #define CP_HWND 0
40 #define CP_OPEN 1
41 #define CP_DIRECT 2
42 #define CP_LEVEL 3
43
44 #if !defined(VK_DBE_ALPHANUMERIC)
45 #define VK_DBE_ALPHANUMERIC 0x0f0
46 #define VK_DBE_KATAKANA 0x0f1
47 #define VK_DBE_HIRAGANA 0x0f2
48 #define VK_DBE_SBCSCHAR 0x0f3
49 #define VK_DBE_DBCSCHAR 0x0f4
50 #define VK_DBE_ROMAN 0x0f5
51 #define VK_DBE_NOROMAN 0x0f6
52 #define VK_DBE_ENTERWORDREGISTERMODE 0x0f7
53 #define VK_DBE_ENTERIMECONFIGMODE 0x0f8
54 #define VK_DBE_FLUSHSTRING 0x0f9
55 #define VK_DBE_CODEINPUT 0x0fa
56 #define VK_DBE_NOCODEINPUT 0x0fb
57 #define VK_DBE_DETERMINESTRING 0x0fc
58 #define VK_DBE_ENTERDLGCONVERSIONMODE 0x0fd
59 #endif
60
61 #define MCW_DEFAULT 0x00
62 #define MCW_RECT 0x01
63 #define MCW_WINDOW 0x02
64 #define MCW_SCREEN 0x04
65 #define MCW_VERTICAL 0x08
66 #define MCW_HIDDEN 0x10
67
68 #define IME_MODE_ALPHANUMERIC 0x0001
69
70 #ifdef KOREA
71 #define IME_MODE_SBCSCHAR 0x0002
72 #else
73 #define IME_MODE_SBCSCHAR 0x0008
74 #endif
75
76 #define IME_MODE_KATAKANA 0x0002
77 #define IME_MODE_HIRAGANA 0x0004
78 #define IME_MODE_HANJACONVERT 0x0004
79 #define IME_MODE_DBCSCHAR 0x0010
80 #define IME_MODE_ROMAN 0x0020
81 #define IME_MODE_NOROMAN 0x0040
82 #define IME_MODE_CODEINPUT 0x0080
83 #define IME_MODE_NOCODEINPUT 0x0100
84
85 #define IME_GETIMECAPS 0x03
86 #define IME_SETOPEN 0x04
87 #define IME_GETOPEN 0x05
88 #define IME_GETVERSION 0x07
89 #define IME_SETCONVERSIONWINDOW 0x08
90 #define IME_MOVEIMEWINDOW IME_SETCONVERSIONWINDOW
91 #define IME_SETCONVERSIONMODE 0x10
92
93 #define IME_GETCONVERSIONMODE 0x11
94 #define IME_SET_MODE 0x12
95 #define IME_SENDVKEY 0x13
96 #define IME_ENTERWORDREGISTERMODE 0x18
97 #define IME_SETCONVERSIONFONTEX 0x19
98
99 #define IME_BANJAtoJUNJA 0x13
100 #define IME_JUNJAtoBANJA 0x14
101 #define IME_JOHABtoKS 0x15
102 #define IME_KStoJOHAB 0x16
103
104 #define IMEA_INIT 0x01
105 #define IMEA_NEXT 0x02
106 #define IMEA_PREV 0x03
107
108 #define IME_REQUEST_CONVERT 0x01
109 #define IME_ENABLE_CONVERT 0x02
110
111 #define INTERIM_WINDOW 0x00
112 #define MODE_WINDOW 0x01
113 #define HANJA_WINDOW 0x02
114
115 #define IME_RS_ERROR 0x01
116 #define IME_RS_NOIME 0x02
117 #define IME_RS_TOOLONG 0x05
118 #define IME_RS_ILLEGAL 0x06
119 #define IME_RS_NOTFOUND 0x07
120 #define IME_RS_NOROOM 0x0a
121 #define IME_RS_DISKERROR 0x0e
122 #define IME_RS_INVALID 0x11
123 #define IME_RS_NEST 0x12
124 #define IME_RS_SYSTEMMODAL 0x13
125
126 #define WM_IME_REPORT 0x0280
127
128 #define IR_STRINGSTART 0x100
129 #define IR_STRINGEND 0x101
130 #define IR_OPENCONVERT 0x120
131 #define IR_CHANGECONVERT 0x121
132 #define IR_CLOSECONVERT 0x122
133 #define IR_FULLCONVERT 0x123
134 #define IR_IMESELECT 0x130
135 #define IR_STRING 0x140
136 #define IR_DBCSCHAR 0x160
137 #define IR_UNDETERMINE 0x170
138 #define IR_STRINGEX 0x180
139 #define IR_MODEINFO 0x190
140
141 #define WM_WNT_CONVERTREQUESTEX 0x0109
142 #define WM_CONVERTREQUEST 0x010A
143 #define WM_CONVERTRESULT 0x010B
144 #define WM_INTERIM 0x010C
145
146 #define WM_IMEKEYDOWN 0x290
147 #define WM_IMEKEYUP 0x291
148
149 typedef struct tagUNDETERMINESTRUCT {
150 DWORD dwSize;
151 UINT uDefIMESize;
152 UINT uDefIMEPos;
153 UINT uUndetTextLen;
154 UINT uUndetTextPos;
155 UINT uUndetAttrPos;
156 UINT uCursorPos;
157 UINT uDeltaStart;
158 UINT uDetermineTextLen;
159 UINT uDetermineTextPos;
160 UINT uDetermineDelimPos;
161 UINT uYomiTextLen;
162 UINT uYomiTextPos;
163 UINT uYomiDelimPos;
164 } UNDETERMINESTRUCT,*PUNDETERMINESTRUCT,*NPUNDETERMINESTRUCT,*LPUNDETERMINESTRUCT;
165
166 typedef struct tagSTRINGEXSTRUCT {
167 DWORD dwSize;
168 UINT uDeterminePos;
169 UINT uDetermineDelimPos;
170 UINT uYomiPos;
171 UINT uYomiDelimPos;
172 } STRINGEXSTRUCT,*NPSTRINGEXSTRUCT,*LPSTRINGEXSTRUCT;
173
174 #ifdef __cplusplus
175 }
176 #endif
177 #endif