FLTK 1.3.0
aimm.h
1 //
2 // "$Id: aimm.h 7913 2010-11-29 18:18:27Z greg.ercolano $"
3 //
4 // Standard dialog header file for the UTF-8 Fast Light Tool Kit (FLTK-UTF8).
5 //
6 // Copyright 2009-2010 by Bill Spitzak and others.
7 //
8 // This library is free software; you can redistribute it and/or
9 // modify it under the terms of the GNU Library General Public
10 // License as published by the Free Software Foundation; either
11 // version 2 of the License, or (at your option) any later version
12 // with exceptions that allow sub-classing and static linking in
13 // non-LGPL compliant software. These exceptions are subject to
14 // conditions, see the FLTK License for more details.
15 //
16 // This library is distributed in the hope that it will be useful,
17 // but WITHOUT ANY WARRANTY; without even the implied warranty of
18 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the FLTK
19 // License for more details.
20 //
21 // You should have received a copy of the FLTK License along with
22 // this library; if not, write to OksiD Software, Jean-Marc Lienher,
23 // Rue de la Cheminee 1, CH-2065 Savagnier, Switzerland.
24 //
25 // Please report all bugs and problems to "oksid@bluewin.ch".
26 //
27 
28 #ifndef AIMM_H
29 # define AIMM_H
30 //# define HANDLE_PTR HANDLE*
31 //# define DWORD_PTR DWORD*
32 //# define CLSCTX_INPROC_SERVER 0x1
33 const GUID IID_IActiveIMMApp = { 0x8c0e040, 0x62d1, 0x11d1, {0x93, 0x26, 0x00, 0x60, 0xb0, 0x67, 0xb8, 0x6e}};
34 const GUID CLSID_CActiveIMM = { 0x4955dd33, 0xb159, 0x11d0, {0x8f, 0xcf, 0x00, 0xaa, 0x00, 0x6b, 0xcc, 0x59}};
35 /*
36  class IUnknown
37  {
38  public:
39 
40  virtual long __stdcall QueryInterface(
41  const GUID & riid,
42  void **ppvObject) = 0;
43 
44  virtual ULONG __stdcall AddRef( void) = 0;
45 
46  virtual ULONG __stdcall Release( void) = 0;
47  };
48 
49 extern "C" __declspec(dllimport) long __stdcall CoInitialize(void far *pvReserved);
50 extern "C" __declspec(dllimport) long __stdcall CoCreateInstance(const GUID & rclsid, IUnknown * pUnkOuter,
51  DWORD dwClsContext, const GUID & riid, LPVOID FAR* ppv);
52 
53 */
54 
55  class IActiveIMMApp : public IUnknown
56  {
57  public:
58  virtual long __stdcall AssociateContext(
59  HWND hWnd,
60  HIMC hIME,
61  HIMC *phPrev) = 0;
62 
63  virtual long __stdcall ConfigureIMEA(
64  HKL hKL,
65  HWND hWnd,
66  DWORD dwMode,
67  void *pData) = 0;
68 
69  virtual long __stdcall ConfigureIMEW(
70  HKL hKL,
71  HWND hWnd,
72  DWORD dwMode,
73  void *pData) = 0;
74 
75  virtual long __stdcall CreateContext(
76  HIMC *phIMC) = 0;
77 
78  virtual long __stdcall DestroyContext(
79  HIMC hIME) = 0;
80 
81  virtual long __stdcall EnumRegisterWordA(
82  HKL hKL,
83  LPSTR szReading,
84  DWORD dwStyle,
85  LPSTR szRegister,
86  LPVOID pData,
87  void **pEnum) = 0;
88 
89  virtual long __stdcall EnumRegisterWordW(
90  HKL hKL,
91  LPWSTR szReading,
92  DWORD dwStyle,
93  LPWSTR szRegister,
94  LPVOID pData,
95  void **pEnum) = 0;
96 
97  virtual long __stdcall EscapeA(
98  HKL hKL,
99  HIMC hIMC,
100  UINT uEscape,
101  /* [out][in] */ LPVOID pData,
102  LRESULT *plResult) = 0;
103 
104  virtual long __stdcall EscapeW(
105  HKL hKL,
106  HIMC hIMC,
107  UINT uEscape,
108  /* [out][in] */ LPVOID pData,
109  LRESULT *plResult) = 0;
110 
111  virtual long __stdcall GetCandidateListA(
112  HIMC hIMC,
113  DWORD dwIndex,
114  UINT uBufLen,
115  void *pCandList,
116  UINT *puCopied) = 0;
117 
118  virtual long __stdcall GetCandidateListW(
119  HIMC hIMC,
120  DWORD dwIndex,
121  UINT uBufLen,
122  void *pCandList,
123  UINT *puCopied) = 0;
124 
125  virtual long __stdcall GetCandidateListCountA(
126  HIMC hIMC,
127  DWORD *pdwListSize,
128  DWORD *pdwBufLen) = 0;
129 
130  virtual long __stdcall GetCandidateListCountW(
131  HIMC hIMC,
132  DWORD *pdwListSize,
133  DWORD *pdwBufLen) = 0;
134 
135  virtual long __stdcall GetCandidateWindow(
136  HIMC hIMC,
137  DWORD dwIndex,
138  void *pCandidate) = 0;
139 
140  virtual long __stdcall GetCompositionFontA(
141  HIMC hIMC,
142  LOGFONTA *plf) = 0;
143 
144  virtual long __stdcall GetCompositionFontW(
145  HIMC hIMC,
146  LOGFONTW *plf) = 0;
147 
148  virtual long __stdcall GetCompositionStringA(
149  HIMC hIMC,
150  DWORD dwIndex,
151  DWORD dwBufLen,
152  LONG *plCopied,
153  LPVOID pBuf) = 0;
154 
155  virtual long __stdcall GetCompositionStringW(
156  HIMC hIMC,
157  DWORD dwIndex,
158  DWORD dwBufLen,
159  LONG *plCopied,
160  LPVOID pBuf) = 0;
161 
162  virtual long __stdcall GetCompositionWindow(
163  HIMC hIMC,
164  void *pCompForm) = 0;
165 
166  virtual long __stdcall GetContext(
167  HWND hWnd,
168  HIMC *phIMC) = 0;
169 
170  virtual long __stdcall GetConversionListA(
171  HKL hKL,
172  HIMC hIMC,
173  LPSTR pSrc,
174  UINT uBufLen,
175  UINT uFlag,
176  void *pDst,
177  UINT *puCopied) = 0;
178 
179  virtual long __stdcall GetConversionListW(
180  HKL hKL,
181  HIMC hIMC,
182  LPWSTR pSrc,
183  UINT uBufLen,
184  UINT uFlag,
185  void *pDst,
186  UINT *puCopied) = 0;
187 
188  virtual long __stdcall GetConversionStatus(
189  HIMC hIMC,
190  DWORD *pfdwConversion,
191  DWORD *pfdwSentence) = 0;
192 
193  virtual long __stdcall GetDefaultIMEWnd(
194  HWND hWnd,
195  HWND *phDefWnd) = 0;
196 
197  virtual long __stdcall GetDescriptionA(
198  HKL hKL,
199  UINT uBufLen,
200  LPSTR szDescription,
201  UINT *puCopied) = 0;
202 
203  virtual long __stdcall GetDescriptionW(
204  HKL hKL,
205  UINT uBufLen,
206  LPWSTR szDescription,
207  UINT *puCopied) = 0;
208 
209  virtual long __stdcall GetGuideLineA(
210  HIMC hIMC,
211  DWORD dwIndex,
212  DWORD dwBufLen,
213  LPSTR pBuf,
214  DWORD *pdwResult) = 0;
215 
216  virtual long __stdcall GetGuideLineW(
217  HIMC hIMC,
218  DWORD dwIndex,
219  DWORD dwBufLen,
220  LPWSTR pBuf,
221  DWORD *pdwResult) = 0;
222 
223  virtual long __stdcall GetIMEFileNameA(
224  HKL hKL,
225  UINT uBufLen,
226  LPSTR szFileName,
227  UINT *puCopied) = 0;
228 
229  virtual long __stdcall GetIMEFileNameW(
230  HKL hKL,
231  UINT uBufLen,
232  LPWSTR szFileName,
233  UINT *puCopied) = 0;
234 
235  virtual long __stdcall GetOpenStatus(
236  HIMC hIMC) = 0;
237 
238  virtual long __stdcall GetProperty(
239  HKL hKL,
240  DWORD fdwIndex,
241  DWORD *pdwProperty) = 0;
242 
243  virtual long __stdcall GetRegisterWordStyleA(
244  HKL hKL,
245  UINT nItem,
246  STYLEBUFA *pStyleBuf,
247  UINT *puCopied) = 0;
248 
249  virtual long __stdcall GetRegisterWordStyleW(
250  HKL hKL,
251  UINT nItem,
252  STYLEBUFW *pStyleBuf,
253  UINT *puCopied) = 0;
254 
255  virtual long __stdcall GetStatusWindowPos(
256  HIMC hIMC,
257  POINT *pptPos) = 0;
258 
259  virtual long __stdcall GetVirtualKey(
260  HWND hWnd,
261  UINT *puVirtualKey) = 0;
262 
263  virtual long __stdcall InstallIMEA(
264  LPSTR szIMEFileName,
265  LPSTR szLayoutText,
266  HKL *phKL) = 0;
267 
268  virtual long __stdcall InstallIMEW(
269  LPWSTR szIMEFileName,
270  LPWSTR szLayoutText,
271  HKL *phKL) = 0;
272 
273  virtual long __stdcall IsIME(
274  HKL hKL) = 0;
275 
276  virtual long __stdcall IsUIMessageA(
277  HWND hWndIME,
278  UINT msg,
279  WPARAM wParam,
280  LPARAM lParam) = 0;
281 
282  virtual long __stdcall IsUIMessageW(
283  HWND hWndIME,
284  UINT msg,
285  WPARAM wParam,
286  LPARAM lParam) = 0;
287 
288  virtual long __stdcall NotifyIME(
289  HIMC hIMC,
290  DWORD dwAction,
291  DWORD dwIndex,
292  DWORD dwValue) = 0;
293 
294  virtual long __stdcall RegisterWordA(
295  HKL hKL,
296  LPSTR szReading,
297  DWORD dwStyle,
298  LPSTR szRegister) = 0;
299 
300  virtual long __stdcall RegisterWordW(
301  HKL hKL,
302  LPWSTR szReading,
303  DWORD dwStyle,
304  LPWSTR szRegister) = 0;
305 
306  virtual long __stdcall ReleaseContext(
307  HWND hWnd,
308  HIMC hIMC) = 0;
309 
310  virtual long __stdcall SetCandidateWindow(
311  HIMC hIMC,
312  void *pCandidate) = 0;
313 
314  virtual long __stdcall SetCompositionFontA(
315  HIMC hIMC,
316  LOGFONTA *plf) = 0;
317 
318  virtual long __stdcall SetCompositionFontW(
319  HIMC hIMC,
320  LOGFONTW *plf) = 0;
321 
322  virtual long __stdcall SetCompositionStringA(
323  HIMC hIMC,
324  DWORD dwIndex,
325  LPVOID pComp,
326  DWORD dwCompLen,
327  LPVOID pRead,
328  DWORD dwReadLen) = 0;
329 
330  virtual long __stdcall SetCompositionStringW(
331  HIMC hIMC,
332  DWORD dwIndex,
333  LPVOID pComp,
334  DWORD dwCompLen,
335  LPVOID pRead,
336  DWORD dwReadLen) = 0;
337 
338  virtual long __stdcall SetCompositionWindow(
339  HIMC hIMC,
340  void *pCompForm) = 0;
341 
342  virtual long __stdcall SetConversionStatus(
343  HIMC hIMC,
344  DWORD fdwConversion,
345  DWORD fdwSentence) = 0;
346 
347  virtual long __stdcall SetOpenStatus(
348  HIMC hIMC,
349  BOOL fOpen) = 0;
350 
351  virtual long __stdcall SetStatusWindowPos(
352  HIMC hIMC,
353  POINT *pptPos) = 0;
354 
355  virtual long __stdcall SimulateHotKey(
356  HWND hWnd,
357  DWORD dwHotKeyID) = 0;
358 
359  virtual long __stdcall UnregisterWordA(
360  HKL hKL,
361  LPSTR szReading,
362  DWORD dwStyle,
363  LPSTR szUnregister) = 0;
364 
365  virtual long __stdcall UnregisterWordW(
366  HKL hKL,
367  LPWSTR szReading,
368  DWORD dwStyle,
369  LPWSTR szUnregister) = 0;
370 
371  virtual long __stdcall Activate(
372  BOOL fRestoreLayout) = 0;
373 
374  virtual long __stdcall Deactivate( void) = 0;
375 
376  virtual long __stdcall OnDefWindowProc(
377  HWND hWnd,
378  UINT Msg,
379  WPARAM wParam,
380  LPARAM lParam,
381  LRESULT *plResult) = 0;
382 
383  virtual long __stdcall FilterClientWindows(
384  ATOM *aaClassList,
385  UINT uSize) = 0;
386 
387  virtual long __stdcall GetCodePageA(
388  HKL hKL,
389  UINT *uCodePage) = 0;
390 
391  virtual long __stdcall GetLangId(
392  HKL hKL,
393  WORD *plid) = 0;
394 
395  virtual long __stdcall AssociateContextEx(
396  HWND hWnd,
397  HIMC hIMC,
398  DWORD dwFlags) = 0;
399 
400  virtual long __stdcall DisableIME(
401  DWORD idThread) = 0;
402 
403  virtual long __stdcall GetImeMenuItemsA(
404  HIMC hIMC,
405  DWORD dwFlags,
406  DWORD dwType,
407  void *pImeParentMenu,
408  void *pImeMenu,
409  DWORD dwSize,
410  DWORD *pdwResult) = 0;
411 
412  virtual long __stdcall GetImeMenuItemsW(
413  HIMC hIMC,
414  DWORD dwFlags,
415  DWORD dwType,
416  void *pImeParentMenu,
417  void *pImeMenu,
418  DWORD dwSize,
419  DWORD *pdwResult) = 0;
420 
421  virtual long __stdcall EnumInputContext(
422  DWORD idThread,
423  void **ppEnum) = 0;
424 
425  };
426 
427 #endif
428 
429 //
430 // End of "$Id: aimm.h 7913 2010-11-29 18:18:27Z greg.ercolano $".
431 //