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>")
37 #define LF_FACESIZE
32
52 BYTE lfPitchAndFamily
;
53 CHAR lfFaceName
[LF_FACESIZE
];
69 BYTE lfPitchAndFamily
;
70 WCHAR lfFaceName
[LF_FACESIZE
];
99 #define STYLE_DESCRIPTION_SIZE
32
103 CHAR szDescription
[STYLE_DESCRIPTION_SIZE
];
108 WCHAR szDescription
[STYLE_DESCRIPTION_SIZE
];
113 #define IMEMENUITEM_STRING_SIZE
80
121 HBITMAP hbmpUnchecked
;
123 CHAR szString
[IMEMENUITEM_STRING_SIZE
];
133 HBITMAP hbmpUnchecked
;
135 WCHAR szString
[IMEMENUITEM_STRING_SIZE
];
143 uuid(08c03412
-f96b
-11d0
-a475
-00aa006bcc59
),
144 pointer_default(unique)
146 interface IEnumRegisterWordA
: IUnknown
149 [out] IEnumRegisterWordA
**ppEnum
);
153 [out] REGISTERWORDA
*rgRegisterword
,
154 [out] ULONG
*pcFetched
);
164 uuid(4955dd31
-b159
-11d0
-8fcf
-00aa006bcc59
),
165 pointer_default(unique)
167 interface IEnumRegisterWordW
: IUnknown
170 [out] IEnumRegisterWordW
**ppEnum
);
174 [out] REGISTERWORDW
*rgRegisterword
,
175 [out] ULONG
*pcFetched
);
185 uuid(09b5eab0
-f997
-11d1
-93d4
-0060b067b86e
),
186 pointer_default(unique),
189 interface IEnumInputContext
: IUnknown
192 [out] IEnumInputContext
**ppEnum
);
196 [out] HIMC
*rgInputContext
,
197 [out] ULONG
*pcFetched
);
207 uuid(08c0e040
-62d1
-11d1
-9326-0060b067b86e
),
208 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
);
583 uuid(b5cf2cfa
-8aeb
-11d1
-9364-0060b067b86e
),
584 pointer_default(unique)
586 interface IActiveIMMMessagePumpOwner
: IUnknown
590 HRESULT OnTranslateMessage
([in] const MSG
*msg
);
591 HRESULT Pause
([out] DWORD
*cookie
);
592 HRESULT Resume
([in] DWORD cookie
);
596 uuid(4955dd33
-b159
-11d0
-8fcf
-00aa006bcc59
)
600 [default] interface IActiveIMMApp
;
601 /* interface IActiveIMMIME; */
602 /* interface IActiveIMMRegistrar; */
603 interface IActiveIMMMessagePumpOwner
;