00001 #ifndef __SURROGATE_DIMM_H__
00002 #define __SURROGATE_DIMM_H__
00003
00004
00005
00006
00007
00008 typedef struct IActiveIMMApp IActiveIMMApp;
00009 typedef struct IActiveIMMMessagePumpOwner IActiveIMMMessagePumpOwner;
00010
00011
00012
00013
00014 typedef struct {
00015 HRESULT(__stdcall * QueryInterface) (IActiveIMMApp * This,
00016 REFIID riid, void *ppvObject);
00017
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