zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

spellcheck.h (40956B) - Raw


      1 /*** Autogenerated by WIDL 10.4 from include/spellcheck.idl - Do not edit ***/
      2 
      3 #ifdef _WIN32
      4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      6 #endif
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 #endif
     10 
     11 #ifndef COM_NO_WINDOWS_H
     12 #include <windows.h>
     13 #include <ole2.h>
     14 #endif
     15 
     16 #ifndef __spellcheck_h__
     17 #define __spellcheck_h__
     18 
     19 /* Forward declarations */
     20 
     21 #ifndef __ISpellingError_FWD_DEFINED__
     22 #define __ISpellingError_FWD_DEFINED__
     23 typedef interface ISpellingError ISpellingError;
     24 #ifdef __cplusplus
     25 interface ISpellingError;
     26 #endif /* __cplusplus */
     27 #endif
     28 
     29 #ifndef __IEnumSpellingError_FWD_DEFINED__
     30 #define __IEnumSpellingError_FWD_DEFINED__
     31 typedef interface IEnumSpellingError IEnumSpellingError;
     32 #ifdef __cplusplus
     33 interface IEnumSpellingError;
     34 #endif /* __cplusplus */
     35 #endif
     36 
     37 #ifndef __IOptionDescription_FWD_DEFINED__
     38 #define __IOptionDescription_FWD_DEFINED__
     39 typedef interface IOptionDescription IOptionDescription;
     40 #ifdef __cplusplus
     41 interface IOptionDescription;
     42 #endif /* __cplusplus */
     43 #endif
     44 
     45 #ifndef __ISpellCheckerChangedEventHandler_FWD_DEFINED__
     46 #define __ISpellCheckerChangedEventHandler_FWD_DEFINED__
     47 typedef interface ISpellCheckerChangedEventHandler ISpellCheckerChangedEventHandler;
     48 #ifdef __cplusplus
     49 interface ISpellCheckerChangedEventHandler;
     50 #endif /* __cplusplus */
     51 #endif
     52 
     53 #ifndef __ISpellChecker_FWD_DEFINED__
     54 #define __ISpellChecker_FWD_DEFINED__
     55 typedef interface ISpellChecker ISpellChecker;
     56 #ifdef __cplusplus
     57 interface ISpellChecker;
     58 #endif /* __cplusplus */
     59 #endif
     60 
     61 #ifndef __ISpellChecker2_FWD_DEFINED__
     62 #define __ISpellChecker2_FWD_DEFINED__
     63 typedef interface ISpellChecker2 ISpellChecker2;
     64 #ifdef __cplusplus
     65 interface ISpellChecker2;
     66 #endif /* __cplusplus */
     67 #endif
     68 
     69 #ifndef __ISpellCheckerFactory_FWD_DEFINED__
     70 #define __ISpellCheckerFactory_FWD_DEFINED__
     71 typedef interface ISpellCheckerFactory ISpellCheckerFactory;
     72 #ifdef __cplusplus
     73 interface ISpellCheckerFactory;
     74 #endif /* __cplusplus */
     75 #endif
     76 
     77 #ifndef __IUserDictionariesRegistrar_FWD_DEFINED__
     78 #define __IUserDictionariesRegistrar_FWD_DEFINED__
     79 typedef interface IUserDictionariesRegistrar IUserDictionariesRegistrar;
     80 #ifdef __cplusplus
     81 interface IUserDictionariesRegistrar;
     82 #endif /* __cplusplus */
     83 #endif
     84 
     85 #ifndef __SpellCheckerFactory_FWD_DEFINED__
     86 #define __SpellCheckerFactory_FWD_DEFINED__
     87 #ifdef __cplusplus
     88 typedef class SpellCheckerFactory SpellCheckerFactory;
     89 #else
     90 typedef struct SpellCheckerFactory SpellCheckerFactory;
     91 #endif /* defined __cplusplus */
     92 #endif /* defined __SpellCheckerFactory_FWD_DEFINED__ */
     93 
     94 /* Headers for imported files */
     95 
     96 #include <oaidl.h>
     97 #include <ocidl.h>
     98 
     99 #ifdef __cplusplus
    100 extern "C" {
    101 #endif
    102 
    103 #ifndef MIN_SPELLING_NTDDI
    104 #define MIN_SPELLING_NTDDI NTDDI_WIN8
    105 #endif
    106 #if NTDDI_VERSION >= MIN_SPELLING_NTDDI
    107 #include <winapifamily.h>
    108 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
    109 typedef enum WORDLIST_TYPE {
    110     WORDLIST_TYPE_IGNORE = 0,
    111     WORDLIST_TYPE_ADD = 1,
    112     WORDLIST_TYPE_EXCLUDE = 2,
    113     WORDLIST_TYPE_AUTOCORRECT = 3
    114 } WORDLIST_TYPE;
    115 /*****************************************************************************
    116  * ISpellingError interface
    117  */
    118 #ifndef __ISpellingError_INTERFACE_DEFINED__
    119 #define __ISpellingError_INTERFACE_DEFINED__
    120 
    121 typedef enum CORRECTIVE_ACTION {
    122     CORRECTIVE_ACTION_NONE = 0,
    123     CORRECTIVE_ACTION_GET_SUGGESTIONS = 1,
    124     CORRECTIVE_ACTION_REPLACE = 2,
    125     CORRECTIVE_ACTION_DELETE = 3
    126 } CORRECTIVE_ACTION;
    127 DEFINE_GUID(IID_ISpellingError, 0xb7c82d61, 0xfbe8, 0x4b47, 0x9b,0x27, 0x6c,0x0d,0x2e,0x0d,0xe0,0xa3);
    128 #if defined(__cplusplus) && !defined(CINTERFACE)
    129 MIDL_INTERFACE("b7c82d61-fbe8-4b47-9b27-6c0d2e0de0a3")
    130 ISpellingError : public IUnknown
    131 {
    132     virtual HRESULT STDMETHODCALLTYPE get_StartIndex(
    133         ULONG *val) = 0;
    134 
    135     virtual HRESULT STDMETHODCALLTYPE get_Length(
    136         ULONG *val) = 0;
    137 
    138     virtual HRESULT STDMETHODCALLTYPE get_CorrectiveAction(
    139         CORRECTIVE_ACTION *val) = 0;
    140 
    141     virtual HRESULT STDMETHODCALLTYPE get_Replacement(
    142         LPWSTR *val) = 0;
    143 
    144 };
    145 #ifdef __CRT_UUID_DECL
    146 __CRT_UUID_DECL(ISpellingError, 0xb7c82d61, 0xfbe8, 0x4b47, 0x9b,0x27, 0x6c,0x0d,0x2e,0x0d,0xe0,0xa3)
    147 #endif
    148 #else
    149 typedef struct ISpellingErrorVtbl {
    150     BEGIN_INTERFACE
    151 
    152     /*** IUnknown methods ***/
    153     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    154         ISpellingError *This,
    155         REFIID riid,
    156         void **ppvObject);
    157 
    158     ULONG (STDMETHODCALLTYPE *AddRef)(
    159         ISpellingError *This);
    160 
    161     ULONG (STDMETHODCALLTYPE *Release)(
    162         ISpellingError *This);
    163 
    164     /*** ISpellingError methods ***/
    165     HRESULT (STDMETHODCALLTYPE *get_StartIndex)(
    166         ISpellingError *This,
    167         ULONG *val);
    168 
    169     HRESULT (STDMETHODCALLTYPE *get_Length)(
    170         ISpellingError *This,
    171         ULONG *val);
    172 
    173     HRESULT (STDMETHODCALLTYPE *get_CorrectiveAction)(
    174         ISpellingError *This,
    175         CORRECTIVE_ACTION *val);
    176 
    177     HRESULT (STDMETHODCALLTYPE *get_Replacement)(
    178         ISpellingError *This,
    179         LPWSTR *val);
    180 
    181     END_INTERFACE
    182 } ISpellingErrorVtbl;
    183 
    184 interface ISpellingError {
    185     CONST_VTBL ISpellingErrorVtbl* lpVtbl;
    186 };
    187 
    188 #ifdef COBJMACROS
    189 #ifndef WIDL_C_INLINE_WRAPPERS
    190 /*** IUnknown methods ***/
    191 #define ISpellingError_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    192 #define ISpellingError_AddRef(This) (This)->lpVtbl->AddRef(This)
    193 #define ISpellingError_Release(This) (This)->lpVtbl->Release(This)
    194 /*** ISpellingError methods ***/
    195 #define ISpellingError_get_StartIndex(This,val) (This)->lpVtbl->get_StartIndex(This,val)
    196 #define ISpellingError_get_Length(This,val) (This)->lpVtbl->get_Length(This,val)
    197 #define ISpellingError_get_CorrectiveAction(This,val) (This)->lpVtbl->get_CorrectiveAction(This,val)
    198 #define ISpellingError_get_Replacement(This,val) (This)->lpVtbl->get_Replacement(This,val)
    199 #else
    200 /*** IUnknown methods ***/
    201 static inline HRESULT ISpellingError_QueryInterface(ISpellingError* This,REFIID riid,void **ppvObject) {
    202     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    203 }
    204 static inline ULONG ISpellingError_AddRef(ISpellingError* This) {
    205     return This->lpVtbl->AddRef(This);
    206 }
    207 static inline ULONG ISpellingError_Release(ISpellingError* This) {
    208     return This->lpVtbl->Release(This);
    209 }
    210 /*** ISpellingError methods ***/
    211 static inline HRESULT ISpellingError_get_StartIndex(ISpellingError* This,ULONG *val) {
    212     return This->lpVtbl->get_StartIndex(This,val);
    213 }
    214 static inline HRESULT ISpellingError_get_Length(ISpellingError* This,ULONG *val) {
    215     return This->lpVtbl->get_Length(This,val);
    216 }
    217 static inline HRESULT ISpellingError_get_CorrectiveAction(ISpellingError* This,CORRECTIVE_ACTION *val) {
    218     return This->lpVtbl->get_CorrectiveAction(This,val);
    219 }
    220 static inline HRESULT ISpellingError_get_Replacement(ISpellingError* This,LPWSTR *val) {
    221     return This->lpVtbl->get_Replacement(This,val);
    222 }
    223 #endif
    224 #endif
    225 
    226 #endif
    227 
    228 
    229 #endif  /* __ISpellingError_INTERFACE_DEFINED__ */
    230 
    231 /*****************************************************************************
    232  * IEnumSpellingError interface
    233  */
    234 #ifndef __IEnumSpellingError_INTERFACE_DEFINED__
    235 #define __IEnumSpellingError_INTERFACE_DEFINED__
    236 
    237 DEFINE_GUID(IID_IEnumSpellingError, 0x803e3bd4, 0x2828, 0x4410, 0x82,0x90, 0x41,0x8d,0x1d,0x73,0xc7,0x62);
    238 #if defined(__cplusplus) && !defined(CINTERFACE)
    239 MIDL_INTERFACE("803e3bd4-2828-4410-8290-418d1d73c762")
    240 IEnumSpellingError : public IUnknown
    241 {
    242     virtual HRESULT STDMETHODCALLTYPE Next(
    243         ISpellingError **val) = 0;
    244 
    245 };
    246 #ifdef __CRT_UUID_DECL
    247 __CRT_UUID_DECL(IEnumSpellingError, 0x803e3bd4, 0x2828, 0x4410, 0x82,0x90, 0x41,0x8d,0x1d,0x73,0xc7,0x62)
    248 #endif
    249 #else
    250 typedef struct IEnumSpellingErrorVtbl {
    251     BEGIN_INTERFACE
    252 
    253     /*** IUnknown methods ***/
    254     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    255         IEnumSpellingError *This,
    256         REFIID riid,
    257         void **ppvObject);
    258 
    259     ULONG (STDMETHODCALLTYPE *AddRef)(
    260         IEnumSpellingError *This);
    261 
    262     ULONG (STDMETHODCALLTYPE *Release)(
    263         IEnumSpellingError *This);
    264 
    265     /*** IEnumSpellingError methods ***/
    266     HRESULT (STDMETHODCALLTYPE *Next)(
    267         IEnumSpellingError *This,
    268         ISpellingError **val);
    269 
    270     END_INTERFACE
    271 } IEnumSpellingErrorVtbl;
    272 
    273 interface IEnumSpellingError {
    274     CONST_VTBL IEnumSpellingErrorVtbl* lpVtbl;
    275 };
    276 
    277 #ifdef COBJMACROS
    278 #ifndef WIDL_C_INLINE_WRAPPERS
    279 /*** IUnknown methods ***/
    280 #define IEnumSpellingError_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    281 #define IEnumSpellingError_AddRef(This) (This)->lpVtbl->AddRef(This)
    282 #define IEnumSpellingError_Release(This) (This)->lpVtbl->Release(This)
    283 /*** IEnumSpellingError methods ***/
    284 #define IEnumSpellingError_Next(This,val) (This)->lpVtbl->Next(This,val)
    285 #else
    286 /*** IUnknown methods ***/
    287 static inline HRESULT IEnumSpellingError_QueryInterface(IEnumSpellingError* This,REFIID riid,void **ppvObject) {
    288     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    289 }
    290 static inline ULONG IEnumSpellingError_AddRef(IEnumSpellingError* This) {
    291     return This->lpVtbl->AddRef(This);
    292 }
    293 static inline ULONG IEnumSpellingError_Release(IEnumSpellingError* This) {
    294     return This->lpVtbl->Release(This);
    295 }
    296 /*** IEnumSpellingError methods ***/
    297 static inline HRESULT IEnumSpellingError_Next(IEnumSpellingError* This,ISpellingError **val) {
    298     return This->lpVtbl->Next(This,val);
    299 }
    300 #endif
    301 #endif
    302 
    303 #endif
    304 
    305 
    306 #endif  /* __IEnumSpellingError_INTERFACE_DEFINED__ */
    307 
    308 /*****************************************************************************
    309  * IOptionDescription interface
    310  */
    311 #ifndef __IOptionDescription_INTERFACE_DEFINED__
    312 #define __IOptionDescription_INTERFACE_DEFINED__
    313 
    314 DEFINE_GUID(IID_IOptionDescription, 0x432e5f85, 0x35cf, 0x4606, 0xa8,0x01, 0x6f,0x70,0x27,0x7e,0x1d,0x7a);
    315 #if defined(__cplusplus) && !defined(CINTERFACE)
    316 MIDL_INTERFACE("432e5f85-35cf-4606-a801-6f70277e1d7a")
    317 IOptionDescription : public IUnknown
    318 {
    319     virtual HRESULT STDMETHODCALLTYPE get_Id(
    320         LPWSTR *val) = 0;
    321 
    322     virtual HRESULT STDMETHODCALLTYPE get_Heading(
    323         LPWSTR *val) = 0;
    324 
    325     virtual HRESULT STDMETHODCALLTYPE get_Description(
    326         LPWSTR *val) = 0;
    327 
    328     virtual HRESULT STDMETHODCALLTYPE get_Labels(
    329         IEnumString **val) = 0;
    330 
    331 };
    332 #ifdef __CRT_UUID_DECL
    333 __CRT_UUID_DECL(IOptionDescription, 0x432e5f85, 0x35cf, 0x4606, 0xa8,0x01, 0x6f,0x70,0x27,0x7e,0x1d,0x7a)
    334 #endif
    335 #else
    336 typedef struct IOptionDescriptionVtbl {
    337     BEGIN_INTERFACE
    338 
    339     /*** IUnknown methods ***/
    340     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    341         IOptionDescription *This,
    342         REFIID riid,
    343         void **ppvObject);
    344 
    345     ULONG (STDMETHODCALLTYPE *AddRef)(
    346         IOptionDescription *This);
    347 
    348     ULONG (STDMETHODCALLTYPE *Release)(
    349         IOptionDescription *This);
    350 
    351     /*** IOptionDescription methods ***/
    352     HRESULT (STDMETHODCALLTYPE *get_Id)(
    353         IOptionDescription *This,
    354         LPWSTR *val);
    355 
    356     HRESULT (STDMETHODCALLTYPE *get_Heading)(
    357         IOptionDescription *This,
    358         LPWSTR *val);
    359 
    360     HRESULT (STDMETHODCALLTYPE *get_Description)(
    361         IOptionDescription *This,
    362         LPWSTR *val);
    363 
    364     HRESULT (STDMETHODCALLTYPE *get_Labels)(
    365         IOptionDescription *This,
    366         IEnumString **val);
    367 
    368     END_INTERFACE
    369 } IOptionDescriptionVtbl;
    370 
    371 interface IOptionDescription {
    372     CONST_VTBL IOptionDescriptionVtbl* lpVtbl;
    373 };
    374 
    375 #ifdef COBJMACROS
    376 #ifndef WIDL_C_INLINE_WRAPPERS
    377 /*** IUnknown methods ***/
    378 #define IOptionDescription_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    379 #define IOptionDescription_AddRef(This) (This)->lpVtbl->AddRef(This)
    380 #define IOptionDescription_Release(This) (This)->lpVtbl->Release(This)
    381 /*** IOptionDescription methods ***/
    382 #define IOptionDescription_get_Id(This,val) (This)->lpVtbl->get_Id(This,val)
    383 #define IOptionDescription_get_Heading(This,val) (This)->lpVtbl->get_Heading(This,val)
    384 #define IOptionDescription_get_Description(This,val) (This)->lpVtbl->get_Description(This,val)
    385 #define IOptionDescription_get_Labels(This,val) (This)->lpVtbl->get_Labels(This,val)
    386 #else
    387 /*** IUnknown methods ***/
    388 static inline HRESULT IOptionDescription_QueryInterface(IOptionDescription* This,REFIID riid,void **ppvObject) {
    389     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    390 }
    391 static inline ULONG IOptionDescription_AddRef(IOptionDescription* This) {
    392     return This->lpVtbl->AddRef(This);
    393 }
    394 static inline ULONG IOptionDescription_Release(IOptionDescription* This) {
    395     return This->lpVtbl->Release(This);
    396 }
    397 /*** IOptionDescription methods ***/
    398 static inline HRESULT IOptionDescription_get_Id(IOptionDescription* This,LPWSTR *val) {
    399     return This->lpVtbl->get_Id(This,val);
    400 }
    401 static inline HRESULT IOptionDescription_get_Heading(IOptionDescription* This,LPWSTR *val) {
    402     return This->lpVtbl->get_Heading(This,val);
    403 }
    404 static inline HRESULT IOptionDescription_get_Description(IOptionDescription* This,LPWSTR *val) {
    405     return This->lpVtbl->get_Description(This,val);
    406 }
    407 static inline HRESULT IOptionDescription_get_Labels(IOptionDescription* This,IEnumString **val) {
    408     return This->lpVtbl->get_Labels(This,val);
    409 }
    410 #endif
    411 #endif
    412 
    413 #endif
    414 
    415 
    416 #endif  /* __IOptionDescription_INTERFACE_DEFINED__ */
    417 
    418 #ifndef __ISpellChecker_FWD_DEFINED__
    419 #define __ISpellChecker_FWD_DEFINED__
    420 typedef interface ISpellChecker ISpellChecker;
    421 #ifdef __cplusplus
    422 interface ISpellChecker;
    423 #endif /* __cplusplus */
    424 #endif
    425 
    426 /*****************************************************************************
    427  * ISpellCheckerChangedEventHandler interface
    428  */
    429 #ifndef __ISpellCheckerChangedEventHandler_INTERFACE_DEFINED__
    430 #define __ISpellCheckerChangedEventHandler_INTERFACE_DEFINED__
    431 
    432 DEFINE_GUID(IID_ISpellCheckerChangedEventHandler, 0x0b83a5b0, 0x792f, 0x4eab, 0x97,0x99, 0xac,0xf5,0x2c,0x5e,0xd0,0x8a);
    433 #if defined(__cplusplus) && !defined(CINTERFACE)
    434 MIDL_INTERFACE("0b83a5b0-792f-4eab-9799-acf52c5ed08a")
    435 ISpellCheckerChangedEventHandler : public IUnknown
    436 {
    437     virtual HRESULT STDMETHODCALLTYPE Invoke(
    438         ISpellChecker *sender) = 0;
    439 
    440 };
    441 #ifdef __CRT_UUID_DECL
    442 __CRT_UUID_DECL(ISpellCheckerChangedEventHandler, 0x0b83a5b0, 0x792f, 0x4eab, 0x97,0x99, 0xac,0xf5,0x2c,0x5e,0xd0,0x8a)
    443 #endif
    444 #else
    445 typedef struct ISpellCheckerChangedEventHandlerVtbl {
    446     BEGIN_INTERFACE
    447 
    448     /*** IUnknown methods ***/
    449     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    450         ISpellCheckerChangedEventHandler *This,
    451         REFIID riid,
    452         void **ppvObject);
    453 
    454     ULONG (STDMETHODCALLTYPE *AddRef)(
    455         ISpellCheckerChangedEventHandler *This);
    456 
    457     ULONG (STDMETHODCALLTYPE *Release)(
    458         ISpellCheckerChangedEventHandler *This);
    459 
    460     /*** ISpellCheckerChangedEventHandler methods ***/
    461     HRESULT (STDMETHODCALLTYPE *Invoke)(
    462         ISpellCheckerChangedEventHandler *This,
    463         ISpellChecker *sender);
    464 
    465     END_INTERFACE
    466 } ISpellCheckerChangedEventHandlerVtbl;
    467 
    468 interface ISpellCheckerChangedEventHandler {
    469     CONST_VTBL ISpellCheckerChangedEventHandlerVtbl* lpVtbl;
    470 };
    471 
    472 #ifdef COBJMACROS
    473 #ifndef WIDL_C_INLINE_WRAPPERS
    474 /*** IUnknown methods ***/
    475 #define ISpellCheckerChangedEventHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    476 #define ISpellCheckerChangedEventHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
    477 #define ISpellCheckerChangedEventHandler_Release(This) (This)->lpVtbl->Release(This)
    478 /*** ISpellCheckerChangedEventHandler methods ***/
    479 #define ISpellCheckerChangedEventHandler_Invoke(This,sender) (This)->lpVtbl->Invoke(This,sender)
    480 #else
    481 /*** IUnknown methods ***/
    482 static inline HRESULT ISpellCheckerChangedEventHandler_QueryInterface(ISpellCheckerChangedEventHandler* This,REFIID riid,void **ppvObject) {
    483     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    484 }
    485 static inline ULONG ISpellCheckerChangedEventHandler_AddRef(ISpellCheckerChangedEventHandler* This) {
    486     return This->lpVtbl->AddRef(This);
    487 }
    488 static inline ULONG ISpellCheckerChangedEventHandler_Release(ISpellCheckerChangedEventHandler* This) {
    489     return This->lpVtbl->Release(This);
    490 }
    491 /*** ISpellCheckerChangedEventHandler methods ***/
    492 static inline HRESULT ISpellCheckerChangedEventHandler_Invoke(ISpellCheckerChangedEventHandler* This,ISpellChecker *sender) {
    493     return This->lpVtbl->Invoke(This,sender);
    494 }
    495 #endif
    496 #endif
    497 
    498 #endif
    499 
    500 
    501 #endif  /* __ISpellCheckerChangedEventHandler_INTERFACE_DEFINED__ */
    502 
    503 /*****************************************************************************
    504  * ISpellChecker interface
    505  */
    506 #ifndef __ISpellChecker_INTERFACE_DEFINED__
    507 #define __ISpellChecker_INTERFACE_DEFINED__
    508 
    509 DEFINE_GUID(IID_ISpellChecker, 0xb6fd0b71, 0xe2bc, 0x4653, 0x8d,0x05, 0xf1,0x97,0xe4,0x12,0x77,0x0b);
    510 #if defined(__cplusplus) && !defined(CINTERFACE)
    511 MIDL_INTERFACE("b6fd0b71-e2bc-4653-8d05-f197e412770b")
    512 ISpellChecker : public IUnknown
    513 {
    514     virtual HRESULT STDMETHODCALLTYPE get_LanguageTag(
    515         LPWSTR *val) = 0;
    516 
    517     virtual HRESULT STDMETHODCALLTYPE Check(
    518         LPCWSTR text,
    519         IEnumSpellingError **val) = 0;
    520 
    521     virtual HRESULT STDMETHODCALLTYPE Suggest(
    522         LPCWSTR word,
    523         IEnumString **val) = 0;
    524 
    525     virtual HRESULT STDMETHODCALLTYPE Add(
    526         LPCWSTR word) = 0;
    527 
    528     virtual HRESULT STDMETHODCALLTYPE Ignore(
    529         LPCWSTR word) = 0;
    530 
    531     virtual HRESULT STDMETHODCALLTYPE AutoCorrect(
    532         LPCWSTR from,
    533         LPCWSTR to) = 0;
    534 
    535     virtual HRESULT STDMETHODCALLTYPE GetOptionValue(
    536         LPCWSTR option_id,
    537         BYTE *val) = 0;
    538 
    539     virtual HRESULT STDMETHODCALLTYPE get_OptionIds(
    540         IEnumString **val) = 0;
    541 
    542     virtual HRESULT STDMETHODCALLTYPE get_Id(
    543         LPWSTR *val) = 0;
    544 
    545     virtual HRESULT STDMETHODCALLTYPE get_LocalizedName(
    546         LPWSTR *val) = 0;
    547 
    548     virtual HRESULT STDMETHODCALLTYPE add_SpellCheckerChanged(
    549         ISpellCheckerChangedEventHandler *handler,
    550         DWORD *event_cookie) = 0;
    551 
    552     virtual HRESULT STDMETHODCALLTYPE remove_SpellCheckerChanged(
    553         DWORD event_cookie) = 0;
    554 
    555     virtual HRESULT STDMETHODCALLTYPE GetOptionDescription(
    556         LPCWSTR optionId,
    557         IOptionDescription **val) = 0;
    558 
    559     virtual HRESULT STDMETHODCALLTYPE ComprehensiveCheck(
    560         LPCWSTR text,
    561         IEnumSpellingError **val) = 0;
    562 
    563 };
    564 #ifdef __CRT_UUID_DECL
    565 __CRT_UUID_DECL(ISpellChecker, 0xb6fd0b71, 0xe2bc, 0x4653, 0x8d,0x05, 0xf1,0x97,0xe4,0x12,0x77,0x0b)
    566 #endif
    567 #else
    568 typedef struct ISpellCheckerVtbl {
    569     BEGIN_INTERFACE
    570 
    571     /*** IUnknown methods ***/
    572     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    573         ISpellChecker *This,
    574         REFIID riid,
    575         void **ppvObject);
    576 
    577     ULONG (STDMETHODCALLTYPE *AddRef)(
    578         ISpellChecker *This);
    579 
    580     ULONG (STDMETHODCALLTYPE *Release)(
    581         ISpellChecker *This);
    582 
    583     /*** ISpellChecker methods ***/
    584     HRESULT (STDMETHODCALLTYPE *get_LanguageTag)(
    585         ISpellChecker *This,
    586         LPWSTR *val);
    587 
    588     HRESULT (STDMETHODCALLTYPE *Check)(
    589         ISpellChecker *This,
    590         LPCWSTR text,
    591         IEnumSpellingError **val);
    592 
    593     HRESULT (STDMETHODCALLTYPE *Suggest)(
    594         ISpellChecker *This,
    595         LPCWSTR word,
    596         IEnumString **val);
    597 
    598     HRESULT (STDMETHODCALLTYPE *Add)(
    599         ISpellChecker *This,
    600         LPCWSTR word);
    601 
    602     HRESULT (STDMETHODCALLTYPE *Ignore)(
    603         ISpellChecker *This,
    604         LPCWSTR word);
    605 
    606     HRESULT (STDMETHODCALLTYPE *AutoCorrect)(
    607         ISpellChecker *This,
    608         LPCWSTR from,
    609         LPCWSTR to);
    610 
    611     HRESULT (STDMETHODCALLTYPE *GetOptionValue)(
    612         ISpellChecker *This,
    613         LPCWSTR option_id,
    614         BYTE *val);
    615 
    616     HRESULT (STDMETHODCALLTYPE *get_OptionIds)(
    617         ISpellChecker *This,
    618         IEnumString **val);
    619 
    620     HRESULT (STDMETHODCALLTYPE *get_Id)(
    621         ISpellChecker *This,
    622         LPWSTR *val);
    623 
    624     HRESULT (STDMETHODCALLTYPE *get_LocalizedName)(
    625         ISpellChecker *This,
    626         LPWSTR *val);
    627 
    628     HRESULT (STDMETHODCALLTYPE *add_SpellCheckerChanged)(
    629         ISpellChecker *This,
    630         ISpellCheckerChangedEventHandler *handler,
    631         DWORD *event_cookie);
    632 
    633     HRESULT (STDMETHODCALLTYPE *remove_SpellCheckerChanged)(
    634         ISpellChecker *This,
    635         DWORD event_cookie);
    636 
    637     HRESULT (STDMETHODCALLTYPE *GetOptionDescription)(
    638         ISpellChecker *This,
    639         LPCWSTR optionId,
    640         IOptionDescription **val);
    641 
    642     HRESULT (STDMETHODCALLTYPE *ComprehensiveCheck)(
    643         ISpellChecker *This,
    644         LPCWSTR text,
    645         IEnumSpellingError **val);
    646 
    647     END_INTERFACE
    648 } ISpellCheckerVtbl;
    649 
    650 interface ISpellChecker {
    651     CONST_VTBL ISpellCheckerVtbl* lpVtbl;
    652 };
    653 
    654 #ifdef COBJMACROS
    655 #ifndef WIDL_C_INLINE_WRAPPERS
    656 /*** IUnknown methods ***/
    657 #define ISpellChecker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    658 #define ISpellChecker_AddRef(This) (This)->lpVtbl->AddRef(This)
    659 #define ISpellChecker_Release(This) (This)->lpVtbl->Release(This)
    660 /*** ISpellChecker methods ***/
    661 #define ISpellChecker_get_LanguageTag(This,val) (This)->lpVtbl->get_LanguageTag(This,val)
    662 #define ISpellChecker_Check(This,text,val) (This)->lpVtbl->Check(This,text,val)
    663 #define ISpellChecker_Suggest(This,word,val) (This)->lpVtbl->Suggest(This,word,val)
    664 #define ISpellChecker_Add(This,word) (This)->lpVtbl->Add(This,word)
    665 #define ISpellChecker_Ignore(This,word) (This)->lpVtbl->Ignore(This,word)
    666 #define ISpellChecker_AutoCorrect(This,from,to) (This)->lpVtbl->AutoCorrect(This,from,to)
    667 #define ISpellChecker_GetOptionValue(This,option_id,val) (This)->lpVtbl->GetOptionValue(This,option_id,val)
    668 #define ISpellChecker_get_OptionIds(This,val) (This)->lpVtbl->get_OptionIds(This,val)
    669 #define ISpellChecker_get_Id(This,val) (This)->lpVtbl->get_Id(This,val)
    670 #define ISpellChecker_get_LocalizedName(This,val) (This)->lpVtbl->get_LocalizedName(This,val)
    671 #define ISpellChecker_add_SpellCheckerChanged(This,handler,event_cookie) (This)->lpVtbl->add_SpellCheckerChanged(This,handler,event_cookie)
    672 #define ISpellChecker_remove_SpellCheckerChanged(This,event_cookie) (This)->lpVtbl->remove_SpellCheckerChanged(This,event_cookie)
    673 #define ISpellChecker_GetOptionDescription(This,optionId,val) (This)->lpVtbl->GetOptionDescription(This,optionId,val)
    674 #define ISpellChecker_ComprehensiveCheck(This,text,val) (This)->lpVtbl->ComprehensiveCheck(This,text,val)
    675 #else
    676 /*** IUnknown methods ***/
    677 static inline HRESULT ISpellChecker_QueryInterface(ISpellChecker* This,REFIID riid,void **ppvObject) {
    678     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    679 }
    680 static inline ULONG ISpellChecker_AddRef(ISpellChecker* This) {
    681     return This->lpVtbl->AddRef(This);
    682 }
    683 static inline ULONG ISpellChecker_Release(ISpellChecker* This) {
    684     return This->lpVtbl->Release(This);
    685 }
    686 /*** ISpellChecker methods ***/
    687 static inline HRESULT ISpellChecker_get_LanguageTag(ISpellChecker* This,LPWSTR *val) {
    688     return This->lpVtbl->get_LanguageTag(This,val);
    689 }
    690 static inline HRESULT ISpellChecker_Check(ISpellChecker* This,LPCWSTR text,IEnumSpellingError **val) {
    691     return This->lpVtbl->Check(This,text,val);
    692 }
    693 static inline HRESULT ISpellChecker_Suggest(ISpellChecker* This,LPCWSTR word,IEnumString **val) {
    694     return This->lpVtbl->Suggest(This,word,val);
    695 }
    696 static inline HRESULT ISpellChecker_Add(ISpellChecker* This,LPCWSTR word) {
    697     return This->lpVtbl->Add(This,word);
    698 }
    699 static inline HRESULT ISpellChecker_Ignore(ISpellChecker* This,LPCWSTR word) {
    700     return This->lpVtbl->Ignore(This,word);
    701 }
    702 static inline HRESULT ISpellChecker_AutoCorrect(ISpellChecker* This,LPCWSTR from,LPCWSTR to) {
    703     return This->lpVtbl->AutoCorrect(This,from,to);
    704 }
    705 static inline HRESULT ISpellChecker_GetOptionValue(ISpellChecker* This,LPCWSTR option_id,BYTE *val) {
    706     return This->lpVtbl->GetOptionValue(This,option_id,val);
    707 }
    708 static inline HRESULT ISpellChecker_get_OptionIds(ISpellChecker* This,IEnumString **val) {
    709     return This->lpVtbl->get_OptionIds(This,val);
    710 }
    711 static inline HRESULT ISpellChecker_get_Id(ISpellChecker* This,LPWSTR *val) {
    712     return This->lpVtbl->get_Id(This,val);
    713 }
    714 static inline HRESULT ISpellChecker_get_LocalizedName(ISpellChecker* This,LPWSTR *val) {
    715     return This->lpVtbl->get_LocalizedName(This,val);
    716 }
    717 static inline HRESULT ISpellChecker_add_SpellCheckerChanged(ISpellChecker* This,ISpellCheckerChangedEventHandler *handler,DWORD *event_cookie) {
    718     return This->lpVtbl->add_SpellCheckerChanged(This,handler,event_cookie);
    719 }
    720 static inline HRESULT ISpellChecker_remove_SpellCheckerChanged(ISpellChecker* This,DWORD event_cookie) {
    721     return This->lpVtbl->remove_SpellCheckerChanged(This,event_cookie);
    722 }
    723 static inline HRESULT ISpellChecker_GetOptionDescription(ISpellChecker* This,LPCWSTR optionId,IOptionDescription **val) {
    724     return This->lpVtbl->GetOptionDescription(This,optionId,val);
    725 }
    726 static inline HRESULT ISpellChecker_ComprehensiveCheck(ISpellChecker* This,LPCWSTR text,IEnumSpellingError **val) {
    727     return This->lpVtbl->ComprehensiveCheck(This,text,val);
    728 }
    729 #endif
    730 #endif
    731 
    732 #endif
    733 
    734 
    735 #endif  /* __ISpellChecker_INTERFACE_DEFINED__ */
    736 
    737 /*****************************************************************************
    738  * ISpellChecker2 interface
    739  */
    740 #ifndef __ISpellChecker2_INTERFACE_DEFINED__
    741 #define __ISpellChecker2_INTERFACE_DEFINED__
    742 
    743 DEFINE_GUID(IID_ISpellChecker2, 0xe7ed1c71, 0x87f7, 0x4378, 0xa8,0x40, 0xc9,0x20,0x0d,0xac,0xee,0x47);
    744 #if defined(__cplusplus) && !defined(CINTERFACE)
    745 MIDL_INTERFACE("e7ed1c71-87f7-4378-a840-c9200dacee47")
    746 ISpellChecker2 : public ISpellChecker
    747 {
    748     virtual HRESULT STDMETHODCALLTYPE Remove(
    749         LPCWSTR word) = 0;
    750 
    751 };
    752 #ifdef __CRT_UUID_DECL
    753 __CRT_UUID_DECL(ISpellChecker2, 0xe7ed1c71, 0x87f7, 0x4378, 0xa8,0x40, 0xc9,0x20,0x0d,0xac,0xee,0x47)
    754 #endif
    755 #else
    756 typedef struct ISpellChecker2Vtbl {
    757     BEGIN_INTERFACE
    758 
    759     /*** IUnknown methods ***/
    760     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    761         ISpellChecker2 *This,
    762         REFIID riid,
    763         void **ppvObject);
    764 
    765     ULONG (STDMETHODCALLTYPE *AddRef)(
    766         ISpellChecker2 *This);
    767 
    768     ULONG (STDMETHODCALLTYPE *Release)(
    769         ISpellChecker2 *This);
    770 
    771     /*** ISpellChecker methods ***/
    772     HRESULT (STDMETHODCALLTYPE *get_LanguageTag)(
    773         ISpellChecker2 *This,
    774         LPWSTR *val);
    775 
    776     HRESULT (STDMETHODCALLTYPE *Check)(
    777         ISpellChecker2 *This,
    778         LPCWSTR text,
    779         IEnumSpellingError **val);
    780 
    781     HRESULT (STDMETHODCALLTYPE *Suggest)(
    782         ISpellChecker2 *This,
    783         LPCWSTR word,
    784         IEnumString **val);
    785 
    786     HRESULT (STDMETHODCALLTYPE *Add)(
    787         ISpellChecker2 *This,
    788         LPCWSTR word);
    789 
    790     HRESULT (STDMETHODCALLTYPE *Ignore)(
    791         ISpellChecker2 *This,
    792         LPCWSTR word);
    793 
    794     HRESULT (STDMETHODCALLTYPE *AutoCorrect)(
    795         ISpellChecker2 *This,
    796         LPCWSTR from,
    797         LPCWSTR to);
    798 
    799     HRESULT (STDMETHODCALLTYPE *GetOptionValue)(
    800         ISpellChecker2 *This,
    801         LPCWSTR option_id,
    802         BYTE *val);
    803 
    804     HRESULT (STDMETHODCALLTYPE *get_OptionIds)(
    805         ISpellChecker2 *This,
    806         IEnumString **val);
    807 
    808     HRESULT (STDMETHODCALLTYPE *get_Id)(
    809         ISpellChecker2 *This,
    810         LPWSTR *val);
    811 
    812     HRESULT (STDMETHODCALLTYPE *get_LocalizedName)(
    813         ISpellChecker2 *This,
    814         LPWSTR *val);
    815 
    816     HRESULT (STDMETHODCALLTYPE *add_SpellCheckerChanged)(
    817         ISpellChecker2 *This,
    818         ISpellCheckerChangedEventHandler *handler,
    819         DWORD *event_cookie);
    820 
    821     HRESULT (STDMETHODCALLTYPE *remove_SpellCheckerChanged)(
    822         ISpellChecker2 *This,
    823         DWORD event_cookie);
    824 
    825     HRESULT (STDMETHODCALLTYPE *GetOptionDescription)(
    826         ISpellChecker2 *This,
    827         LPCWSTR optionId,
    828         IOptionDescription **val);
    829 
    830     HRESULT (STDMETHODCALLTYPE *ComprehensiveCheck)(
    831         ISpellChecker2 *This,
    832         LPCWSTR text,
    833         IEnumSpellingError **val);
    834 
    835     /*** ISpellChecker2 methods ***/
    836     HRESULT (STDMETHODCALLTYPE *Remove)(
    837         ISpellChecker2 *This,
    838         LPCWSTR word);
    839 
    840     END_INTERFACE
    841 } ISpellChecker2Vtbl;
    842 
    843 interface ISpellChecker2 {
    844     CONST_VTBL ISpellChecker2Vtbl* lpVtbl;
    845 };
    846 
    847 #ifdef COBJMACROS
    848 #ifndef WIDL_C_INLINE_WRAPPERS
    849 /*** IUnknown methods ***/
    850 #define ISpellChecker2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    851 #define ISpellChecker2_AddRef(This) (This)->lpVtbl->AddRef(This)
    852 #define ISpellChecker2_Release(This) (This)->lpVtbl->Release(This)
    853 /*** ISpellChecker methods ***/
    854 #define ISpellChecker2_get_LanguageTag(This,val) (This)->lpVtbl->get_LanguageTag(This,val)
    855 #define ISpellChecker2_Check(This,text,val) (This)->lpVtbl->Check(This,text,val)
    856 #define ISpellChecker2_Suggest(This,word,val) (This)->lpVtbl->Suggest(This,word,val)
    857 #define ISpellChecker2_Add(This,word) (This)->lpVtbl->Add(This,word)
    858 #define ISpellChecker2_Ignore(This,word) (This)->lpVtbl->Ignore(This,word)
    859 #define ISpellChecker2_AutoCorrect(This,from,to) (This)->lpVtbl->AutoCorrect(This,from,to)
    860 #define ISpellChecker2_GetOptionValue(This,option_id,val) (This)->lpVtbl->GetOptionValue(This,option_id,val)
    861 #define ISpellChecker2_get_OptionIds(This,val) (This)->lpVtbl->get_OptionIds(This,val)
    862 #define ISpellChecker2_get_Id(This,val) (This)->lpVtbl->get_Id(This,val)
    863 #define ISpellChecker2_get_LocalizedName(This,val) (This)->lpVtbl->get_LocalizedName(This,val)
    864 #define ISpellChecker2_add_SpellCheckerChanged(This,handler,event_cookie) (This)->lpVtbl->add_SpellCheckerChanged(This,handler,event_cookie)
    865 #define ISpellChecker2_remove_SpellCheckerChanged(This,event_cookie) (This)->lpVtbl->remove_SpellCheckerChanged(This,event_cookie)
    866 #define ISpellChecker2_GetOptionDescription(This,optionId,val) (This)->lpVtbl->GetOptionDescription(This,optionId,val)
    867 #define ISpellChecker2_ComprehensiveCheck(This,text,val) (This)->lpVtbl->ComprehensiveCheck(This,text,val)
    868 /*** ISpellChecker2 methods ***/
    869 #define ISpellChecker2_Remove(This,word) (This)->lpVtbl->Remove(This,word)
    870 #else
    871 /*** IUnknown methods ***/
    872 static inline HRESULT ISpellChecker2_QueryInterface(ISpellChecker2* This,REFIID riid,void **ppvObject) {
    873     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    874 }
    875 static inline ULONG ISpellChecker2_AddRef(ISpellChecker2* This) {
    876     return This->lpVtbl->AddRef(This);
    877 }
    878 static inline ULONG ISpellChecker2_Release(ISpellChecker2* This) {
    879     return This->lpVtbl->Release(This);
    880 }
    881 /*** ISpellChecker methods ***/
    882 static inline HRESULT ISpellChecker2_get_LanguageTag(ISpellChecker2* This,LPWSTR *val) {
    883     return This->lpVtbl->get_LanguageTag(This,val);
    884 }
    885 static inline HRESULT ISpellChecker2_Check(ISpellChecker2* This,LPCWSTR text,IEnumSpellingError **val) {
    886     return This->lpVtbl->Check(This,text,val);
    887 }
    888 static inline HRESULT ISpellChecker2_Suggest(ISpellChecker2* This,LPCWSTR word,IEnumString **val) {
    889     return This->lpVtbl->Suggest(This,word,val);
    890 }
    891 static inline HRESULT ISpellChecker2_Add(ISpellChecker2* This,LPCWSTR word) {
    892     return This->lpVtbl->Add(This,word);
    893 }
    894 static inline HRESULT ISpellChecker2_Ignore(ISpellChecker2* This,LPCWSTR word) {
    895     return This->lpVtbl->Ignore(This,word);
    896 }
    897 static inline HRESULT ISpellChecker2_AutoCorrect(ISpellChecker2* This,LPCWSTR from,LPCWSTR to) {
    898     return This->lpVtbl->AutoCorrect(This,from,to);
    899 }
    900 static inline HRESULT ISpellChecker2_GetOptionValue(ISpellChecker2* This,LPCWSTR option_id,BYTE *val) {
    901     return This->lpVtbl->GetOptionValue(This,option_id,val);
    902 }
    903 static inline HRESULT ISpellChecker2_get_OptionIds(ISpellChecker2* This,IEnumString **val) {
    904     return This->lpVtbl->get_OptionIds(This,val);
    905 }
    906 static inline HRESULT ISpellChecker2_get_Id(ISpellChecker2* This,LPWSTR *val) {
    907     return This->lpVtbl->get_Id(This,val);
    908 }
    909 static inline HRESULT ISpellChecker2_get_LocalizedName(ISpellChecker2* This,LPWSTR *val) {
    910     return This->lpVtbl->get_LocalizedName(This,val);
    911 }
    912 static inline HRESULT ISpellChecker2_add_SpellCheckerChanged(ISpellChecker2* This,ISpellCheckerChangedEventHandler *handler,DWORD *event_cookie) {
    913     return This->lpVtbl->add_SpellCheckerChanged(This,handler,event_cookie);
    914 }
    915 static inline HRESULT ISpellChecker2_remove_SpellCheckerChanged(ISpellChecker2* This,DWORD event_cookie) {
    916     return This->lpVtbl->remove_SpellCheckerChanged(This,event_cookie);
    917 }
    918 static inline HRESULT ISpellChecker2_GetOptionDescription(ISpellChecker2* This,LPCWSTR optionId,IOptionDescription **val) {
    919     return This->lpVtbl->GetOptionDescription(This,optionId,val);
    920 }
    921 static inline HRESULT ISpellChecker2_ComprehensiveCheck(ISpellChecker2* This,LPCWSTR text,IEnumSpellingError **val) {
    922     return This->lpVtbl->ComprehensiveCheck(This,text,val);
    923 }
    924 /*** ISpellChecker2 methods ***/
    925 static inline HRESULT ISpellChecker2_Remove(ISpellChecker2* This,LPCWSTR word) {
    926     return This->lpVtbl->Remove(This,word);
    927 }
    928 #endif
    929 #endif
    930 
    931 #endif
    932 
    933 
    934 #endif  /* __ISpellChecker2_INTERFACE_DEFINED__ */
    935 
    936 /*****************************************************************************
    937  * ISpellCheckerFactory interface
    938  */
    939 #ifndef __ISpellCheckerFactory_INTERFACE_DEFINED__
    940 #define __ISpellCheckerFactory_INTERFACE_DEFINED__
    941 
    942 DEFINE_GUID(IID_ISpellCheckerFactory, 0x8e018a9d, 0x2415, 0x4677, 0xbf,0x08, 0x79,0x4e,0xa6,0x1f,0x94,0xbb);
    943 #if defined(__cplusplus) && !defined(CINTERFACE)
    944 MIDL_INTERFACE("8e018a9d-2415-4677-bf08-794ea61f94bb")
    945 ISpellCheckerFactory : public IUnknown
    946 {
    947     virtual HRESULT STDMETHODCALLTYPE get_SupportedLanguages(
    948         IEnumString **val) = 0;
    949 
    950     virtual HRESULT STDMETHODCALLTYPE IsSupported(
    951         LPCWSTR languageTag,
    952         WINBOOL *val) = 0;
    953 
    954     virtual HRESULT STDMETHODCALLTYPE CreateSpellChecker(
    955         LPCWSTR languageTag,
    956         ISpellChecker **val) = 0;
    957 
    958 };
    959 #ifdef __CRT_UUID_DECL
    960 __CRT_UUID_DECL(ISpellCheckerFactory, 0x8e018a9d, 0x2415, 0x4677, 0xbf,0x08, 0x79,0x4e,0xa6,0x1f,0x94,0xbb)
    961 #endif
    962 #else
    963 typedef struct ISpellCheckerFactoryVtbl {
    964     BEGIN_INTERFACE
    965 
    966     /*** IUnknown methods ***/
    967     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    968         ISpellCheckerFactory *This,
    969         REFIID riid,
    970         void **ppvObject);
    971 
    972     ULONG (STDMETHODCALLTYPE *AddRef)(
    973         ISpellCheckerFactory *This);
    974 
    975     ULONG (STDMETHODCALLTYPE *Release)(
    976         ISpellCheckerFactory *This);
    977 
    978     /*** ISpellCheckerFactory methods ***/
    979     HRESULT (STDMETHODCALLTYPE *get_SupportedLanguages)(
    980         ISpellCheckerFactory *This,
    981         IEnumString **val);
    982 
    983     HRESULT (STDMETHODCALLTYPE *IsSupported)(
    984         ISpellCheckerFactory *This,
    985         LPCWSTR languageTag,
    986         WINBOOL *val);
    987 
    988     HRESULT (STDMETHODCALLTYPE *CreateSpellChecker)(
    989         ISpellCheckerFactory *This,
    990         LPCWSTR languageTag,
    991         ISpellChecker **val);
    992 
    993     END_INTERFACE
    994 } ISpellCheckerFactoryVtbl;
    995 
    996 interface ISpellCheckerFactory {
    997     CONST_VTBL ISpellCheckerFactoryVtbl* lpVtbl;
    998 };
    999 
   1000 #ifdef COBJMACROS
   1001 #ifndef WIDL_C_INLINE_WRAPPERS
   1002 /*** IUnknown methods ***/
   1003 #define ISpellCheckerFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1004 #define ISpellCheckerFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
   1005 #define ISpellCheckerFactory_Release(This) (This)->lpVtbl->Release(This)
   1006 /*** ISpellCheckerFactory methods ***/
   1007 #define ISpellCheckerFactory_get_SupportedLanguages(This,val) (This)->lpVtbl->get_SupportedLanguages(This,val)
   1008 #define ISpellCheckerFactory_IsSupported(This,languageTag,val) (This)->lpVtbl->IsSupported(This,languageTag,val)
   1009 #define ISpellCheckerFactory_CreateSpellChecker(This,languageTag,val) (This)->lpVtbl->CreateSpellChecker(This,languageTag,val)
   1010 #else
   1011 /*** IUnknown methods ***/
   1012 static inline HRESULT ISpellCheckerFactory_QueryInterface(ISpellCheckerFactory* This,REFIID riid,void **ppvObject) {
   1013     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1014 }
   1015 static inline ULONG ISpellCheckerFactory_AddRef(ISpellCheckerFactory* This) {
   1016     return This->lpVtbl->AddRef(This);
   1017 }
   1018 static inline ULONG ISpellCheckerFactory_Release(ISpellCheckerFactory* This) {
   1019     return This->lpVtbl->Release(This);
   1020 }
   1021 /*** ISpellCheckerFactory methods ***/
   1022 static inline HRESULT ISpellCheckerFactory_get_SupportedLanguages(ISpellCheckerFactory* This,IEnumString **val) {
   1023     return This->lpVtbl->get_SupportedLanguages(This,val);
   1024 }
   1025 static inline HRESULT ISpellCheckerFactory_IsSupported(ISpellCheckerFactory* This,LPCWSTR languageTag,WINBOOL *val) {
   1026     return This->lpVtbl->IsSupported(This,languageTag,val);
   1027 }
   1028 static inline HRESULT ISpellCheckerFactory_CreateSpellChecker(ISpellCheckerFactory* This,LPCWSTR languageTag,ISpellChecker **val) {
   1029     return This->lpVtbl->CreateSpellChecker(This,languageTag,val);
   1030 }
   1031 #endif
   1032 #endif
   1033 
   1034 #endif
   1035 
   1036 
   1037 #endif  /* __ISpellCheckerFactory_INTERFACE_DEFINED__ */
   1038 
   1039 #endif /* WINAPI_PARTITION_APP */
   1040 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
   1041 /*****************************************************************************
   1042  * IUserDictionariesRegistrar interface
   1043  */
   1044 #ifndef __IUserDictionariesRegistrar_INTERFACE_DEFINED__
   1045 #define __IUserDictionariesRegistrar_INTERFACE_DEFINED__
   1046 
   1047 DEFINE_GUID(IID_IUserDictionariesRegistrar, 0xaa176b85, 0x0e12, 0x4844, 0x8e,0x1a, 0xee,0xf1,0xda,0x77,0xf5,0x86);
   1048 #if defined(__cplusplus) && !defined(CINTERFACE)
   1049 MIDL_INTERFACE("aa176b85-0e12-4844-8e1a-eef1da77f586")
   1050 IUserDictionariesRegistrar : public IUnknown
   1051 {
   1052     virtual HRESULT STDMETHODCALLTYPE RegisterUserDictionary(
   1053         LPCWSTR dictionaryPath,
   1054         LPCWSTR languageTag) = 0;
   1055 
   1056     virtual HRESULT STDMETHODCALLTYPE UnregisterUserDictionary(
   1057         LPCWSTR dictionaryPath,
   1058         LPCWSTR languageTag) = 0;
   1059 
   1060 };
   1061 #ifdef __CRT_UUID_DECL
   1062 __CRT_UUID_DECL(IUserDictionariesRegistrar, 0xaa176b85, 0x0e12, 0x4844, 0x8e,0x1a, 0xee,0xf1,0xda,0x77,0xf5,0x86)
   1063 #endif
   1064 #else
   1065 typedef struct IUserDictionariesRegistrarVtbl {
   1066     BEGIN_INTERFACE
   1067 
   1068     /*** IUnknown methods ***/
   1069     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
   1070         IUserDictionariesRegistrar *This,
   1071         REFIID riid,
   1072         void **ppvObject);
   1073 
   1074     ULONG (STDMETHODCALLTYPE *AddRef)(
   1075         IUserDictionariesRegistrar *This);
   1076 
   1077     ULONG (STDMETHODCALLTYPE *Release)(
   1078         IUserDictionariesRegistrar *This);
   1079 
   1080     /*** IUserDictionariesRegistrar methods ***/
   1081     HRESULT (STDMETHODCALLTYPE *RegisterUserDictionary)(
   1082         IUserDictionariesRegistrar *This,
   1083         LPCWSTR dictionaryPath,
   1084         LPCWSTR languageTag);
   1085 
   1086     HRESULT (STDMETHODCALLTYPE *UnregisterUserDictionary)(
   1087         IUserDictionariesRegistrar *This,
   1088         LPCWSTR dictionaryPath,
   1089         LPCWSTR languageTag);
   1090 
   1091     END_INTERFACE
   1092 } IUserDictionariesRegistrarVtbl;
   1093 
   1094 interface IUserDictionariesRegistrar {
   1095     CONST_VTBL IUserDictionariesRegistrarVtbl* lpVtbl;
   1096 };
   1097 
   1098 #ifdef COBJMACROS
   1099 #ifndef WIDL_C_INLINE_WRAPPERS
   1100 /*** IUnknown methods ***/
   1101 #define IUserDictionariesRegistrar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1102 #define IUserDictionariesRegistrar_AddRef(This) (This)->lpVtbl->AddRef(This)
   1103 #define IUserDictionariesRegistrar_Release(This) (This)->lpVtbl->Release(This)
   1104 /*** IUserDictionariesRegistrar methods ***/
   1105 #define IUserDictionariesRegistrar_RegisterUserDictionary(This,dictionaryPath,languageTag) (This)->lpVtbl->RegisterUserDictionary(This,dictionaryPath,languageTag)
   1106 #define IUserDictionariesRegistrar_UnregisterUserDictionary(This,dictionaryPath,languageTag) (This)->lpVtbl->UnregisterUserDictionary(This,dictionaryPath,languageTag)
   1107 #else
   1108 /*** IUnknown methods ***/
   1109 static inline HRESULT IUserDictionariesRegistrar_QueryInterface(IUserDictionariesRegistrar* This,REFIID riid,void **ppvObject) {
   1110     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1111 }
   1112 static inline ULONG IUserDictionariesRegistrar_AddRef(IUserDictionariesRegistrar* This) {
   1113     return This->lpVtbl->AddRef(This);
   1114 }
   1115 static inline ULONG IUserDictionariesRegistrar_Release(IUserDictionariesRegistrar* This) {
   1116     return This->lpVtbl->Release(This);
   1117 }
   1118 /*** IUserDictionariesRegistrar methods ***/
   1119 static inline HRESULT IUserDictionariesRegistrar_RegisterUserDictionary(IUserDictionariesRegistrar* This,LPCWSTR dictionaryPath,LPCWSTR languageTag) {
   1120     return This->lpVtbl->RegisterUserDictionary(This,dictionaryPath,languageTag);
   1121 }
   1122 static inline HRESULT IUserDictionariesRegistrar_UnregisterUserDictionary(IUserDictionariesRegistrar* This,LPCWSTR dictionaryPath,LPCWSTR languageTag) {
   1123     return This->lpVtbl->UnregisterUserDictionary(This,dictionaryPath,languageTag);
   1124 }
   1125 #endif
   1126 #endif
   1127 
   1128 #endif
   1129 
   1130 
   1131 #endif  /* __IUserDictionariesRegistrar_INTERFACE_DEFINED__ */
   1132 
   1133 #endif /* WINAPI_PARTITION_DESKTOP */
   1134 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
   1135 #ifndef __MsSpellCheckLib_LIBRARY_DEFINED__
   1136 #define __MsSpellCheckLib_LIBRARY_DEFINED__
   1137 
   1138 DEFINE_GUID(LIBID_MsSpellCheckLib, 0x4a250e01, 0x61ea, 0x400b, 0xa2,0x7d, 0xbf,0x37,0x44,0xbc,0xc9,0xf5);
   1139 
   1140 /*****************************************************************************
   1141  * SpellCheckerFactory coclass
   1142  */
   1143 
   1144 DEFINE_GUID(CLSID_SpellCheckerFactory, 0x7ab36653, 0x1796, 0x484b, 0xbd,0xfa, 0xe7,0x4f,0x1d,0xb7,0xc1,0xdc);
   1145 
   1146 #ifdef __cplusplus
   1147 class DECLSPEC_UUID("7ab36653-1796-484b-bdfa-e74f1db7c1dc") SpellCheckerFactory;
   1148 #ifdef __CRT_UUID_DECL
   1149 __CRT_UUID_DECL(SpellCheckerFactory, 0x7ab36653, 0x1796, 0x484b, 0xbd,0xfa, 0xe7,0x4f,0x1d,0xb7,0xc1,0xdc)
   1150 #endif
   1151 #endif
   1152 
   1153 #endif /* __MsSpellCheckLib_LIBRARY_DEFINED__ */
   1154 #endif /* WINAPI_PARTITION_APP */
   1155 #endif /* MIN_SPELLING_NTDDI */
   1156 /* Begin additional prototypes for all interfaces */
   1157 
   1158 
   1159 /* End additional prototypes */
   1160 
   1161 #ifdef __cplusplus
   1162 }
   1163 #endif
   1164 
   1165 #endif /* __spellcheck_h__ */