FLTK 1.3.0
|
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 //