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),
191 interface IEnumInputContext
: IUnknown
194 [out] IEnumInputContext
**ppEnum
);
198 [out] HIMC
*rgInputContext
,
199 [out] ULONG
*pcFetched
);
209 uuid(08c0e040
-62d1
-11d1
-9326-0060b067b86e
),
210 pointer_default(unique),
213 interface IActiveIMMApp
: IUnknown
215 HRESULT AssociateContext
(
220 HRESULT ConfigureIMEA
(
224 [in] REGISTERWORDA
*pData
);
226 HRESULT ConfigureIMEW
(
230 [in] REGISTERWORDW
*pData
);
232 HRESULT CreateContext
(
235 HRESULT DestroyContext
(
238 HRESULT EnumRegisterWordA
(
240 [in] LPSTR szReading
,
242 [in] LPSTR szRegister
,
244 [out] IEnumRegisterWordA
**pEnum
);
246 HRESULT EnumRegisterWordW
(
248 [in] LPWSTR szReading
,
250 [in] LPWSTR szRegister
,
252 [out] IEnumRegisterWordW
**pEnum
);
258 [in, out] LPVOID pData
,
259 [out] LRESULT
*plResult
);
265 [in, out] LPVOID pData
,
266 [out] LRESULT
*plResult
);
268 HRESULT GetCandidateListA
(
272 [out] CANDIDATELIST
*pCandList
,
273 [out] UINT
*puCopied
);
275 HRESULT GetCandidateListW
(
279 [out] CANDIDATELIST
*pCandList
,
280 [out] UINT
*puCopied
);
282 HRESULT GetCandidateListCountA
(
284 [out] DWORD
*pdwListSize
,
285 [out] DWORD
*pdwBufLen
);
287 HRESULT GetCandidateListCountW
(
289 [out] DWORD
*pdwListSize
,
290 [out] DWORD
*pdwBufLen
);
292 HRESULT GetCandidateWindow
(
295 [out] CANDIDATEFORM
*pCandidate
);
297 HRESULT GetCompositionFontA
(
299 [out] LOGFONTA
*plf
);
301 HRESULT GetCompositionFontW
(
303 [out] LOGFONTW
*plf
);
305 HRESULT GetCompositionStringA
(
309 [out] LONG *plCopied
,
312 HRESULT GetCompositionStringW
(
316 [out] LONG *plCopied
,
319 HRESULT GetCompositionWindow
(
321 [out] COMPOSITIONFORM
*pCompForm
);
327 HRESULT GetConversionListA
(
333 [out] CANDIDATELIST
*pDst
,
334 [out] UINT
*puCopied
);
336 HRESULT GetConversionListW
(
342 [out] CANDIDATELIST
*pDst
,
343 [out] UINT
*puCopied
);
345 HRESULT GetConversionStatus
(
347 [out] DWORD
*pfdwConversion
,
348 [out] DWORD
*pfdwSentence
);
350 HRESULT GetDefaultIMEWnd
(
352 [out] HWND
*phDefWnd
);
354 HRESULT GetDescriptionA
(
357 [out] LPSTR szDescription
,
358 [out] UINT
*puCopied
);
360 HRESULT GetDescriptionW
(
363 [out] LPWSTR szDescription
,
364 [out] UINT
*puCopied
);
366 HRESULT GetGuideLineA
(
371 [out] DWORD
*pdwResult
);
373 HRESULT GetGuideLineW
(
378 [out] DWORD
*pdwResult
);
380 HRESULT GetIMEFileNameA
(
383 [out] LPSTR szFileName
,
384 [out] UINT
*puCopied
);
386 HRESULT GetIMEFileNameW
(
389 [out] LPWSTR szFileName
,
390 [out] UINT
*puCopied
);
392 HRESULT GetOpenStatus
(
398 [out] DWORD
*pdwProperty
);
400 HRESULT GetRegisterWordStyleA
(
403 [out] STYLEBUFA
*pStyleBuf
,
404 [out] UINT
*puCopied
);
406 HRESULT GetRegisterWordStyleW
(
409 [out] STYLEBUFW
*pStyleBuf
,
410 [out] UINT
*puCopied
);
412 HRESULT GetStatusWindowPos
(
414 [out] POINT
*pptPos
);
416 HRESULT GetVirtualKey
(
418 [out] UINT
*puVirtualKey
);
421 [in] LPSTR szIMEFileName
,
422 [in] LPSTR szLayoutText
,
426 [in] LPWSTR szIMEFileName
,
427 [in] LPWSTR szLayoutText
,
433 HRESULT IsUIMessageA
(
439 HRESULT IsUIMessageW
(
451 HRESULT RegisterWordA
(
453 [in] LPSTR szReading
,
455 [in] LPSTR szRegister
);
457 HRESULT RegisterWordW
(
459 [in] LPWSTR szReading
,
461 [in] LPWSTR szRegister
);
463 HRESULT ReleaseContext
(
467 HRESULT SetCandidateWindow
(
469 [in] CANDIDATEFORM
*pCandidate
);
471 HRESULT SetCompositionFontA
(
475 HRESULT SetCompositionFontW
(
479 HRESULT SetCompositionStringA
(
483 [in] DWORD dwCompLen
,
485 [in] DWORD dwReadLen
);
487 HRESULT SetCompositionStringW
(
491 [in] DWORD dwCompLen
,
493 [in] DWORD dwReadLen
);
495 HRESULT SetCompositionWindow
(
497 [in] COMPOSITIONFORM
*pCompForm
);
499 HRESULT SetConversionStatus
(
501 [in] DWORD fdwConversion
,
502 [in] DWORD fdwSentence
);
504 HRESULT SetOpenStatus
(
508 HRESULT SetStatusWindowPos
(
512 HRESULT SimulateHotKey
(
514 [in] DWORD dwHotKeyID
);
516 HRESULT UnregisterWordA
(
518 [in] LPSTR szReading
,
520 [in] LPSTR szUnregister
);
522 HRESULT UnregisterWordW
(
524 [in] LPWSTR szReading
,
526 [in] LPWSTR szUnregister
);
529 [in] BOOL fRestoreLayout
);
531 HRESULT Deactivate
();
533 HRESULT OnDefWindowProc
(
538 [out] LRESULT
*plResult
);
540 HRESULT FilterClientWindows
(
541 [in] ATOM
*aaClassList
,
544 HRESULT GetCodePageA
(
546 [out] UINT
*uCodePage
);
552 HRESULT AssociateContextEx
(
558 [in] DWORD idThread
);
560 HRESULT GetImeMenuItemsA
(
564 [in] IMEMENUITEMINFOA
*pImeParentMenu
,
565 [out] IMEMENUITEMINFOA
*pImeMenu
,
567 [out] DWORD
*pdwResult
);
569 HRESULT GetImeMenuItemsW
(
573 [in] IMEMENUITEMINFOW
*pImeParentMenu
,
574 [out] IMEMENUITEMINFOW
*pImeMenu
,
576 [out] DWORD
*pdwResult
);
578 HRESULT EnumInputContext
(
580 [out] IEnumInputContext
**ppEnum
);
584 uuid(4955dd33
-b159
-11d0
-8fcf
-00aa006bcc59
)
588 [default] interface IActiveIMMApp
;
589 /* interface IActiveIMMIME; */
590 /* interface IActiveIMMRegistrar; */
591 /* interface IActiveIMMMessagePumpOwner; */