1.1 --- a/src/video/windows/SDL_msctf.h Thu Feb 10 12:14:37 2011 -0800
1.2 +++ b/src/video/windows/SDL_msctf.h Thu Feb 10 14:36:09 2011 -0800
1.3 @@ -1,221 +1,221 @@
1.4 -#ifndef _SDL_msctf_h
1.5 -#define _SDL_msctf_h
1.6 -
1.7 -#include <unknwn.h>
1.8 -
1.9 -#define TF_INVALID_COOKIE (0xffffffff)
1.10 -#define TF_IPSINK_FLAG_ACTIVE 0x0001
1.11 -#define TF_TMAE_UIELEMENTENABLEDONLY 0x00000004
1.12 -
1.13 -typedef struct ITfThreadMgr ITfThreadMgr;
1.14 -typedef struct ITfDocumentMgr ITfDocumentMgr;
1.15 -typedef struct ITfClientId ITfClientId;
1.16 -
1.17 -typedef struct IEnumTfDocumentMgrs IEnumTfDocumentMgrs;
1.18 -typedef struct IEnumTfFunctionProviders IEnumTfFunctionProviders;
1.19 -typedef struct ITfFunctionProvider ITfFunctionProvider;
1.20 -typedef struct ITfCompartmentMgr ITfCompartmentMgr;
1.21 -typedef struct ITfContext ITfContext;
1.22 -typedef struct IEnumTfContexts IEnumTfContexts;
1.23 -typedef struct ITfUIElementSink ITfUIElementSink;
1.24 -typedef struct ITfUIElement ITfUIElement;
1.25 -typedef struct ITfUIElementMgr ITfUIElementMgr;
1.26 -typedef struct IEnumTfUIElements IEnumTfUIElements;
1.27 -typedef struct ITfThreadMgrEx ITfThreadMgrEx;
1.28 -typedef struct ITfCandidateListUIElement ITfCandidateListUIElement;
1.29 -typedef struct ITfReadingInformationUIElement ITfReadingInformationUIElement;
1.30 -typedef struct ITfInputProcessorProfileActivationSink ITfInputProcessorProfileActivationSink;
1.31 -typedef struct ITfSource ITfSource;
1.32 -
1.33 -typedef DWORD TfClientId;
1.34 -typedef DWORD TfEditCookie;
1.35 -
1.36 -typedef struct ITfThreadMgrVtbl
1.37 -{
1.38 - HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfThreadMgr *, REFIID, void **);
1.39 - ULONG (STDMETHODCALLTYPE *AddRef)(ITfThreadMgr *);
1.40 - ULONG (STDMETHODCALLTYPE *Release)(ITfThreadMgr *);
1.41 - HRESULT (STDMETHODCALLTYPE *Activate)(ITfThreadMgr *, TfClientId *);
1.42 - HRESULT (STDMETHODCALLTYPE *Deactivate)(ITfThreadMgr *);
1.43 - HRESULT (STDMETHODCALLTYPE *CreateDocumentMgr)(ITfThreadMgr *);
1.44 - HRESULT (STDMETHODCALLTYPE *EnumDocumentMgrs)(ITfThreadMgr *, IEnumTfDocumentMgrs **);
1.45 - HRESULT (STDMETHODCALLTYPE *GetFocus)(ITfThreadMgr *, ITfDocumentMgr **);
1.46 - HRESULT (STDMETHODCALLTYPE *SetFocus)(ITfThreadMgr *, ITfDocumentMgr *);
1.47 - HRESULT (STDMETHODCALLTYPE *AssociateFocus)(ITfThreadMgr *, HWND, ITfDocumentMgr *, ITfDocumentMgr **);
1.48 - HRESULT (STDMETHODCALLTYPE *IsThreadFocus)(ITfThreadMgr *, BOOL *);
1.49 - HRESULT (STDMETHODCALLTYPE *GetFunctionProvider)(ITfThreadMgr *, REFCLSID, ITfFunctionProvider **);
1.50 - HRESULT (STDMETHODCALLTYPE *EnumFunctionProviders)(ITfThreadMgr *, IEnumTfFunctionProviders **);
1.51 - HRESULT (STDMETHODCALLTYPE *GetGlobalCompartment)(ITfThreadMgr *, ITfCompartmentMgr **);
1.52 -} ITfThreadMgrVtbl;
1.53 -
1.54 -struct ITfThreadMgr
1.55 -{
1.56 - const struct ITfThreadMgrVtbl *lpVtbl;
1.57 -};
1.58 -
1.59 -typedef struct ITfThreadMgrExVtbl
1.60 -{
1.61 - HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfThreadMgrEx *, REFIID, void **);
1.62 - ULONG (STDMETHODCALLTYPE *AddRef)(ITfThreadMgrEx *);
1.63 - ULONG (STDMETHODCALLTYPE *Release)(ITfThreadMgrEx *);
1.64 - HRESULT (STDMETHODCALLTYPE *Activate)(ITfThreadMgrEx *, TfClientId *);
1.65 - HRESULT (STDMETHODCALLTYPE *Deactivate)(ITfThreadMgrEx *);
1.66 - HRESULT (STDMETHODCALLTYPE *CreateDocumentMgr)(ITfThreadMgrEx *, ITfDocumentMgr **);
1.67 - HRESULT (STDMETHODCALLTYPE *EnumDocumentMgrs)(ITfThreadMgrEx *, IEnumTfDocumentMgrs **);
1.68 - HRESULT (STDMETHODCALLTYPE *GetFocus)(ITfThreadMgrEx *, ITfDocumentMgr **);
1.69 - HRESULT (STDMETHODCALLTYPE *SetFocus)(ITfThreadMgrEx *, ITfDocumentMgr *);
1.70 - HRESULT (STDMETHODCALLTYPE *AssociateFocus)(ITfThreadMgrEx *, ITfDocumentMgr *, ITfDocumentMgr **);
1.71 - HRESULT (STDMETHODCALLTYPE *IsThreadFocus)(ITfThreadMgrEx *, BOOL *);
1.72 - HRESULT (STDMETHODCALLTYPE *GetFunctionProvider)(ITfThreadMgrEx *, REFCLSID, ITfFunctionProvider **);
1.73 - HRESULT (STDMETHODCALLTYPE *EnumFunctionProviders)(ITfThreadMgrEx *, IEnumTfFunctionProviders **);
1.74 - HRESULT (STDMETHODCALLTYPE *GetGlobalCompartment)(ITfThreadMgrEx *, ITfCompartmentMgr **);
1.75 - HRESULT (STDMETHODCALLTYPE *ActivateEx)(ITfThreadMgrEx *, TfClientId *, DWORD);
1.76 - HRESULT (STDMETHODCALLTYPE *GetActiveFlags)(ITfThreadMgrEx *, DWORD *);
1.77 -} ITfThreadMgrExVtbl;
1.78 -
1.79 -struct ITfThreadMgrEx
1.80 -{
1.81 - const struct ITfThreadMgrExVtbl *lpVtbl;
1.82 -};
1.83 -
1.84 -typedef struct ITfDocumentMgrVtbl
1.85 -{
1.86 - HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfDocumentMgr *, REFIID, void **);
1.87 - ULONG (STDMETHODCALLTYPE *AddRef)(ITfDocumentMgr *);
1.88 - ULONG (STDMETHODCALLTYPE *Release)(ITfDocumentMgr *);
1.89 - HRESULT (STDMETHODCALLTYPE *CreateContext)(ITfDocumentMgr *, TfClientId, DWORD, IUnknown *, ITfContext **, TfEditCookie *);
1.90 - HRESULT (STDMETHODCALLTYPE *Push)(ITfDocumentMgr *, ITfContext *);
1.91 - HRESULT (STDMETHODCALLTYPE *Pop)(ITfDocumentMgr *);
1.92 - HRESULT (STDMETHODCALLTYPE *GetTop)(ITfDocumentMgr *, ITfContext **);
1.93 - HRESULT (STDMETHODCALLTYPE *GetBase)(ITfDocumentMgr *, ITfContext **);
1.94 - HRESULT (STDMETHODCALLTYPE *EnumContexts)(ITfDocumentMgr *, IEnumTfContexts **);
1.95 -} ITfDocumentMgrVtbl;
1.96 -
1.97 -struct ITfDocumentMgr
1.98 -{
1.99 - const struct ITfDocumentMgrVtbl *lpVtbl;
1.100 -};
1.101 -
1.102 -typedef struct ITfUIElementSinkVtbl
1.103 -{
1.104 - HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfUIElementSink *, REFIID, void **);
1.105 - ULONG (STDMETHODCALLTYPE *AddRef)(ITfUIElementSink *);
1.106 - ULONG (STDMETHODCALLTYPE *Release)(ITfUIElementSink *);
1.107 - HRESULT (STDMETHODCALLTYPE *BeginUIElement)(ITfUIElementSink *, DWORD, BOOL *);
1.108 - HRESULT (STDMETHODCALLTYPE *UpdateUIElement)(ITfUIElementSink *, DWORD);
1.109 - HRESULT (STDMETHODCALLTYPE *EndUIElement)(ITfUIElementSink *, DWORD);
1.110 -} ITfUIElementSinkVtbl;
1.111 -
1.112 -struct ITfUIElementSink
1.113 -{
1.114 - const struct ITfUIElementSinkVtbl *lpVtbl;
1.115 -};
1.116 -
1.117 -typedef struct ITfUIElementMgrVtbl
1.118 -{
1.119 - HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfUIElementMgr *, REFIID, void **);
1.120 - ULONG (STDMETHODCALLTYPE *AddRef)(ITfUIElementMgr *);
1.121 - ULONG (STDMETHODCALLTYPE *Release)(ITfUIElementMgr *);
1.122 - HRESULT (STDMETHODCALLTYPE *BeginUIElement)(ITfUIElementMgr *, ITfUIElement *, BOOL *, DWORD *);
1.123 - HRESULT (STDMETHODCALLTYPE *UpdateUIElement)(ITfUIElementMgr *, DWORD);
1.124 - HRESULT (STDMETHODCALLTYPE *EndUIElement)(ITfUIElementMgr *, DWORD);
1.125 - HRESULT (STDMETHODCALLTYPE *GetUIElement)(ITfUIElementMgr *, DWORD, ITfUIElement **);
1.126 - HRESULT (STDMETHODCALLTYPE *EnumUIElements)(ITfUIElementMgr *, IEnumTfUIElements **);
1.127 -} ITfUIElementMgrVtbl;
1.128 -
1.129 -struct ITfUIElementMgr
1.130 -{
1.131 - const struct ITfUIElementMgrVtbl *lpVtbl;
1.132 -};
1.133 -
1.134 -typedef struct ITfCandidateListUIElementVtbl
1.135 -{
1.136 - HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfCandidateListUIElement *, REFIID, void **);
1.137 - ULONG (STDMETHODCALLTYPE *AddRef)(ITfCandidateListUIElement *);
1.138 - ULONG (STDMETHODCALLTYPE *Release)(ITfCandidateListUIElement *);
1.139 - HRESULT (STDMETHODCALLTYPE *GetDescription)(ITfCandidateListUIElement *, BSTR *);
1.140 - HRESULT (STDMETHODCALLTYPE *GetGUID)(ITfCandidateListUIElement *, GUID *);
1.141 - HRESULT (STDMETHODCALLTYPE *Show)(ITfCandidateListUIElement *, BOOL);
1.142 - HRESULT (STDMETHODCALLTYPE *IsShown)(ITfCandidateListUIElement *, BOOL *);
1.143 - HRESULT (STDMETHODCALLTYPE *GetUpdatedFlags)(ITfCandidateListUIElement *, DWORD *);
1.144 - HRESULT (STDMETHODCALLTYPE *GetDocumentMgr)(ITfCandidateListUIElement *, ITfDocumentMgr **);
1.145 - HRESULT (STDMETHODCALLTYPE *GetCount)(ITfCandidateListUIElement *, UINT *);
1.146 - HRESULT (STDMETHODCALLTYPE *GetSelection)(ITfCandidateListUIElement *, UINT *);
1.147 - HRESULT (STDMETHODCALLTYPE *GetString)(ITfCandidateListUIElement *, UINT, BSTR *);
1.148 - HRESULT (STDMETHODCALLTYPE *GetPageIndex)(ITfCandidateListUIElement *, UINT *, UINT, UINT *);
1.149 - HRESULT (STDMETHODCALLTYPE *SetPageIndex)(ITfCandidateListUIElement *, UINT *, UINT);
1.150 - HRESULT (STDMETHODCALLTYPE *GetCurrentPage)(ITfCandidateListUIElement *, UINT *);
1.151 -} ITfCandidateListUIElementVtbl;
1.152 -
1.153 -struct ITfCandidateListUIElement
1.154 -{
1.155 - const struct ITfCandidateListUIElementVtbl *lpVtbl;
1.156 -};
1.157 -
1.158 -typedef struct ITfReadingInformationUIElementVtbl
1.159 -{
1.160 - HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfReadingInformationUIElement *, REFIID, void **);
1.161 - ULONG (STDMETHODCALLTYPE *AddRef)(ITfReadingInformationUIElement *);
1.162 - ULONG (STDMETHODCALLTYPE *Release)(ITfReadingInformationUIElement *);
1.163 - HRESULT (STDMETHODCALLTYPE *GetDescription)(ITfReadingInformationUIElement *, BSTR *);
1.164 - HRESULT (STDMETHODCALLTYPE *GetGUID)(ITfReadingInformationUIElement *, GUID *);
1.165 - HRESULT (STDMETHODCALLTYPE *Show)(ITfReadingInformationUIElement *, BOOL);
1.166 - HRESULT (STDMETHODCALLTYPE *IsShown)(ITfReadingInformationUIElement *, BOOL *);
1.167 - HRESULT (STDMETHODCALLTYPE *GetUpdatedFlags)(ITfReadingInformationUIElement *, DWORD *);
1.168 - HRESULT (STDMETHODCALLTYPE *GetContext)(ITfReadingInformationUIElement *, ITfContext **);
1.169 - HRESULT (STDMETHODCALLTYPE *GetString)(ITfReadingInformationUIElement *, BSTR *);
1.170 - HRESULT (STDMETHODCALLTYPE *GetMaxReadingStringLength)(ITfReadingInformationUIElement *, UINT *);
1.171 - HRESULT (STDMETHODCALLTYPE *GetErrorIndex)(ITfReadingInformationUIElement *, UINT *);
1.172 - HRESULT (STDMETHODCALLTYPE *IsVerticalOrderPreferred)(ITfReadingInformationUIElement *, BOOL *);
1.173 -} ITfReadingInformationUIElementVtbl;
1.174 -
1.175 -struct ITfReadingInformationUIElement
1.176 -{
1.177 - const struct ITfReadingInformationUIElementVtbl *lpVtbl;
1.178 -};
1.179 -
1.180 -typedef struct ITfUIElementVtbl
1.181 -{
1.182 - HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfUIElement *, REFIID, void **);
1.183 - ULONG (STDMETHODCALLTYPE *AddRef)(ITfUIElement *);
1.184 - ULONG (STDMETHODCALLTYPE *Release)(ITfUIElement *);
1.185 - HRESULT (STDMETHODCALLTYPE *GetDescription)(ITfUIElement *, BSTR *);
1.186 - HRESULT (STDMETHODCALLTYPE *GetGUID)(ITfUIElement *, GUID *);
1.187 - HRESULT (STDMETHODCALLTYPE *Show)(ITfUIElement *, BOOL);
1.188 - HRESULT (STDMETHODCALLTYPE *IsShown)(ITfUIElement *, BOOL *);
1.189 -} ITfUIElementVtbl;
1.190 -
1.191 -struct ITfUIElement
1.192 -{
1.193 - const struct ITfUIElementVtbl *lpVtbl;
1.194 -};
1.195 -
1.196 -typedef struct ITfInputProcessorProfileActivationSinkVtbl
1.197 -{
1.198 - HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfInputProcessorProfileActivationSink *, REFIID, void **);
1.199 - ULONG (STDMETHODCALLTYPE *AddRef)(ITfInputProcessorProfileActivationSink *);
1.200 - ULONG (STDMETHODCALLTYPE *Release)(ITfInputProcessorProfileActivationSink *);
1.201 - HRESULT (STDMETHODCALLTYPE *OnActivated)(ITfInputProcessorProfileActivationSink *, DWORD, LANGID, REFCLSID, REFGUID, REFGUID, HKL, DWORD);
1.202 -
1.203 -} ITfInputProcessorProfileActivationSinkVtbl;
1.204 -
1.205 -struct ITfInputProcessorProfileActivationSink
1.206 -{
1.207 - const struct ITfInputProcessorProfileActivationSinkVtbl *lpVtbl;
1.208 -};
1.209 -
1.210 -typedef struct ITfSourceVtbl
1.211 -{
1.212 - HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfSource *, REFIID, void **);
1.213 - ULONG (STDMETHODCALLTYPE *AddRef)(ITfSource *);
1.214 - ULONG (STDMETHODCALLTYPE *Release)(ITfSource *);
1.215 - HRESULT (STDMETHODCALLTYPE *AdviseSink)(ITfSource *, REFIID, IUnknown *, DWORD *);
1.216 - HRESULT (STDMETHODCALLTYPE *UnadviseSink)(ITfSource *, DWORD);
1.217 -} ITfSourceVtbl;
1.218 -
1.219 -struct ITfSource
1.220 -{
1.221 - const struct ITfSourceVtbl *lpVtbl;
1.222 -};
1.223 -
1.224 -#endif /* _SDL_msctf_h */
1.225 +#ifndef _SDL_msctf_h
1.226 +#define _SDL_msctf_h
1.227 +
1.228 +#include <unknwn.h>
1.229 +
1.230 +#define TF_INVALID_COOKIE (0xffffffff)
1.231 +#define TF_IPSINK_FLAG_ACTIVE 0x0001
1.232 +#define TF_TMAE_UIELEMENTENABLEDONLY 0x00000004
1.233 +
1.234 +typedef struct ITfThreadMgr ITfThreadMgr;
1.235 +typedef struct ITfDocumentMgr ITfDocumentMgr;
1.236 +typedef struct ITfClientId ITfClientId;
1.237 +
1.238 +typedef struct IEnumTfDocumentMgrs IEnumTfDocumentMgrs;
1.239 +typedef struct IEnumTfFunctionProviders IEnumTfFunctionProviders;
1.240 +typedef struct ITfFunctionProvider ITfFunctionProvider;
1.241 +typedef struct ITfCompartmentMgr ITfCompartmentMgr;
1.242 +typedef struct ITfContext ITfContext;
1.243 +typedef struct IEnumTfContexts IEnumTfContexts;
1.244 +typedef struct ITfUIElementSink ITfUIElementSink;
1.245 +typedef struct ITfUIElement ITfUIElement;
1.246 +typedef struct ITfUIElementMgr ITfUIElementMgr;
1.247 +typedef struct IEnumTfUIElements IEnumTfUIElements;
1.248 +typedef struct ITfThreadMgrEx ITfThreadMgrEx;
1.249 +typedef struct ITfCandidateListUIElement ITfCandidateListUIElement;
1.250 +typedef struct ITfReadingInformationUIElement ITfReadingInformationUIElement;
1.251 +typedef struct ITfInputProcessorProfileActivationSink ITfInputProcessorProfileActivationSink;
1.252 +typedef struct ITfSource ITfSource;
1.253 +
1.254 +typedef DWORD TfClientId;
1.255 +typedef DWORD TfEditCookie;
1.256 +
1.257 +typedef struct ITfThreadMgrVtbl
1.258 +{
1.259 + HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfThreadMgr *, REFIID, void **);
1.260 + ULONG (STDMETHODCALLTYPE *AddRef)(ITfThreadMgr *);
1.261 + ULONG (STDMETHODCALLTYPE *Release)(ITfThreadMgr *);
1.262 + HRESULT (STDMETHODCALLTYPE *Activate)(ITfThreadMgr *, TfClientId *);
1.263 + HRESULT (STDMETHODCALLTYPE *Deactivate)(ITfThreadMgr *);
1.264 + HRESULT (STDMETHODCALLTYPE *CreateDocumentMgr)(ITfThreadMgr *);
1.265 + HRESULT (STDMETHODCALLTYPE *EnumDocumentMgrs)(ITfThreadMgr *, IEnumTfDocumentMgrs **);
1.266 + HRESULT (STDMETHODCALLTYPE *GetFocus)(ITfThreadMgr *, ITfDocumentMgr **);
1.267 + HRESULT (STDMETHODCALLTYPE *SetFocus)(ITfThreadMgr *, ITfDocumentMgr *);
1.268 + HRESULT (STDMETHODCALLTYPE *AssociateFocus)(ITfThreadMgr *, HWND, ITfDocumentMgr *, ITfDocumentMgr **);
1.269 + HRESULT (STDMETHODCALLTYPE *IsThreadFocus)(ITfThreadMgr *, BOOL *);
1.270 + HRESULT (STDMETHODCALLTYPE *GetFunctionProvider)(ITfThreadMgr *, REFCLSID, ITfFunctionProvider **);
1.271 + HRESULT (STDMETHODCALLTYPE *EnumFunctionProviders)(ITfThreadMgr *, IEnumTfFunctionProviders **);
1.272 + HRESULT (STDMETHODCALLTYPE *GetGlobalCompartment)(ITfThreadMgr *, ITfCompartmentMgr **);
1.273 +} ITfThreadMgrVtbl;
1.274 +
1.275 +struct ITfThreadMgr
1.276 +{
1.277 + const struct ITfThreadMgrVtbl *lpVtbl;
1.278 +};
1.279 +
1.280 +typedef struct ITfThreadMgrExVtbl
1.281 +{
1.282 + HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfThreadMgrEx *, REFIID, void **);
1.283 + ULONG (STDMETHODCALLTYPE *AddRef)(ITfThreadMgrEx *);
1.284 + ULONG (STDMETHODCALLTYPE *Release)(ITfThreadMgrEx *);
1.285 + HRESULT (STDMETHODCALLTYPE *Activate)(ITfThreadMgrEx *, TfClientId *);
1.286 + HRESULT (STDMETHODCALLTYPE *Deactivate)(ITfThreadMgrEx *);
1.287 + HRESULT (STDMETHODCALLTYPE *CreateDocumentMgr)(ITfThreadMgrEx *, ITfDocumentMgr **);
1.288 + HRESULT (STDMETHODCALLTYPE *EnumDocumentMgrs)(ITfThreadMgrEx *, IEnumTfDocumentMgrs **);
1.289 + HRESULT (STDMETHODCALLTYPE *GetFocus)(ITfThreadMgrEx *, ITfDocumentMgr **);
1.290 + HRESULT (STDMETHODCALLTYPE *SetFocus)(ITfThreadMgrEx *, ITfDocumentMgr *);
1.291 + HRESULT (STDMETHODCALLTYPE *AssociateFocus)(ITfThreadMgrEx *, ITfDocumentMgr *, ITfDocumentMgr **);
1.292 + HRESULT (STDMETHODCALLTYPE *IsThreadFocus)(ITfThreadMgrEx *, BOOL *);
1.293 + HRESULT (STDMETHODCALLTYPE *GetFunctionProvider)(ITfThreadMgrEx *, REFCLSID, ITfFunctionProvider **);
1.294 + HRESULT (STDMETHODCALLTYPE *EnumFunctionProviders)(ITfThreadMgrEx *, IEnumTfFunctionProviders **);
1.295 + HRESULT (STDMETHODCALLTYPE *GetGlobalCompartment)(ITfThreadMgrEx *, ITfCompartmentMgr **);
1.296 + HRESULT (STDMETHODCALLTYPE *ActivateEx)(ITfThreadMgrEx *, TfClientId *, DWORD);
1.297 + HRESULT (STDMETHODCALLTYPE *GetActiveFlags)(ITfThreadMgrEx *, DWORD *);
1.298 +} ITfThreadMgrExVtbl;
1.299 +
1.300 +struct ITfThreadMgrEx
1.301 +{
1.302 + const struct ITfThreadMgrExVtbl *lpVtbl;
1.303 +};
1.304 +
1.305 +typedef struct ITfDocumentMgrVtbl
1.306 +{
1.307 + HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfDocumentMgr *, REFIID, void **);
1.308 + ULONG (STDMETHODCALLTYPE *AddRef)(ITfDocumentMgr *);
1.309 + ULONG (STDMETHODCALLTYPE *Release)(ITfDocumentMgr *);
1.310 + HRESULT (STDMETHODCALLTYPE *CreateContext)(ITfDocumentMgr *, TfClientId, DWORD, IUnknown *, ITfContext **, TfEditCookie *);
1.311 + HRESULT (STDMETHODCALLTYPE *Push)(ITfDocumentMgr *, ITfContext *);
1.312 + HRESULT (STDMETHODCALLTYPE *Pop)(ITfDocumentMgr *);
1.313 + HRESULT (STDMETHODCALLTYPE *GetTop)(ITfDocumentMgr *, ITfContext **);
1.314 + HRESULT (STDMETHODCALLTYPE *GetBase)(ITfDocumentMgr *, ITfContext **);
1.315 + HRESULT (STDMETHODCALLTYPE *EnumContexts)(ITfDocumentMgr *, IEnumTfContexts **);
1.316 +} ITfDocumentMgrVtbl;
1.317 +
1.318 +struct ITfDocumentMgr
1.319 +{
1.320 + const struct ITfDocumentMgrVtbl *lpVtbl;
1.321 +};
1.322 +
1.323 +typedef struct ITfUIElementSinkVtbl
1.324 +{
1.325 + HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfUIElementSink *, REFIID, void **);
1.326 + ULONG (STDMETHODCALLTYPE *AddRef)(ITfUIElementSink *);
1.327 + ULONG (STDMETHODCALLTYPE *Release)(ITfUIElementSink *);
1.328 + HRESULT (STDMETHODCALLTYPE *BeginUIElement)(ITfUIElementSink *, DWORD, BOOL *);
1.329 + HRESULT (STDMETHODCALLTYPE *UpdateUIElement)(ITfUIElementSink *, DWORD);
1.330 + HRESULT (STDMETHODCALLTYPE *EndUIElement)(ITfUIElementSink *, DWORD);
1.331 +} ITfUIElementSinkVtbl;
1.332 +
1.333 +struct ITfUIElementSink
1.334 +{
1.335 + const struct ITfUIElementSinkVtbl *lpVtbl;
1.336 +};
1.337 +
1.338 +typedef struct ITfUIElementMgrVtbl
1.339 +{
1.340 + HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfUIElementMgr *, REFIID, void **);
1.341 + ULONG (STDMETHODCALLTYPE *AddRef)(ITfUIElementMgr *);
1.342 + ULONG (STDMETHODCALLTYPE *Release)(ITfUIElementMgr *);
1.343 + HRESULT (STDMETHODCALLTYPE *BeginUIElement)(ITfUIElementMgr *, ITfUIElement *, BOOL *, DWORD *);
1.344 + HRESULT (STDMETHODCALLTYPE *UpdateUIElement)(ITfUIElementMgr *, DWORD);
1.345 + HRESULT (STDMETHODCALLTYPE *EndUIElement)(ITfUIElementMgr *, DWORD);
1.346 + HRESULT (STDMETHODCALLTYPE *GetUIElement)(ITfUIElementMgr *, DWORD, ITfUIElement **);
1.347 + HRESULT (STDMETHODCALLTYPE *EnumUIElements)(ITfUIElementMgr *, IEnumTfUIElements **);
1.348 +} ITfUIElementMgrVtbl;
1.349 +
1.350 +struct ITfUIElementMgr
1.351 +{
1.352 + const struct ITfUIElementMgrVtbl *lpVtbl;
1.353 +};
1.354 +
1.355 +typedef struct ITfCandidateListUIElementVtbl
1.356 +{
1.357 + HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfCandidateListUIElement *, REFIID, void **);
1.358 + ULONG (STDMETHODCALLTYPE *AddRef)(ITfCandidateListUIElement *);
1.359 + ULONG (STDMETHODCALLTYPE *Release)(ITfCandidateListUIElement *);
1.360 + HRESULT (STDMETHODCALLTYPE *GetDescription)(ITfCandidateListUIElement *, BSTR *);
1.361 + HRESULT (STDMETHODCALLTYPE *GetGUID)(ITfCandidateListUIElement *, GUID *);
1.362 + HRESULT (STDMETHODCALLTYPE *Show)(ITfCandidateListUIElement *, BOOL);
1.363 + HRESULT (STDMETHODCALLTYPE *IsShown)(ITfCandidateListUIElement *, BOOL *);
1.364 + HRESULT (STDMETHODCALLTYPE *GetUpdatedFlags)(ITfCandidateListUIElement *, DWORD *);
1.365 + HRESULT (STDMETHODCALLTYPE *GetDocumentMgr)(ITfCandidateListUIElement *, ITfDocumentMgr **);
1.366 + HRESULT (STDMETHODCALLTYPE *GetCount)(ITfCandidateListUIElement *, UINT *);
1.367 + HRESULT (STDMETHODCALLTYPE *GetSelection)(ITfCandidateListUIElement *, UINT *);
1.368 + HRESULT (STDMETHODCALLTYPE *GetString)(ITfCandidateListUIElement *, UINT, BSTR *);
1.369 + HRESULT (STDMETHODCALLTYPE *GetPageIndex)(ITfCandidateListUIElement *, UINT *, UINT, UINT *);
1.370 + HRESULT (STDMETHODCALLTYPE *SetPageIndex)(ITfCandidateListUIElement *, UINT *, UINT);
1.371 + HRESULT (STDMETHODCALLTYPE *GetCurrentPage)(ITfCandidateListUIElement *, UINT *);
1.372 +} ITfCandidateListUIElementVtbl;
1.373 +
1.374 +struct ITfCandidateListUIElement
1.375 +{
1.376 + const struct ITfCandidateListUIElementVtbl *lpVtbl;
1.377 +};
1.378 +
1.379 +typedef struct ITfReadingInformationUIElementVtbl
1.380 +{
1.381 + HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfReadingInformationUIElement *, REFIID, void **);
1.382 + ULONG (STDMETHODCALLTYPE *AddRef)(ITfReadingInformationUIElement *);
1.383 + ULONG (STDMETHODCALLTYPE *Release)(ITfReadingInformationUIElement *);
1.384 + HRESULT (STDMETHODCALLTYPE *GetDescription)(ITfReadingInformationUIElement *, BSTR *);
1.385 + HRESULT (STDMETHODCALLTYPE *GetGUID)(ITfReadingInformationUIElement *, GUID *);
1.386 + HRESULT (STDMETHODCALLTYPE *Show)(ITfReadingInformationUIElement *, BOOL);
1.387 + HRESULT (STDMETHODCALLTYPE *IsShown)(ITfReadingInformationUIElement *, BOOL *);
1.388 + HRESULT (STDMETHODCALLTYPE *GetUpdatedFlags)(ITfReadingInformationUIElement *, DWORD *);
1.389 + HRESULT (STDMETHODCALLTYPE *GetContext)(ITfReadingInformationUIElement *, ITfContext **);
1.390 + HRESULT (STDMETHODCALLTYPE *GetString)(ITfReadingInformationUIElement *, BSTR *);
1.391 + HRESULT (STDMETHODCALLTYPE *GetMaxReadingStringLength)(ITfReadingInformationUIElement *, UINT *);
1.392 + HRESULT (STDMETHODCALLTYPE *GetErrorIndex)(ITfReadingInformationUIElement *, UINT *);
1.393 + HRESULT (STDMETHODCALLTYPE *IsVerticalOrderPreferred)(ITfReadingInformationUIElement *, BOOL *);
1.394 +} ITfReadingInformationUIElementVtbl;
1.395 +
1.396 +struct ITfReadingInformationUIElement
1.397 +{
1.398 + const struct ITfReadingInformationUIElementVtbl *lpVtbl;
1.399 +};
1.400 +
1.401 +typedef struct ITfUIElementVtbl
1.402 +{
1.403 + HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfUIElement *, REFIID, void **);
1.404 + ULONG (STDMETHODCALLTYPE *AddRef)(ITfUIElement *);
1.405 + ULONG (STDMETHODCALLTYPE *Release)(ITfUIElement *);
1.406 + HRESULT (STDMETHODCALLTYPE *GetDescription)(ITfUIElement *, BSTR *);
1.407 + HRESULT (STDMETHODCALLTYPE *GetGUID)(ITfUIElement *, GUID *);
1.408 + HRESULT (STDMETHODCALLTYPE *Show)(ITfUIElement *, BOOL);
1.409 + HRESULT (STDMETHODCALLTYPE *IsShown)(ITfUIElement *, BOOL *);
1.410 +} ITfUIElementVtbl;
1.411 +
1.412 +struct ITfUIElement
1.413 +{
1.414 + const struct ITfUIElementVtbl *lpVtbl;
1.415 +};
1.416 +
1.417 +typedef struct ITfInputProcessorProfileActivationSinkVtbl
1.418 +{
1.419 + HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfInputProcessorProfileActivationSink *, REFIID, void **);
1.420 + ULONG (STDMETHODCALLTYPE *AddRef)(ITfInputProcessorProfileActivationSink *);
1.421 + ULONG (STDMETHODCALLTYPE *Release)(ITfInputProcessorProfileActivationSink *);
1.422 + HRESULT (STDMETHODCALLTYPE *OnActivated)(ITfInputProcessorProfileActivationSink *, DWORD, LANGID, REFCLSID, REFGUID, REFGUID, HKL, DWORD);
1.423 +
1.424 +} ITfInputProcessorProfileActivationSinkVtbl;
1.425 +
1.426 +struct ITfInputProcessorProfileActivationSink
1.427 +{
1.428 + const struct ITfInputProcessorProfileActivationSinkVtbl *lpVtbl;
1.429 +};
1.430 +
1.431 +typedef struct ITfSourceVtbl
1.432 +{
1.433 + HRESULT (STDMETHODCALLTYPE *QueryInterface)(ITfSource *, REFIID, void **);
1.434 + ULONG (STDMETHODCALLTYPE *AddRef)(ITfSource *);
1.435 + ULONG (STDMETHODCALLTYPE *Release)(ITfSource *);
1.436 + HRESULT (STDMETHODCALLTYPE *AdviseSink)(ITfSource *, REFIID, IUnknown *, DWORD *);
1.437 + HRESULT (STDMETHODCALLTYPE *UnadviseSink)(ITfSource *, DWORD);
1.438 +} ITfSourceVtbl;
1.439 +
1.440 +struct ITfSource
1.441 +{
1.442 + const struct ITfSourceVtbl *lpVtbl;
1.443 +};
1.444 +
1.445 +#endif /* _SDL_msctf_h */