2 * Copyright 2007 Jacek Caban for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
23 cpp_quote
("#include <imm.h>")
39 #define LF_FACESIZE
32
54 BYTE lfPitchAndFamily
;
55 CHAR lfFaceName
[LF_FACESIZE
];
71 BYTE lfPitchAndFamily
;
72 WCHAR lfFaceName
[LF_FACESIZE
];
101 #define STYLE_DESCRIPTION_SIZE
32
105 CHAR szDescription
[STYLE_DESCRIPTION_SIZE
];
110 WCHAR szDescription
[STYLE_DESCRIPTION_SIZE
];
115 #define IMEMENUITEM_STRING_SIZE
80
123 HBITMAP hbmpUnchecked
;
125 CHAR szString
[IMEMENUITEM_STRING_SIZE
];
135 HBITMAP hbmpUnchecked
;
137 WCHAR szString
[IMEMENUITEM_STRING_SIZE
];
145 uuid(08c03412
-f96b
-11d0
-a475
-00aa006bcc59
),
146 pointer_default(unique)
148 interface IEnumRegisterWordA
: IUnknown
151 [out] IEnumRegisterWordA
**ppEnum
);
155 [out] REGISTERWORDA
*rgRegisterword
,
156 [out] ULONG
*pcFetched
);
166 uuid(4955dd31
-b159
-11d0
-8fcf
-00aa006bcc59
),
167 pointer_default(unique)
169 interface IEnumRegisterWordW
: IUnknown
172 [out] IEnumRegisterWordW
**ppEnum
);
176 [out] REGISTERWORDW
*rgRegisterword
,
177 [out] ULONG
*pcFetched
);
187 uuid(09b5eab0
-f997
-11d1
-93d4
-0060b067b86e
),
188 pointer_default(unique)
190 interface IEnumInputContext
: IUnknown
193 [out] IEnumInputContext
**ppEnum
);
197 [out] HIMC
*rgInputContext
,
198 [out] ULONG
*pcFetched
);
208 uuid(08c0e040
-62d1
-11d1
-9326-0060b067b86e
),
209 pointer_default(unique)
211 interface IActiveIMMApp
: IUnknown
213 HRESULT AssociateContext
(
218 HRESULT ConfigureIMEA
(
222 [in] REGISTERWORDA
*pData
);
224 HRESULT ConfigureIMEW
(
228 [in] REGISTERWORDW
*pData
);
230 HRESULT CreateContext
(
233 HRESULT DestroyContext
(
236 HRESULT EnumRegisterWordA
(
238 [in] LPSTR szReading
,
240 [in] LPSTR szRegister
,
242 [out] IEnumRegisterWordA
**pEnum
);
244 HRESULT EnumRegisterWordW
(
246 [in] LPWSTR szReading
,
248 [in] LPWSTR szRegister
,
250 [out] IEnumRegisterWordW
**pEnum
);
256 [in, out] LPVOID pData
,
257 [out] LRESULT
*plResult
);
263 [in, out] LPVOID pData
,
264 [out] LRESULT
*plResult
);
266 HRESULT GetCandidateListA
(
270 [out] CANDIDATELIST
*pCandList
,
271 [out] UINT
*puCopied
);
273 HRESULT GetCandidateListW
(
277 [out] CANDIDATELIST
*pCandList
,
278 [out] UINT
*puCopied
);
280 HRESULT GetCandidateListCountA
(
282 [out] DWORD
*pdwListSize
,
283 [out] DWORD
*pdwBufLen
);
285 HRESULT GetCandidateListCountW
(
287 [out] DWORD
*pdwListSize
,
288 [out] DWORD
*pdwBufLen
);
290 HRESULT GetCandidateWindow
(
293 [out] CANDIDATEFORM
*pCandidate
);
295 HRESULT GetCompositionFontA
(
297 [out] LOGFONTA
*plf
);
299 HRESULT GetCompositionFontW
(
301 [out] LOGFONTW
*plf
);
303 HRESULT GetCompositionStringA
(
307 [out] LONG *plCopied
,
310 HRESULT GetCompositionStringW
(
314 [out] LONG *plCopied
,
317 HRESULT GetCompositionWindow
(
319 [out] COMPOSITIONFORM
*pCompForm
);
325 HRESULT GetConversionListA
(
331 [out] CANDIDATELIST
*pDst
,
332 [out] UINT
*puCopied
);
334 HRESULT GetConversionListW
(
340 [out] CANDIDATELIST
*pDst
,
341 [out] UINT
*puCopied
);
343 HRESULT GetConversionStatus
(
345 [out] DWORD
*pfdwConversion
,
346 [out] DWORD
*pfdwSentence
);
348 HRESULT GetDefaultIMEWnd
(
350 [out] HWND
*phDefWnd
);
352 HRESULT GetDescriptionA
(
355 [out] LPSTR szDescription
,
356 [out] UINT
*puCopied
);
358 HRESULT GetDescriptionW
(
361 [out] LPWSTR szDescription
,
362 [out] UINT
*puCopied
);
364 HRESULT GetGuideLineA
(
369 [out] DWORD
*pdwResult
);
371 HRESULT GetGuideLineW
(
376 [out] DWORD
*pdwResult
);
378 HRESULT GetIMEFileNameA
(
381 [out] LPSTR szFileName
,
382 [out] UINT
*puCopied
);
384 HRESULT GetIMEFileNameW
(
387 [out] LPWSTR szFileName
,
388 [out] UINT
*puCopied
);
390 HRESULT GetOpenStatus
(
396 [out] DWORD
*pdwProperty
);
398 HRESULT GetRegisterWordStyleA
(
401 [out] STYLEBUFA
*pStyleBuf
,
402 [out] UINT
*puCopied
);
404 HRESULT GetRegisterWordStyleW
(
407 [out] STYLEBUFW
*pStyleBuf
,
408 [out] UINT
*puCopied
);
410 HRESULT GetStatusWindowPos
(
412 [out] POINT
*pptPos
);
414 HRESULT GetVirtualKey
(
416 [out] UINT
*puVirtualKey
);
419 [in] LPSTR szIMEFileName
,
420 [in] LPSTR szLayoutText
,
424 [in] LPWSTR szIMEFileName
,
425 [in] LPWSTR szLayoutText
,
431 HRESULT IsUIMessageA
(
437 HRESULT IsUIMessageW
(
449 HRESULT RegisterWordA
(
451 [in] LPSTR szReading
,
453 [in] LPSTR szRegister
);
455 HRESULT RegisterWordW
(
457 [in] LPWSTR szReading
,
459 [in] LPWSTR szRegister
);
461 HRESULT ReleaseContext
(
465 HRESULT SetCandidateWindow
(
467 [in] CANDIDATEFORM
*pCandidate
);
469 HRESULT SetCompositionFontA
(
473 HRESULT SetCompositionFontW
(
477 HRESULT SetCompositionStringA
(
481 [in] DWORD dwCompLen
,
483 [in] DWORD dwReadLen
);
485 HRESULT SetCompositionStringW
(
489 [in] DWORD dwCompLen
,
491 [in] DWORD dwReadLen
);
493 HRESULT SetCompositionWindow
(
495 [in] COMPOSITIONFORM
*pCompForm
);
497 HRESULT SetConversionStatus
(
499 [in] DWORD fdwConversion
,
500 [in] DWORD fdwSentence
);
502 HRESULT SetOpenStatus
(
506 HRESULT SetStatusWindowPos
(
510 HRESULT SimulateHotKey
(
512 [in] DWORD dwHotKeyID
);
514 HRESULT UnregisterWordA
(
516 [in] LPSTR szReading
,
518 [in] LPSTR szUnregister
);
520 HRESULT UnregisterWordW
(
522 [in] LPWSTR szReading
,
524 [in] LPWSTR szUnregister
);
527 [in] BOOL fRestoreLayout
);
529 HRESULT Deactivate
();
531 HRESULT OnDefWindowProc
(
536 [out] LRESULT
*plResult
);
538 HRESULT FilterClientWindows
(
539 [in] ATOM
*aaClassList
,
542 HRESULT GetCodePageA
(
544 [out] UINT
*uCodePage
);
550 HRESULT AssociateContextEx
(
556 [in] DWORD idThread
);
558 HRESULT GetImeMenuItemsA
(
562 [in] IMEMENUITEMINFOA
*pImeParentMenu
,
563 [out] IMEMENUITEMINFOA
*pImeMenu
,
565 [out] DWORD
*pdwResult
);
567 HRESULT GetImeMenuItemsW
(
571 [in] IMEMENUITEMINFOW
*pImeParentMenu
,
572 [out] IMEMENUITEMINFOW
*pImeMenu
,
574 [out] DWORD
*pdwResult
);
576 HRESULT EnumInputContext
(
578 [out] IEnumInputContext
**ppEnum
);
582 uuid(4955dd33
-b159
-11d0
-8fcf
-00aa006bcc59
)
586 [default] interface IActiveIMMApp
;
587 /* interface IActiveIMMIME; */
588 /* interface IActiveIMMRegistrar; */
589 /* interface IActiveIMMMessagePumpOwner; */