|
|
//+------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1992-1997. // // File: aimmp.idl // // Contents: ActiveIMM private interface definitions // // //--------------------------------------------------------------------------
cpp_quote("//=--------------------------------------------------------------------------=") cpp_quote("// aimmp.h") cpp_quote("//=--------------------------------------------------------------------------=") cpp_quote("// (C) Copyright 1995-1997 Microsoft Corporation. All Rights Reserved.") cpp_quote("//") cpp_quote("// THIS CODE AND INFORMATION IS PROVIDED \"AS IS\" WITHOUT WARRANTY OF") cpp_quote("// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO") cpp_quote("// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A") cpp_quote("// PARTICULAR PURPOSE.") cpp_quote("//=--------------------------------------------------------------------------=") cpp_quote("") cpp_quote("#pragma comment(lib,\"uuid.lib\")") cpp_quote("") cpp_quote("//--------------------------------------------------------------------------") cpp_quote("// IActiveIMM Private (internal) Interfaces.") cpp_quote("")
import "oaidl.idl";
#ifndef DO_NO_IMPORTS import "unknwn.idl"; #endif
// // ACTIVE IME specific defines below //
#ifndef DO_NO_IMPORTS import "aimm12.idl"; import "msctf.idl"; #endif
cpp_quote("#include <windows.h>") cpp_quote("") cpp_quote("#ifdef __cplusplus") cpp_quote("extern \"C\" {") cpp_quote("#endif /* __cplusplus */") cpp_quote("") // // flags for AssociateFocus // // set focus flag cpp_quote("#define AIMMP_AFF_SETFOCUS 0x00000001") // // set NULL dim so no Tip will run. // cpp_quote("#define AIMMP_AFF_SETNULLDIM 0x00000002")
// // flags for SelectEx // cpp_quote("#define AIMMP_SE_SELECT 0x00000001") cpp_quote("#define AIMMP_SE_ISPRESENT 0x00000002")
cpp_quote("#ifdef __cplusplus") cpp_quote("}") cpp_quote("#endif /* __cplusplus */")
[ local, object, uuid(08C03411-F96B-11d0-A475-00AA006BCC59), pointer_default(unique) ] interface IActiveIMMIME_Private : IUnknown { HRESULT AssociateContext([in] HWND hWnd, [in] HIMC hIME, [out] HIMC *phPrev); HRESULT ConfigureIMEA([in] HKL hKL, [in] HWND hWnd, [in] DWORD dwMode, [in] REGISTERWORDA *pData); HRESULT ConfigureIMEW([in] HKL hKL, [in] HWND hWnd, [in] DWORD dwMode, [in] REGISTERWORDW *pData); HRESULT CreateContext([out] HIMC *phIMC); HRESULT DestroyContext([in] HIMC hIME); HRESULT EnumRegisterWordA([in] HKL hKL, [in] LPSTR szReading, [in] DWORD dwStyle, [in] LPSTR szRegister, [in] LPVOID pData, [out] IEnumRegisterWordA **pEnum); HRESULT EnumRegisterWordW([in] HKL hKL, [in] LPWSTR szReading, [in] DWORD dwStyle, [in] LPWSTR szRegister, [in] LPVOID pData, [out] IEnumRegisterWordW **pEnum); HRESULT EscapeA([in] HKL hKL, [in] HIMC hIMC, [in] UINT uEscape, [in, out] LPVOID pData, [out] LRESULT *plResult); HRESULT EscapeW([in] HKL hKL, [in] HIMC hIMC, [in] UINT uEscape, [in, out] LPVOID pData, [out] LRESULT *plResult); HRESULT GetCandidateListA([in] HIMC hIMC, [in] DWORD dwIndex, [in] UINT uBufLen, [out] CANDIDATELIST *pCandList, [out] UINT *puCopied); HRESULT GetCandidateListW([in] HIMC hIMC, [in] DWORD dwIndex, [in] UINT uBufLen, [out] CANDIDATELIST *pCandList, [out] UINT *puCopied); HRESULT GetCandidateListCountA([in] HIMC hIMC, [out] DWORD *pdwListSize, [out] DWORD *pdwBufLen); HRESULT GetCandidateListCountW([in] HIMC hIMC, [out] DWORD *pdwListSize, [out] DWORD *pdwBufLen); HRESULT GetCandidateWindow([in] HIMC hIMC, [in] DWORD dwIndex, [out] CANDIDATEFORM *pCandidate); HRESULT GetCompositionFontA([in] HIMC hIMC, [out] LOGFONTA *plf); HRESULT GetCompositionFontW([in] HIMC hIMC, [out] LOGFONTW *plf); HRESULT GetCompositionStringA([in] HIMC hIMC, [in] DWORD dwIndex, [in] DWORD dwBufLen, [out] LONG *plCopied, [out] LPVOID pBuf); HRESULT GetCompositionStringW([in] HIMC hIMC, [in] DWORD dwIndex, [in] DWORD dwBufLen, [out] LONG *plCopied, [out] LPVOID pBuf); HRESULT GetCompositionWindow([in] HIMC hIMC, [out] COMPOSITIONFORM *pCompForm); HRESULT GetContext([in] HWND hWnd, [out] HIMC *phIMC); HRESULT GetConversionListA([in] HKL hKL, [in] HIMC hIMC, [in] LPSTR pSrc, [in] UINT uBufLen, [in] UINT uFlag, [out] CANDIDATELIST *pDst, [out] UINT *puCopied); HRESULT GetConversionListW([in] HKL hKL, [in] HIMC hIMC, [in] LPWSTR pSrc, [in] UINT uBufLen, [in] UINT uFlag, [out] CANDIDATELIST *pDst, [out] UINT *puCopied); HRESULT GetConversionStatus([in] HIMC hIMC, [out] DWORD *pfdwConversion, [out] DWORD *pfdwSentence); HRESULT GetDefaultIMEWnd([in] HWND hWnd, [out] HWND *phDefWnd); HRESULT GetDescriptionA([in] HKL hKL, [in] UINT uBufLen, [out] LPSTR szDescription, [out] UINT *puCopied); HRESULT GetDescriptionW([in] HKL hKL, [in] UINT uBufLen, [out] LPWSTR szDescription, [out] UINT *puCopied); HRESULT GetGuideLineA([in] HIMC hIMC, [in] DWORD dwIndex, [in] DWORD dwBufLen, [out] LPSTR pBuf, [out] DWORD *pdwResult); HRESULT GetGuideLineW([in] HIMC hIMC, [in] DWORD dwIndex, [in] DWORD dwBufLen, [out] LPWSTR pBuf, [out] DWORD *pdwResult); HRESULT GetIMEFileNameA([in] HKL hKL, [in] UINT uBufLen, [out] LPSTR szFileName, [out] UINT *puCopied); HRESULT GetIMEFileNameW([in] HKL hKL, [in] UINT uBufLen, [out] LPWSTR szFileName, [out] UINT *puCopied); HRESULT GetOpenStatus([in] HIMC hIMC); HRESULT GetProperty([in] HKL hKL, [in] DWORD fdwIndex, [out] DWORD *pdwProperty); HRESULT GetRegisterWordStyleA([in] HKL hKL, [in] UINT nItem, [out] STYLEBUFA *pStyleBuf, [out] UINT *puCopied); HRESULT GetRegisterWordStyleW([in] HKL hKL, [in] UINT nItem, [out] STYLEBUFW *pStyleBuf, [out] UINT *puCopied); HRESULT GetStatusWindowPos([in] HIMC hIMC, [out] POINT *pptPos); HRESULT GetVirtualKey([in] HWND hWnd, [out] UINT *puVirtualKey); HRESULT InstallIMEA([in] LPSTR szIMEFileName, [in] LPSTR szLayoutText, [out] HKL *phKL); HRESULT InstallIMEW([in] LPWSTR szIMEFileName, [in] LPWSTR szLayoutText, [out] HKL *phKL); HRESULT IsIME([in] HKL hKL); HRESULT IsUIMessageA([in] HWND hWndIME, [in] UINT msg, [in] WPARAM wParam, [in] LPARAM lParam); HRESULT IsUIMessageW([in] HWND hWndIME, [in] UINT msg, [in] WPARAM wParam, [in] LPARAM lParam); HRESULT NotifyIME([in] HIMC hIMC, [in] DWORD dwAction, [in] DWORD dwIndex, [in] DWORD dwValue); HRESULT RegisterWordA([in] HKL hKL, [in] LPSTR szReading, [in] DWORD dwStyle, [in] LPSTR szRegister); HRESULT RegisterWordW([in] HKL hKL, [in] LPWSTR szReading, [in] DWORD dwStyle, [in] LPWSTR szRegister); HRESULT ReleaseContext([in] HWND hWnd, [in] HIMC hIMC); HRESULT SetCandidateWindow([in] HIMC hIMC, [in] CANDIDATEFORM *pCandidate); HRESULT SetCompositionFontA([in] HIMC hIMC, [in] LOGFONTA *plf); HRESULT SetCompositionFontW([in] HIMC hIMC, [in] LOGFONTW *plf); HRESULT SetCompositionStringA([in] HIMC hIMC, [in] DWORD dwIndex, [in] LPVOID pComp, [in] DWORD dwCompLen, [in] LPVOID pRead, [in] DWORD dwReadLen); HRESULT SetCompositionStringW([in] HIMC hIMC, [in] DWORD dwIndex, [in] LPVOID pComp, [in] DWORD dwCompLen, [in] LPVOID pRead, [in] DWORD dwReadLen); HRESULT SetCompositionWindow([in] HIMC hIMC, [in] COMPOSITIONFORM *pCompForm); HRESULT SetConversionStatus([in] HIMC hIMC, [in] DWORD fdwConversion, [in] DWORD fdwSentence); HRESULT SetOpenStatus([in] HIMC hIMC, [in] BOOL fOpen); HRESULT SetStatusWindowPos([in] HIMC hIMC, [in] POINT *pptPos); HRESULT SimulateHotKey([in] HWND hWnd, [in] DWORD dwHotKeyID); HRESULT UnregisterWordA([in] HKL hKL, [in] LPSTR szReading, [in] DWORD dwStyle, [in] LPSTR szUnregister); HRESULT UnregisterWordW([in] HKL hKL, [in] LPWSTR szReading, [in] DWORD dwStyle, [in] LPWSTR szUnregister);
// ime helper methods HRESULT GenerateMessage([in] HIMC hIMC);
// HIMC and HIMCC management api's HRESULT LockIMC([in] HIMC hIMC, [out] INPUTCONTEXT **ppIMC); HRESULT UnlockIMC([in] HIMC hIMC); HRESULT GetIMCLockCount([in] HIMC hIMC, [out] DWORD *pdwLockCount); HRESULT CreateIMCC([in] DWORD dwSize, [out] HIMCC *phIMCC); HRESULT DestroyIMCC([in] HIMCC hIMCC); HRESULT LockIMCC([in] HIMCC hIMCC, [out] void **ppv); HRESULT UnlockIMCC([in] HIMCC hIMCC); HRESULT ReSizeIMCC([in] HIMCC hIMCC, [in] DWORD dwSize, [out] HIMCC *phIMCC); HRESULT GetIMCCSize([in] HIMCC hIMCC, [out] DWORD *pdwSize); HRESULT GetIMCCLockCount([in] HIMCC hIMCC, [out] DWORD *pdwLockCount);
// hot key manipulation api's HRESULT GetHotKey([in] DWORD dwHotKeyID, [out] UINT *puModifiers, [out] UINT *puVKey, [out] HKL *phKL); HRESULT SetHotKey([in] DWORD dwHotKeyID, [in] UINT uModifiers, [in] UINT uVKey, [in] HKL hKL);
// win98/nt5 apis HRESULT AssociateContextEx([in] HWND hWnd, [in] HIMC hIMC, [in] DWORD dwFlags); HRESULT DisableIME([in] DWORD idThread); HRESULT GetImeMenuItemsA([in] HIMC hIMC, [in] DWORD dwFlags, [in] DWORD dwType, [in] IMEMENUITEMINFOA *pImeParentMenu, [out] IMEMENUITEMINFOA *pImeMenu, [in] DWORD dwSize, [out] DWORD *pdwResult); HRESULT GetImeMenuItemsW([in] HIMC hIMC, [in] DWORD dwFlags, [in] DWORD dwType, [in] IMEMENUITEMINFOW *pImeParentMenu, [out] IMEMENUITEMINFOW *pImeMenu, [in] DWORD dwSize, [out] DWORD *pdwResult); HRESULT EnumInputContext([in] DWORD idThread, [out] IEnumInputContext **ppEnum); HRESULT RequestMessageA([in] HIMC hIMC, [in] WPARAM wParam, [in] LPARAM lParam, [out] LRESULT *plResult); HRESULT RequestMessageW([in] HIMC hIMC, [in] WPARAM wParam, [in] LPARAM lParam, [out] LRESULT *plResult);
HRESULT FilterClientWindowsEx([in] HWND hWnd, [in] BOOL fGuidMap); HRESULT FilterClientWindows([in] ATOM *aaClassList, [in] UINT uSize, [in] BOOL *aaGildMap); HRESULT GetGuidAtom([in] HIMC hImc, [in] BYTE bAttr, [out] TfGuidAtom *pGuidAtom); HRESULT UnfilterClientWindowsEx([in] HWND hWnd); HRESULT IsRealImePublic([out] BOOL *pfReal); };
[ local, object, uuid(5276cbe5-2130-4a60-bb76-8a5135448dec), pointer_default(unique) ] interface IActiveIME_Private : IUnknown { HRESULT ConnectIMM([in] IActiveIMMIME_Private *pActiveIMM); HRESULT UnconnectIMM(); HRESULT Inquire([in] DWORD dwSystemInfoFlags, [out] IMEINFO *pIMEInfo, [out] LPWSTR szWndClass, [out] DWORD *pdwPrivate); HRESULT ConversionList([in] HIMC hIMC, [in] LPWSTR szSource, [in] UINT uFlag, [in] UINT uBufLen, [out] CANDIDATELIST *pDest, [out] UINT *puCopied); HRESULT Configure([in] HKL hKL, [in] HWND hWnd, [in] DWORD dwMode, [in] REGISTERWORDW *pRegisterWord); HRESULT Destroy([in] UINT uReserved); HRESULT Escape([in] HIMC hIMC, [in] UINT uEscape, [in, out] void *pData, [out] LRESULT *plResult); HRESULT ProcessKey([in] HIMC hIMC, [in] UINT uVirKey, [in] DWORD lParam, [in] BYTE *pbKeyState); HRESULT Notify([in] HIMC hIMC, [in] DWORD dwAction, [in] DWORD dwIndex, [in] DWORD dwValue); HRESULT SelectEx([in] HIMC hIMC, [in] DWORD dwFlags, [in] BOOL bIsRealIme_SelKL, [in] BOOL bIsRealIme_UnSelKL); HRESULT UnSelectCheck([in] HIMC hIMC); HRESULT SetCompositionString([in] HIMC hIMC, [in] DWORD dwIndex, [in] void *pComp, [in] DWORD dwCompLen, [in] void *pRead, [in] DWORD dwReadLen); HRESULT ToAsciiEx([in] UINT uVirKey, [in] UINT uScanCode, [in] BYTE *pbKeyState, [in] UINT fuState, [in] HIMC hIMC, [out] DWORD *pdwTransBuf, [out] UINT *puSize); HRESULT RegisterWord([in] LPWSTR szReading, [in] DWORD dwStyle, [in] LPWSTR szString); HRESULT UnregisterWord([in] LPWSTR szReading, [in] DWORD dwStyle, [in] LPWSTR szString); HRESULT GetRegisterWordStyle([in] UINT nItem, [out] STYLEBUFW *pStyleBuf, [out] UINT *puBufSize); HRESULT EnumRegisterWord([in] LPWSTR szReading, [in] DWORD dwStyle, [in] LPWSTR szRegister, [in] LPVOID pData, [out] IEnumRegisterWordW **ppEnum); HRESULT GetCodePageA([out] UINT *uCodePage); HRESULT GetLangId([out] LANGID *plid); HRESULT AssociateFocus([in] HWND hwnd, [in] HIMC hIMC, [in] DWORD dwFlags); HRESULT SetThreadCompartmentValue([in] REFGUID rguid, [in] VARIANT *pvar); HRESULT GetThreadCompartmentValue([in] REFGUID rguid, [out] VARIANT *pvar); };
cpp_quote("DEFINE_GUID (GUID_PROP_MSIMTF_READONLY, 0xa48fa74e, 0xf767, 0x44e4, 0xbf, 0xbc, 0x16, 0x9e, 0x8b, 0x38, 0xff, 0x58);") cpp_quote("DEFINE_GUID (GUID_PROP_MSIMTF_TRACKCOMPOSITION, 0xb2c7f219, 0x68fb, 0x47d8, 0x98, 0x81, 0xaa, 0x68, 0x1d, 0x09, 0x44, 0xf0);") cpp_quote("DEFINE_GUID (GUID_PROP_MSIMTF_PREPARE_RECONVERT, 0x7a5ef1a, 0x3de1, 0x432d, 0x91, 0xe3, 0x2b, 0xcd, 0xb9, 0x11, 0x1a, 0x71);")
|