FLTK 1.3.2
aimm.h
00001 //
00002 // "$Id$"
00003 //
00004 // Standard dialog header file for the UTF-8 Fast Light Tool Kit (FLTK-UTF8).
00005 //
00006 // Copyright 2009-2010 by Bill Spitzak and others.
00007 //
00008 // This library is free software. Distribution and use rights are outlined in
00009 // the file "COPYING" which should have been included with this file.  If this
00010 // file is missing or damaged, see the license at:
00011 //
00012 //     http://www.fltk.org/COPYING.php
00013 //
00014 // Please report all bugs and problems on the following page:
00015 //
00016 //     http://www.fltk.org/str.php
00017 //
00018 
00019 #ifndef AIMM_H
00020 #  define AIMM_H
00021 //#  define HANDLE_PTR HANDLE* 
00022 //#  define DWORD_PTR DWORD*
00023 //#  define CLSCTX_INPROC_SERVER 0x1
00024 const GUID IID_IActiveIMMApp = { 0x8c0e040, 0x62d1, 0x11d1, {0x93, 0x26, 0x00, 0x60, 0xb0, 0x67, 0xb8, 0x6e}};
00025 const GUID CLSID_CActiveIMM = { 0x4955dd33, 0xb159, 0x11d0, {0x8f, 0xcf, 0x00, 0xaa, 0x00, 0x6b, 0xcc, 0x59}};
00026 /*
00027         class IUnknown
00028     {
00029     public:
00030         
00031         virtual long __stdcall QueryInterface( 
00032             const GUID & riid,
00033             void **ppvObject) = 0;
00034         
00035         virtual ULONG __stdcall AddRef( void) = 0;
00036         
00037         virtual ULONG __stdcall Release( void) = 0;
00038     };
00039 
00040 extern "C" __declspec(dllimport) long __stdcall CoInitialize(void far *pvReserved);
00041 extern "C" __declspec(dllimport) long __stdcall CoCreateInstance(const GUID & rclsid, IUnknown * pUnkOuter,
00042                     DWORD dwClsContext, const GUID & riid, LPVOID FAR* ppv);
00043 
00044 */
00045 
00046     class IActiveIMMApp : public IUnknown
00047     {
00048     public:
00049         virtual long __stdcall AssociateContext( 
00050              HWND hWnd,
00051              HIMC hIME,
00052              HIMC  *phPrev) = 0;
00053         
00054         virtual long __stdcall ConfigureIMEA( 
00055              HKL hKL,
00056              HWND hWnd,
00057              DWORD dwMode,
00058              void  *pData) = 0;
00059         
00060         virtual long __stdcall ConfigureIMEW( 
00061              HKL hKL,
00062              HWND hWnd,
00063              DWORD dwMode,
00064              void  *pData) = 0;
00065         
00066         virtual long __stdcall CreateContext( 
00067              HIMC  *phIMC) = 0;
00068         
00069         virtual long __stdcall DestroyContext( 
00070              HIMC hIME) = 0;
00071         
00072         virtual long __stdcall EnumRegisterWordA( 
00073              HKL hKL,
00074              LPSTR szReading,
00075              DWORD dwStyle,
00076              LPSTR szRegister,
00077              LPVOID pData,
00078              void  **pEnum) = 0;
00079         
00080         virtual long __stdcall EnumRegisterWordW( 
00081              HKL hKL,
00082              LPWSTR szReading,
00083              DWORD dwStyle,
00084              LPWSTR szRegister,
00085              LPVOID pData,
00086              void  **pEnum) = 0;
00087         
00088         virtual long __stdcall EscapeA( 
00089              HKL hKL,
00090              HIMC hIMC,
00091              UINT uEscape,
00092             /* [out][in] */ LPVOID pData,
00093              LRESULT  *plResult) = 0;
00094         
00095         virtual long __stdcall EscapeW( 
00096              HKL hKL,
00097              HIMC hIMC,
00098              UINT uEscape,
00099             /* [out][in] */ LPVOID pData,
00100              LRESULT  *plResult) = 0;
00101         
00102         virtual long __stdcall GetCandidateListA( 
00103              HIMC hIMC,
00104              DWORD dwIndex,
00105              UINT uBufLen,
00106              void  *pCandList,
00107              UINT  *puCopied) = 0;
00108         
00109         virtual long __stdcall GetCandidateListW( 
00110              HIMC hIMC,
00111              DWORD dwIndex,
00112              UINT uBufLen,
00113              void  *pCandList,
00114              UINT  *puCopied) = 0;
00115         
00116         virtual long __stdcall GetCandidateListCountA( 
00117              HIMC hIMC,
00118              DWORD  *pdwListSize,
00119              DWORD  *pdwBufLen) = 0;
00120         
00121         virtual long __stdcall GetCandidateListCountW( 
00122              HIMC hIMC,
00123              DWORD  *pdwListSize,
00124              DWORD  *pdwBufLen) = 0;
00125         
00126         virtual long __stdcall GetCandidateWindow( 
00127              HIMC hIMC,
00128              DWORD dwIndex,
00129              void  *pCandidate) = 0;
00130         
00131         virtual long __stdcall GetCompositionFontA( 
00132              HIMC hIMC,
00133              LOGFONTA  *plf) = 0;
00134         
00135         virtual long __stdcall GetCompositionFontW( 
00136              HIMC hIMC,
00137              LOGFONTW  *plf) = 0;
00138         
00139         virtual long __stdcall GetCompositionStringA( 
00140              HIMC hIMC,
00141              DWORD dwIndex,
00142              DWORD dwBufLen,
00143              LONG  *plCopied,
00144              LPVOID pBuf) = 0;
00145         
00146         virtual long __stdcall GetCompositionStringW( 
00147              HIMC hIMC,
00148              DWORD dwIndex,
00149              DWORD dwBufLen,
00150              LONG  *plCopied,
00151              LPVOID pBuf) = 0;
00152         
00153         virtual long __stdcall GetCompositionWindow( 
00154              HIMC hIMC,
00155              void  *pCompForm) = 0;
00156         
00157         virtual long __stdcall GetContext( 
00158              HWND hWnd,
00159              HIMC  *phIMC) = 0;
00160         
00161         virtual long __stdcall GetConversionListA( 
00162              HKL hKL,
00163              HIMC hIMC,
00164              LPSTR pSrc,
00165              UINT uBufLen,
00166              UINT uFlag,
00167              void  *pDst,
00168              UINT  *puCopied) = 0;
00169         
00170         virtual long __stdcall GetConversionListW( 
00171              HKL hKL,
00172              HIMC hIMC,
00173              LPWSTR pSrc,
00174              UINT uBufLen,
00175              UINT uFlag,
00176              void  *pDst,
00177              UINT  *puCopied) = 0;
00178         
00179         virtual long __stdcall GetConversionStatus( 
00180              HIMC hIMC,
00181              DWORD  *pfdwConversion,
00182              DWORD  *pfdwSentence) = 0;
00183         
00184         virtual long __stdcall GetDefaultIMEWnd( 
00185              HWND hWnd,
00186              HWND  *phDefWnd) = 0;
00187         
00188         virtual long __stdcall GetDescriptionA( 
00189              HKL hKL,
00190              UINT uBufLen,
00191              LPSTR szDescription,
00192              UINT  *puCopied) = 0;
00193         
00194         virtual long __stdcall GetDescriptionW( 
00195              HKL hKL,
00196              UINT uBufLen,
00197              LPWSTR szDescription,
00198              UINT  *puCopied) = 0;
00199         
00200         virtual long __stdcall GetGuideLineA( 
00201              HIMC hIMC,
00202              DWORD dwIndex,
00203              DWORD dwBufLen,
00204              LPSTR pBuf,
00205              DWORD  *pdwResult) = 0;
00206         
00207         virtual long __stdcall GetGuideLineW( 
00208              HIMC hIMC,
00209              DWORD dwIndex,
00210              DWORD dwBufLen,
00211              LPWSTR pBuf,
00212              DWORD  *pdwResult) = 0;
00213         
00214         virtual long __stdcall GetIMEFileNameA( 
00215              HKL hKL,
00216              UINT uBufLen,
00217              LPSTR szFileName,
00218              UINT  *puCopied) = 0;
00219         
00220         virtual long __stdcall GetIMEFileNameW( 
00221              HKL hKL,
00222              UINT uBufLen,
00223              LPWSTR szFileName,
00224              UINT  *puCopied) = 0;
00225         
00226         virtual long __stdcall GetOpenStatus( 
00227              HIMC hIMC) = 0;
00228         
00229         virtual long __stdcall GetProperty( 
00230              HKL hKL,
00231              DWORD fdwIndex,
00232              DWORD  *pdwProperty) = 0;
00233         
00234         virtual long __stdcall GetRegisterWordStyleA( 
00235              HKL hKL,
00236              UINT nItem,
00237              STYLEBUFA  *pStyleBuf,
00238              UINT  *puCopied) = 0;
00239         
00240         virtual long __stdcall GetRegisterWordStyleW( 
00241              HKL hKL,
00242              UINT nItem,
00243              STYLEBUFW  *pStyleBuf,
00244              UINT  *puCopied) = 0;
00245         
00246         virtual long __stdcall GetStatusWindowPos( 
00247              HIMC hIMC,
00248              POINT  *pptPos) = 0;
00249         
00250         virtual long __stdcall GetVirtualKey( 
00251              HWND hWnd,
00252              UINT  *puVirtualKey) = 0;
00253         
00254         virtual long __stdcall InstallIMEA( 
00255              LPSTR szIMEFileName,
00256              LPSTR szLayoutText,
00257              HKL  *phKL) = 0;
00258         
00259         virtual long __stdcall InstallIMEW( 
00260              LPWSTR szIMEFileName,
00261              LPWSTR szLayoutText,
00262              HKL  *phKL) = 0;
00263         
00264         virtual long __stdcall IsIME( 
00265              HKL hKL) = 0;
00266         
00267         virtual long __stdcall IsUIMessageA( 
00268              HWND hWndIME,
00269              UINT msg,
00270              WPARAM wParam,
00271              LPARAM lParam) = 0;
00272         
00273         virtual long __stdcall IsUIMessageW( 
00274              HWND hWndIME,
00275              UINT msg,
00276              WPARAM wParam,
00277              LPARAM lParam) = 0;
00278         
00279         virtual long __stdcall NotifyIME( 
00280              HIMC hIMC,
00281              DWORD dwAction,
00282              DWORD dwIndex,
00283              DWORD dwValue) = 0;
00284         
00285         virtual long __stdcall RegisterWordA( 
00286              HKL hKL,
00287              LPSTR szReading,
00288              DWORD dwStyle,
00289              LPSTR szRegister) = 0;
00290         
00291         virtual long __stdcall RegisterWordW( 
00292              HKL hKL,
00293              LPWSTR szReading,
00294              DWORD dwStyle,
00295              LPWSTR szRegister) = 0;
00296         
00297         virtual long __stdcall ReleaseContext( 
00298              HWND hWnd,
00299              HIMC hIMC) = 0;
00300         
00301         virtual long __stdcall SetCandidateWindow( 
00302              HIMC hIMC,
00303              void  *pCandidate) = 0;
00304         
00305         virtual long __stdcall SetCompositionFontA( 
00306              HIMC hIMC,
00307              LOGFONTA  *plf) = 0;
00308         
00309         virtual long __stdcall SetCompositionFontW( 
00310              HIMC hIMC,
00311              LOGFONTW  *plf) = 0;
00312         
00313         virtual long __stdcall SetCompositionStringA( 
00314              HIMC hIMC,
00315              DWORD dwIndex,
00316              LPVOID pComp,
00317              DWORD dwCompLen,
00318              LPVOID pRead,
00319              DWORD dwReadLen) = 0;
00320         
00321         virtual long __stdcall SetCompositionStringW( 
00322              HIMC hIMC,
00323              DWORD dwIndex,
00324              LPVOID pComp,
00325              DWORD dwCompLen,
00326              LPVOID pRead,
00327              DWORD dwReadLen) = 0;
00328         
00329         virtual long __stdcall SetCompositionWindow( 
00330              HIMC hIMC,
00331              void  *pCompForm) = 0;
00332         
00333         virtual long __stdcall SetConversionStatus( 
00334              HIMC hIMC,
00335              DWORD fdwConversion,
00336              DWORD fdwSentence) = 0;
00337         
00338         virtual long __stdcall SetOpenStatus( 
00339              HIMC hIMC,
00340              BOOL fOpen) = 0;
00341         
00342         virtual long __stdcall SetStatusWindowPos( 
00343              HIMC hIMC,
00344              POINT  *pptPos) = 0;
00345         
00346         virtual long __stdcall SimulateHotKey( 
00347              HWND hWnd,
00348              DWORD dwHotKeyID) = 0;
00349         
00350         virtual long __stdcall UnregisterWordA( 
00351              HKL hKL,
00352              LPSTR szReading,
00353              DWORD dwStyle,
00354              LPSTR szUnregister) = 0;
00355         
00356         virtual long __stdcall UnregisterWordW( 
00357              HKL hKL,
00358              LPWSTR szReading,
00359              DWORD dwStyle,
00360              LPWSTR szUnregister) = 0;
00361         
00362         virtual long __stdcall Activate( 
00363              BOOL fRestoreLayout) = 0;
00364         
00365         virtual long __stdcall Deactivate( void) = 0;
00366         
00367         virtual long __stdcall OnDefWindowProc( 
00368              HWND hWnd,
00369              UINT Msg,
00370              WPARAM wParam,
00371              LPARAM lParam,
00372              LRESULT  *plResult) = 0;
00373         
00374         virtual long __stdcall FilterClientWindows( 
00375              ATOM  *aaClassList,
00376              UINT uSize) = 0;
00377         
00378         virtual long __stdcall GetCodePageA( 
00379              HKL hKL,
00380              UINT  *uCodePage) = 0;
00381         
00382         virtual long __stdcall GetLangId( 
00383              HKL hKL,
00384              WORD  *plid) = 0;
00385         
00386         virtual long __stdcall AssociateContextEx( 
00387              HWND hWnd,
00388              HIMC hIMC,
00389              DWORD dwFlags) = 0;
00390         
00391         virtual long __stdcall DisableIME( 
00392              DWORD idThread) = 0;
00393         
00394         virtual long __stdcall GetImeMenuItemsA( 
00395              HIMC hIMC,
00396              DWORD dwFlags,
00397              DWORD dwType,
00398              void  *pImeParentMenu,
00399              void  *pImeMenu,
00400              DWORD dwSize,
00401              DWORD  *pdwResult) = 0;
00402         
00403         virtual long __stdcall GetImeMenuItemsW( 
00404              HIMC hIMC,
00405              DWORD dwFlags,
00406              DWORD dwType,
00407              void  *pImeParentMenu,
00408             void  *pImeMenu,
00409              DWORD dwSize,
00410              DWORD  *pdwResult) = 0;
00411         
00412         virtual long __stdcall EnumInputContext( 
00413              DWORD idThread,
00414              void  **ppEnum) = 0;
00415         
00416     };
00417 
00418 #endif
00419 
00420 //
00421 // End of "$Id$".
00422 //