surrogate-dimm.h

Go to the documentation of this file.
00001 #ifndef __SURROGATE_DIMM_H__
00002 #define __SURROGATE_DIMM_H__
00003 
00004 /* The Win32api headers doesn't include <dimm.h>, thus we need
00005  * this file, which covers just the stuff we need from <dimm.h>.
00006  */
00007 
00008 typedef struct IActiveIMMApp IActiveIMMApp;
00009 typedef struct IActiveIMMMessagePumpOwner IActiveIMMMessagePumpOwner;
00010 
00011 /* Dummy vtable structs that contain real names and arg lists for
00012  * only those methods we need.
00013  */
00014 typedef struct {
00015    HRESULT(__stdcall * QueryInterface) (IActiveIMMApp * This,
00016                                         REFIID riid, void *ppvObject);
00017    /* Dummy method prototypes for those we don't use */
00018    ULONG(__stdcall * dummy_AddRef) ();
00019    ULONG(__stdcall * dummy_Release) ();
00020    HRESULT(__stdcall * dummy_AssociateContext) ();
00021    HRESULT(__stdcall * dummy_ConfigureIMEA) ();
00022    HRESULT(__stdcall * dummy_ConfigureIMEW) ();
00023    HRESULT(__stdcall * dummy_CreateContext) ();
00024    HRESULT(__stdcall * dummy_DestroyContext) ();
00025    HRESULT(__stdcall * dummy_EnumRegisterWordA) ();
00026    HRESULT(__stdcall * dummy_EnumRegisterWordW) ();
00027    HRESULT(__stdcall * dummy_EscapeA) ();
00028    HRESULT(__stdcall * dummy_EscapeW) ();
00029    HRESULT(__stdcall * dummy_GetCandidateListA) ();
00030    HRESULT(__stdcall * dummy_GetCandidateListW) ();
00031    HRESULT(__stdcall * dummy_GetCandidateListCountA) ();
00032    HRESULT(__stdcall * dummy_GetCandidateListCountW) ();
00033    HRESULT(__stdcall * dummy_GetCandidateWindow) ();
00034    HRESULT(__stdcall * dummy_GetCompositionFontA) ();
00035    HRESULT(__stdcall * dummy_GetCompositionFontW) ();
00036    HRESULT(__stdcall * dummy_GetCompositionStringA) ();
00037    HRESULT(__stdcall * dummy_GetCompositionStringW) ();
00038    HRESULT(__stdcall * dummy_GetCompositionWindow) ();
00039    HRESULT(__stdcall * dummy_GetContext) ();
00040    HRESULT(__stdcall * dummy_GetConversionListA) ();
00041    HRESULT(__stdcall * dummy_GetConversionListW) ();
00042    HRESULT(__stdcall * dummy_GetConversionStatus) ();
00043 
00044    HRESULT(__stdcall * GetDefaultIMEWnd) (IActiveIMMApp * This,
00045                                           HWND hWnd, HWND * phDefWnd);
00046 
00047    HRESULT(__stdcall * dummy_GetDescriptionA) ();
00048    HRESULT(__stdcall * dummy_GetDescriptionW) ();
00049    HRESULT(__stdcall * dummy_GetGuideLineA) ();
00050    HRESULT(__stdcall * dummy_GetGuideLineW) ();
00051    HRESULT(__stdcall * dummy_GetIMEFileNameA) ();
00052    HRESULT(__stdcall * dummy_GetIMEFileNameW) ();
00053    HRESULT(__stdcall * dummy_GetOpenStatus) ();
00054    HRESULT(__stdcall * dummy_GetProperty) ();
00055    HRESULT(__stdcall * dummy_GetRegisterWordStyleA) ();
00056    HRESULT(__stdcall * dummy_GetRegisterWordStyleW) ();
00057    HRESULT(__stdcall * dummy_GetStatusWindowPos) ();
00058    HRESULT(__stdcall * dummy_GetVirtualKey) ();
00059    HRESULT(__stdcall * dummy_InstallIMEA) ();
00060    HRESULT(__stdcall * dummy_InstallIMEW) ();
00061 
00062    HRESULT(__stdcall * IsIME) (IActiveIMMApp * This, HKL hKL);
00063    HRESULT(__stdcall * IsUIMessageA) (IActiveIMMApp * This,
00064                                       HWND hWndIME,
00065                                       UINT msg,
00066                                       WPARAM wParam, LPARAM lParam);
00067    HRESULT(__stdcall * dummy_IsUIMessageW) ();
00068    HRESULT(__stdcall * dummy_NotifyIME) ();
00069    HRESULT(__stdcall * dummy_RegisterWordA) ();
00070    HRESULT(__stdcall * dummy_RegisterWordW) ();
00071    HRESULT(__stdcall * dummy_ReleaseContext) ();
00072    HRESULT(__stdcall * dummy_SetCandidateWindow) ();
00073    HRESULT(__stdcall * dummy_SetCompositionFontA) ();
00074    HRESULT(__stdcall * dummy_SetCompositionFontW) ();
00075    HRESULT(__stdcall * dummy_SetCompositionStringA) ();
00076    HRESULT(__stdcall * dummy_SetCompositionStringW) ();
00077    HRESULT(__stdcall * dummy_SetCompositionWindow) ();
00078    HRESULT(__stdcall * dummy_SetConversionStatus) ();
00079    HRESULT(__stdcall * dummy_SetOpenStatus) ();
00080    HRESULT(__stdcall * dummy_SetStatusWindowPos) ();
00081    HRESULT(__stdcall * dummy_SimulateHotKey) ();
00082    HRESULT(__stdcall * dummy_UnregisterWordA) ();
00083    HRESULT(__stdcall * dummy_UnregisterWordW) ();
00084 
00085    HRESULT(__stdcall * Activate) (IActiveIMMApp * This, BOOL restore);
00086    HRESULT(__stdcall * Deactivate) (IActiveIMMApp * This);
00087    HRESULT(__stdcall * OnDefWindowProc) (IActiveIMMApp * This,
00088                                          HWND hWnd,
00089                                          UINT Msg,
00090                                          WPARAM wParam,
00091                                          LPARAM lParam,
00092                                          LRESULT * plResult);
00093 
00094    HRESULT(__stdcall * dummy_FilterClientWindows) ();
00095 
00096    HRESULT(__stdcall * GetCodePageA) (IActiveIMMApp * This,
00097                                       HKL hKL, UINT * uCodePage);
00098    HRESULT(__stdcall * GetLangId) (IActiveIMMApp * This,
00099                                    HKL hKL, LANGID * plid);
00100 
00101    HRESULT(__stdcall * dummy_AssociateContextEx) ();
00102    HRESULT(__stdcall * dummy_DisableIME) ();
00103    HRESULT(__stdcall * dummy_GetImeMenuItemsA) ();
00104    HRESULT(__stdcall * dummy_GetImeMenuItemsW) ();
00105    HRESULT(__stdcall * dummy_EnumInputContext) ();
00106 } IActiveIMMAppVtbl;
00107 
00108 struct IActiveIMMApp {
00109    IActiveIMMAppVtbl *lpVtbl;
00110 };
00111 
00112 typedef struct {
00113    HRESULT(__stdcall * dummy_QueryInterface) ();
00114    ULONG(__stdcall * dummy_AddRef) ();
00115    ULONG(__stdcall * dummy_Release) ();
00116 
00117    HRESULT(__stdcall * Start) (IActiveIMMMessagePumpOwner * This);
00118    HRESULT(__stdcall * End) (IActiveIMMMessagePumpOwner * This);
00119    HRESULT(__stdcall * OnTranslateMessage) (IActiveIMMMessagePumpOwner *
00120                                             This, MSG * pMSG);
00121 
00122    HRESULT(__stdcall * dummy_Pause) ();
00123    HRESULT(__stdcall * dummy_Resume) ();
00124 } IActiveIMMMessagePumpOwnerVtbl;
00125 
00126 struct IActiveIMMMessagePumpOwner {
00127    IActiveIMMMessagePumpOwnerVtbl *lpVtbl;
00128 };
00129 
00130 static UUID CLSID_CActiveIMM = {
00131    0x4955DD33, 0xB159, 0x11d0, {0x8F, 0xCF, 0x00, 0xAA, 0x00, 0x6B, 0xCC,
00132                                 0x59}
00133 };
00134 static IID IID_IActiveIMMApp = {
00135    0x08C0E040, 0x62D1, 0x11D1, {0x93, 0x26, 0x00, 0x60, 0xB0, 0x67, 0xB8,
00136                                 0x6E}
00137 };
00138 static IID IID_IActiveIMMMessagePumpOwner = {
00139    0xB5CF2CFA, 0x8AEB, 0x11D1, {0x93, 0x64, 0x00, 0x60, 0xB0, 0x67, 0xB8,
00140                                 0x6E}
00141 };
00142 
00143 #endif                          /* __SURROGATE_DIMM_H__ */

Generated on Tue Jul 5 14:14:40 2011 for ROOT_528-00b_version by  doxygen 1.5.1