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
21 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)
188 interface IEnumInputContext
: IUnknown
191 [out] IEnumInputContext
**ppEnum
);
195 [out] HIMC
*rgInputContext
,
196 [out] ULONG
*pcFetched
);
206 uuid(08c0e040
-62d1
-11d1
-9326-0060b067b86e
),
207 pointer_default(unique)
209 interface IActiveIMMApp
: IUnknown
211 HRESULT AssociateContext
(
216 HRESULT ConfigureIMEA
(
220 [in] REGISTERWORDA
*pData
);
222 HRESULT ConfigureIMEW
(
226 [in] REGISTERWORDW
*pData
);
228 HRESULT CreateContext
(
231 HRESULT DestroyContext
(
234 HRESULT EnumRegisterWordA
(
236 [in] LPSTR szReading
,
238 [in] LPSTR szRegister
,
240 [out] IEnumRegisterWordA
**pEnum
);
242 HRESULT EnumRegisterWordW
(
244 [in] LPWSTR szReading
,
246 [in] LPWSTR szRegister
,
248 [out] IEnumRegisterWordW
**pEnum
);
254 [in, out] LPVOID pData
,
255 [out] LRESULT
*plResult
);
261 [in, out] LPVOID pData
,
262 [out] LRESULT
*plResult
);
264 HRESULT GetCandidateListA
(
268 [out] CANDIDATELIST
*pCandList
,
269 [out] UINT
*puCopied
);
271 HRESULT GetCandidateListW
(
275 [out] CANDIDATELIST
*pCandList
,
276 [out] UINT
*puCopied
);
278 HRESULT GetCandidateListCountA
(
280 [out] DWORD
*pdwListSize
,
281 [out] DWORD
*pdwBufLen
);
283 HRESULT GetCandidateListCountW
(
285 [out] DWORD
*pdwListSize
,
286 [out] DWORD
*pdwBufLen
);
288 HRESULT GetCandidateWindow
(
291 [out] CANDIDATEFORM
*pCandidate
);
293 HRESULT GetCompositionFontA
(
295 [out] LOGFONTA
*plf
);
297 HRESULT GetCompositionFontW
(
299 [out] LOGFONTW
*plf
);
301 HRESULT GetCompositionStringA
(
305 [out] LONG *plCopied
,
308 HRESULT GetCompositionStringW
(
312 [out] LONG *plCopied
,
315 HRESULT GetCompositionWindow
(
317 [out] COMPOSITIONFORM
*pCompForm
);
323 HRESULT GetConversionListA
(
329 [out] CANDIDATELIST
*pDst
,
330 [out] UINT
*puCopied
);
332 HRESULT GetConversionListW
(
338 [out] CANDIDATELIST
*pDst
,
339 [out] UINT
*puCopied
);
341 HRESULT GetConversionStatus
(
343 [out] DWORD
*pfdwConversion
,
344 [out] DWORD
*pfdwSentence
);
346 HRESULT GetDefaultIMEWnd
(
348 [out] HWND
*phDefWnd
);
350 HRESULT GetDescriptionA
(
353 [out] LPSTR szDescription
,
354 [out] UINT
*puCopied
);
356 HRESULT GetDescriptionW
(
359 [out] LPWSTR szDescription
,
360 [out] UINT
*puCopied
);
362 HRESULT GetGuideLineA
(
367 [out] DWORD
*pdwResult
);
369 HRESULT GetGuideLineW
(
374 [out] DWORD
*pdwResult
);
376 HRESULT GetIMEFileNameA
(
379 [out] LPSTR szFileName
,
380 [out] UINT
*puCopied
);
382 HRESULT GetIMEFileNameW
(
385 [out] LPWSTR szFileName
,
386 [out] UINT
*puCopied
);
388 HRESULT GetOpenStatus
(
394 [out] DWORD
*pdwProperty
);
396 HRESULT GetRegisterWordStyleA
(
399 [out] STYLEBUFA
*pStyleBuf
,
400 [out] UINT
*puCopied
);
402 HRESULT GetRegisterWordStyleW
(
405 [out] STYLEBUFW
*pStyleBuf
,
406 [out] UINT
*puCopied
);
408 HRESULT GetStatusWindowPos
(
410 [out] POINT
*pptPos
);
412 HRESULT GetVirtualKey
(
414 [out] UINT
*puVirtualKey
);
417 [in] LPSTR szIMEFileName
,
418 [in] LPSTR szLayoutText
,
422 [in] LPWSTR szIMEFileName
,
423 [in] LPWSTR szLayoutText
,
429 HRESULT IsUIMessageA
(
435 HRESULT IsUIMessageW
(
447 HRESULT RegisterWordA
(
449 [in] LPSTR szReading
,
451 [in] LPSTR szRegister
);
453 HRESULT RegisterWordW
(
455 [in] LPWSTR szReading
,
457 [in] LPWSTR szRegister
);
459 HRESULT ReleaseContext
(
463 HRESULT SetCandidateWindow
(
465 [in] CANDIDATEFORM
*pCandidate
);
467 HRESULT SetCompositionFontA
(
471 HRESULT SetCompositionFontW
(
475 HRESULT SetCompositionStringA
(
479 [in] DWORD dwCompLen
,
481 [in] DWORD dwReadLen
);
483 HRESULT SetCompositionStringW
(
487 [in] DWORD dwCompLen
,
489 [in] DWORD dwReadLen
);
491 HRESULT SetCompositionWindow
(
493 [in] COMPOSITIONFORM
*pCompForm
);
495 HRESULT SetConversionStatus
(
497 [in] DWORD fdwConversion
,
498 [in] DWORD fdwSentence
);
500 HRESULT SetOpenStatus
(
504 HRESULT SetStatusWindowPos
(
508 HRESULT SimulateHotKey
(
510 [in] DWORD dwHotKeyID
);
512 HRESULT UnregisterWordA
(
514 [in] LPSTR szReading
,
516 [in] LPSTR szUnregister
);
518 HRESULT UnregisterWordW
(
520 [in] LPWSTR szReading
,
522 [in] LPWSTR szUnregister
);
525 [in] BOOL fRestoreLayout
);
527 HRESULT Deactivate
();
529 HRESULT OnDefWindowProc
(
534 [out] LRESULT
*plResult
);
536 HRESULT FilterClientWindows
(
537 [in] ATOM
*aaClassList
,
540 HRESULT GetCodePageA
(
542 [out] UINT
*uCodePage
);
548 HRESULT AssociateContextEx
(
554 [in] DWORD idThread
);
556 HRESULT GetImeMenuItemsA
(
560 [in] IMEMENUITEMINFOA
*pImeParentMenu
,
561 [out] IMEMENUITEMINFOA
*pImeMenu
,
563 [out] DWORD
*pdwResult
);
565 HRESULT GetImeMenuItemsW
(
569 [in] IMEMENUITEMINFOW
*pImeParentMenu
,
570 [out] IMEMENUITEMINFOW
*pImeMenu
,
572 [out] DWORD
*pdwResult
);
574 HRESULT EnumInputContext
(
576 [out] IEnumInputContext
**ppEnum
);
580 uuid(4955dd33
-b159
-11d0
-8fcf
-00aa006bcc59
)
584 [default] interface IActiveIMMApp
;
585 /* interface IActiveIMMIME; */
586 /* interface IActiveIMMRegistrar; */
587 /* interface IActiveIMMMessagePumpOwner; */