/*** Autogenerated by WIDL 6.4 from include/propsys.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __propsys_h__ #define __propsys_h__ /* Forward declarations */ #ifndef __IInitializeWithFile_FWD_DEFINED__ #define __IInitializeWithFile_FWD_DEFINED__ typedef interface IInitializeWithFile IInitializeWithFile; #ifdef __cplusplus interface IInitializeWithFile; #endif /* __cplusplus */ #endif #ifndef __IInitializeWithStream_FWD_DEFINED__ #define __IInitializeWithStream_FWD_DEFINED__ typedef interface IInitializeWithStream IInitializeWithStream; #ifdef __cplusplus interface IInitializeWithStream; #endif /* __cplusplus */ #endif #ifndef __IPropertyStore_FWD_DEFINED__ #define __IPropertyStore_FWD_DEFINED__ typedef interface IPropertyStore IPropertyStore; #ifdef __cplusplus interface IPropertyStore; #endif /* __cplusplus */ #endif #ifndef __INamedPropertyStore_FWD_DEFINED__ #define __INamedPropertyStore_FWD_DEFINED__ typedef interface INamedPropertyStore INamedPropertyStore; #ifdef __cplusplus interface INamedPropertyStore; #endif /* __cplusplus */ #endif #ifndef __IObjectWithPropertyKey_FWD_DEFINED__ #define __IObjectWithPropertyKey_FWD_DEFINED__ typedef interface IObjectWithPropertyKey IObjectWithPropertyKey; #ifdef __cplusplus interface IObjectWithPropertyKey; #endif /* __cplusplus */ #endif #ifndef __IPropertyChange_FWD_DEFINED__ #define __IPropertyChange_FWD_DEFINED__ typedef interface IPropertyChange IPropertyChange; #ifdef __cplusplus interface IPropertyChange; #endif /* __cplusplus */ #endif #ifndef __IPropertyChangeArray_FWD_DEFINED__ #define __IPropertyChangeArray_FWD_DEFINED__ typedef interface IPropertyChangeArray IPropertyChangeArray; #ifdef __cplusplus interface IPropertyChangeArray; #endif /* __cplusplus */ #endif #ifndef __IPropertyStoreCapabilities_FWD_DEFINED__ #define __IPropertyStoreCapabilities_FWD_DEFINED__ typedef interface IPropertyStoreCapabilities IPropertyStoreCapabilities; #ifdef __cplusplus interface IPropertyStoreCapabilities; #endif /* __cplusplus */ #endif #ifndef __IPropertyStoreCache_FWD_DEFINED__ #define __IPropertyStoreCache_FWD_DEFINED__ typedef interface IPropertyStoreCache IPropertyStoreCache; #ifdef __cplusplus interface IPropertyStoreCache; #endif /* __cplusplus */ #endif #ifndef __IPropertyEnumType_FWD_DEFINED__ #define __IPropertyEnumType_FWD_DEFINED__ typedef interface IPropertyEnumType IPropertyEnumType; #ifdef __cplusplus interface IPropertyEnumType; #endif /* __cplusplus */ #endif #ifndef __IPropertyEnumType2_FWD_DEFINED__ #define __IPropertyEnumType2_FWD_DEFINED__ typedef interface IPropertyEnumType2 IPropertyEnumType2; #ifdef __cplusplus interface IPropertyEnumType2; #endif /* __cplusplus */ #endif #ifndef __IPropertyEnumTypeList_FWD_DEFINED__ #define __IPropertyEnumTypeList_FWD_DEFINED__ typedef interface IPropertyEnumTypeList IPropertyEnumTypeList; #ifdef __cplusplus interface IPropertyEnumTypeList; #endif /* __cplusplus */ #endif #ifndef __IPropertyDescription_FWD_DEFINED__ #define __IPropertyDescription_FWD_DEFINED__ typedef interface IPropertyDescription IPropertyDescription; #ifdef __cplusplus interface IPropertyDescription; #endif /* __cplusplus */ #endif #ifndef __IPropertyDescription2_FWD_DEFINED__ #define __IPropertyDescription2_FWD_DEFINED__ typedef interface IPropertyDescription2 IPropertyDescription2; #ifdef __cplusplus interface IPropertyDescription2; #endif /* __cplusplus */ #endif #ifndef __IPropertyDescriptionAliasInfo_FWD_DEFINED__ #define __IPropertyDescriptionAliasInfo_FWD_DEFINED__ typedef interface IPropertyDescriptionAliasInfo IPropertyDescriptionAliasInfo; #ifdef __cplusplus interface IPropertyDescriptionAliasInfo; #endif /* __cplusplus */ #endif #ifndef __IPropertyDescriptionSearchInfo_FWD_DEFINED__ #define __IPropertyDescriptionSearchInfo_FWD_DEFINED__ typedef interface IPropertyDescriptionSearchInfo IPropertyDescriptionSearchInfo; #ifdef __cplusplus interface IPropertyDescriptionSearchInfo; #endif /* __cplusplus */ #endif #ifndef __IPropertyDescriptionRelatedPropertyInfo_FWD_DEFINED__ #define __IPropertyDescriptionRelatedPropertyInfo_FWD_DEFINED__ typedef interface IPropertyDescriptionRelatedPropertyInfo IPropertyDescriptionRelatedPropertyInfo; #ifdef __cplusplus interface IPropertyDescriptionRelatedPropertyInfo; #endif /* __cplusplus */ #endif #ifndef __IPropertySystem_FWD_DEFINED__ #define __IPropertySystem_FWD_DEFINED__ typedef interface IPropertySystem IPropertySystem; #ifdef __cplusplus interface IPropertySystem; #endif /* __cplusplus */ #endif #ifndef __IPropertyDescriptionList_FWD_DEFINED__ #define __IPropertyDescriptionList_FWD_DEFINED__ typedef interface IPropertyDescriptionList IPropertyDescriptionList; #ifdef __cplusplus interface IPropertyDescriptionList; #endif /* __cplusplus */ #endif #ifndef __IPropertyStoreFactory_FWD_DEFINED__ #define __IPropertyStoreFactory_FWD_DEFINED__ typedef interface IPropertyStoreFactory IPropertyStoreFactory; #ifdef __cplusplus interface IPropertyStoreFactory; #endif /* __cplusplus */ #endif #ifndef __IDelayedPropertyStoreFactory_FWD_DEFINED__ #define __IDelayedPropertyStoreFactory_FWD_DEFINED__ typedef interface IDelayedPropertyStoreFactory IDelayedPropertyStoreFactory; #ifdef __cplusplus interface IDelayedPropertyStoreFactory; #endif /* __cplusplus */ #endif #ifndef __IPersistSerializedPropStorage_FWD_DEFINED__ #define __IPersistSerializedPropStorage_FWD_DEFINED__ typedef interface IPersistSerializedPropStorage IPersistSerializedPropStorage; #ifdef __cplusplus interface IPersistSerializedPropStorage; #endif /* __cplusplus */ #endif #ifndef __IPersistSerializedPropStorage2_FWD_DEFINED__ #define __IPersistSerializedPropStorage2_FWD_DEFINED__ typedef interface IPersistSerializedPropStorage2 IPersistSerializedPropStorage2; #ifdef __cplusplus interface IPersistSerializedPropStorage2; #endif /* __cplusplus */ #endif #ifndef __IPropertySystemChangeNotify_FWD_DEFINED__ #define __IPropertySystemChangeNotify_FWD_DEFINED__ typedef interface IPropertySystemChangeNotify IPropertySystemChangeNotify; #ifdef __cplusplus interface IPropertySystemChangeNotify; #endif /* __cplusplus */ #endif #ifndef __ICreateObject_FWD_DEFINED__ #define __ICreateObject_FWD_DEFINED__ typedef interface ICreateObject ICreateObject; #ifdef __cplusplus interface ICreateObject; #endif /* __cplusplus */ #endif #ifndef __InMemoryPropertyStore_FWD_DEFINED__ #define __InMemoryPropertyStore_FWD_DEFINED__ #ifdef __cplusplus typedef class InMemoryPropertyStore InMemoryPropertyStore; #else typedef struct InMemoryPropertyStore InMemoryPropertyStore; #endif /* defined __cplusplus */ #endif /* defined __InMemoryPropertyStore_FWD_DEFINED__ */ #ifndef __PropertySystem_FWD_DEFINED__ #define __PropertySystem_FWD_DEFINED__ #ifdef __cplusplus typedef class PropertySystem PropertySystem; #else typedef struct PropertySystem PropertySystem; #endif /* defined __cplusplus */ #endif /* defined __PropertySystem_FWD_DEFINED__ */ /* Headers for imported files */ #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif /** * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER within this package. */ #include #ifndef PSSTDAPI #ifdef _PROPSYS_ #define PSSTDAPI STDAPI #define PSSTDAPI_(type) STDAPI_(type) #else #define PSSTDAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE #define PSSTDAPI_(type) EXTERN_C DECLSPEC_IMPORT type STDAPICALLTYPE #endif #endif #if 0 typedef PROPERTYKEY *REFPROPERTYKEY; #endif #include #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) /***************************************************************************** * IInitializeWithFile interface */ #ifndef __IInitializeWithFile_INTERFACE_DEFINED__ #define __IInitializeWithFile_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInitializeWithFile, 0xb7d14566, 0x0509, 0x4cce, 0xa7,0x1f, 0x0a,0x55,0x42,0x33,0xbd,0x9b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b7d14566-0509-4cce-a71f-0a554233bd9b") IInitializeWithFile : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( LPCWSTR pszFilePath, DWORD grfMode) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInitializeWithFile, 0xb7d14566, 0x0509, 0x4cce, 0xa7,0x1f, 0x0a,0x55,0x42,0x33,0xbd,0x9b) #endif #else typedef struct IInitializeWithFileVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInitializeWithFile *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInitializeWithFile *This); ULONG (STDMETHODCALLTYPE *Release)( IInitializeWithFile *This); /*** IInitializeWithFile methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IInitializeWithFile *This, LPCWSTR pszFilePath, DWORD grfMode); END_INTERFACE } IInitializeWithFileVtbl; interface IInitializeWithFile { CONST_VTBL IInitializeWithFileVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInitializeWithFile_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInitializeWithFile_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInitializeWithFile_Release(This) (This)->lpVtbl->Release(This) /*** IInitializeWithFile methods ***/ #define IInitializeWithFile_Initialize(This,pszFilePath,grfMode) (This)->lpVtbl->Initialize(This,pszFilePath,grfMode) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInitializeWithFile_QueryInterface(IInitializeWithFile* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInitializeWithFile_AddRef(IInitializeWithFile* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInitializeWithFile_Release(IInitializeWithFile* This) { return This->lpVtbl->Release(This); } /*** IInitializeWithFile methods ***/ static FORCEINLINE HRESULT IInitializeWithFile_Initialize(IInitializeWithFile* This,LPCWSTR pszFilePath,DWORD grfMode) { return This->lpVtbl->Initialize(This,pszFilePath,grfMode); } #endif #endif #endif #endif /* __IInitializeWithFile_INTERFACE_DEFINED__ */ /***************************************************************************** * IInitializeWithStream interface */ #ifndef __IInitializeWithStream_INTERFACE_DEFINED__ #define __IInitializeWithStream_INTERFACE_DEFINED__ DEFINE_GUID(IID_IInitializeWithStream, 0xb824b49d, 0x22ac, 0x4161, 0xac,0x8a, 0x99,0x16,0xe8,0xfa,0x3f,0x7f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b824b49d-22ac-4161-ac8a-9916e8fa3f7f") IInitializeWithStream : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( IStream *pstream, DWORD grfMode) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IInitializeWithStream, 0xb824b49d, 0x22ac, 0x4161, 0xac,0x8a, 0x99,0x16,0xe8,0xfa,0x3f,0x7f) #endif #else typedef struct IInitializeWithStreamVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IInitializeWithStream *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IInitializeWithStream *This); ULONG (STDMETHODCALLTYPE *Release)( IInitializeWithStream *This); /*** IInitializeWithStream methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IInitializeWithStream *This, IStream *pstream, DWORD grfMode); END_INTERFACE } IInitializeWithStreamVtbl; interface IInitializeWithStream { CONST_VTBL IInitializeWithStreamVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IInitializeWithStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IInitializeWithStream_AddRef(This) (This)->lpVtbl->AddRef(This) #define IInitializeWithStream_Release(This) (This)->lpVtbl->Release(This) /*** IInitializeWithStream methods ***/ #define IInitializeWithStream_Initialize(This,pstream,grfMode) (This)->lpVtbl->Initialize(This,pstream,grfMode) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IInitializeWithStream_QueryInterface(IInitializeWithStream* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IInitializeWithStream_AddRef(IInitializeWithStream* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IInitializeWithStream_Release(IInitializeWithStream* This) { return This->lpVtbl->Release(This); } /*** IInitializeWithStream methods ***/ static FORCEINLINE HRESULT IInitializeWithStream_Initialize(IInitializeWithStream* This,IStream *pstream,DWORD grfMode) { return This->lpVtbl->Initialize(This,pstream,grfMode); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IInitializeWithStream_RemoteInitialize_Proxy( IInitializeWithStream* This, IStream *pstream, DWORD grfMode); void __RPC_STUB IInitializeWithStream_RemoteInitialize_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IInitializeWithStream_Initialize_Proxy( IInitializeWithStream* This, IStream *pstream, DWORD grfMode); HRESULT __RPC_STUB IInitializeWithStream_Initialize_Stub( IInitializeWithStream* This, IStream *pstream, DWORD grfMode); #endif /* __IInitializeWithStream_INTERFACE_DEFINED__ */ #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) /***************************************************************************** * IPropertyStore interface */ #ifndef __IPropertyStore_INTERFACE_DEFINED__ #define __IPropertyStore_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyStore, 0x886d8eeb, 0x8cf2, 0x4446, 0x8d,0x02, 0xcd,0xba,0x1d,0xbd,0xcf,0x99); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("886d8eeb-8cf2-4446-8d02-cdba1dbdcf99") IPropertyStore : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCount( DWORD *cProps) = 0; virtual HRESULT STDMETHODCALLTYPE GetAt( DWORD iProp, PROPERTYKEY *pkey) = 0; virtual HRESULT STDMETHODCALLTYPE GetValue( REFPROPERTYKEY key, PROPVARIANT *pv) = 0; virtual HRESULT STDMETHODCALLTYPE SetValue( REFPROPERTYKEY key, REFPROPVARIANT propvar) = 0; virtual HRESULT STDMETHODCALLTYPE Commit( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyStore, 0x886d8eeb, 0x8cf2, 0x4446, 0x8d,0x02, 0xcd,0xba,0x1d,0xbd,0xcf,0x99) #endif #else typedef struct IPropertyStoreVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyStore *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyStore *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyStore *This); /*** IPropertyStore methods ***/ HRESULT (STDMETHODCALLTYPE *GetCount)( IPropertyStore *This, DWORD *cProps); HRESULT (STDMETHODCALLTYPE *GetAt)( IPropertyStore *This, DWORD iProp, PROPERTYKEY *pkey); HRESULT (STDMETHODCALLTYPE *GetValue)( IPropertyStore *This, REFPROPERTYKEY key, PROPVARIANT *pv); HRESULT (STDMETHODCALLTYPE *SetValue)( IPropertyStore *This, REFPROPERTYKEY key, REFPROPVARIANT propvar); HRESULT (STDMETHODCALLTYPE *Commit)( IPropertyStore *This); END_INTERFACE } IPropertyStoreVtbl; interface IPropertyStore { CONST_VTBL IPropertyStoreVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyStore_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyStore_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyStore_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyStore methods ***/ #define IPropertyStore_GetCount(This,cProps) (This)->lpVtbl->GetCount(This,cProps) #define IPropertyStore_GetAt(This,iProp,pkey) (This)->lpVtbl->GetAt(This,iProp,pkey) #define IPropertyStore_GetValue(This,key,pv) (This)->lpVtbl->GetValue(This,key,pv) #define IPropertyStore_SetValue(This,key,propvar) (This)->lpVtbl->SetValue(This,key,propvar) #define IPropertyStore_Commit(This) (This)->lpVtbl->Commit(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyStore_QueryInterface(IPropertyStore* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyStore_AddRef(IPropertyStore* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyStore_Release(IPropertyStore* This) { return This->lpVtbl->Release(This); } /*** IPropertyStore methods ***/ static FORCEINLINE HRESULT IPropertyStore_GetCount(IPropertyStore* This,DWORD *cProps) { return This->lpVtbl->GetCount(This,cProps); } static FORCEINLINE HRESULT IPropertyStore_GetAt(IPropertyStore* This,DWORD iProp,PROPERTYKEY *pkey) { return This->lpVtbl->GetAt(This,iProp,pkey); } static FORCEINLINE HRESULT IPropertyStore_GetValue(IPropertyStore* This,REFPROPERTYKEY key,PROPVARIANT *pv) { return This->lpVtbl->GetValue(This,key,pv); } static FORCEINLINE HRESULT IPropertyStore_SetValue(IPropertyStore* This,REFPROPERTYKEY key,REFPROPVARIANT propvar) { return This->lpVtbl->SetValue(This,key,propvar); } static FORCEINLINE HRESULT IPropertyStore_Commit(IPropertyStore* This) { return This->lpVtbl->Commit(This); } #endif #endif #endif #endif /* __IPropertyStore_INTERFACE_DEFINED__ */ typedef IPropertyStore *LPPROPERTYSTORE; #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) /***************************************************************************** * INamedPropertyStore interface */ #ifndef __INamedPropertyStore_INTERFACE_DEFINED__ #define __INamedPropertyStore_INTERFACE_DEFINED__ DEFINE_GUID(IID_INamedPropertyStore, 0x71604b0f, 0x97b0, 0x4764, 0x85,0x77, 0x2f,0x13,0xe9,0x8a,0x14,0x22); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("71604b0f-97b0-4764-8577-2f13e98a1422") INamedPropertyStore : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetNamedValue( LPCWSTR pszName, PROPVARIANT *ppropvar) = 0; virtual HRESULT STDMETHODCALLTYPE SetNamedValue( LPCWSTR pszName, REFPROPVARIANT propvar) = 0; virtual HRESULT STDMETHODCALLTYPE GetNameCount( DWORD *pdwCount) = 0; virtual HRESULT STDMETHODCALLTYPE GetNameAt( DWORD iProp, BSTR *pbstrName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INamedPropertyStore, 0x71604b0f, 0x97b0, 0x4764, 0x85,0x77, 0x2f,0x13,0xe9,0x8a,0x14,0x22) #endif #else typedef struct INamedPropertyStoreVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INamedPropertyStore *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INamedPropertyStore *This); ULONG (STDMETHODCALLTYPE *Release)( INamedPropertyStore *This); /*** INamedPropertyStore methods ***/ HRESULT (STDMETHODCALLTYPE *GetNamedValue)( INamedPropertyStore *This, LPCWSTR pszName, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *SetNamedValue)( INamedPropertyStore *This, LPCWSTR pszName, REFPROPVARIANT propvar); HRESULT (STDMETHODCALLTYPE *GetNameCount)( INamedPropertyStore *This, DWORD *pdwCount); HRESULT (STDMETHODCALLTYPE *GetNameAt)( INamedPropertyStore *This, DWORD iProp, BSTR *pbstrName); END_INTERFACE } INamedPropertyStoreVtbl; interface INamedPropertyStore { CONST_VTBL INamedPropertyStoreVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INamedPropertyStore_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INamedPropertyStore_AddRef(This) (This)->lpVtbl->AddRef(This) #define INamedPropertyStore_Release(This) (This)->lpVtbl->Release(This) /*** INamedPropertyStore methods ***/ #define INamedPropertyStore_GetNamedValue(This,pszName,ppropvar) (This)->lpVtbl->GetNamedValue(This,pszName,ppropvar) #define INamedPropertyStore_SetNamedValue(This,pszName,propvar) (This)->lpVtbl->SetNamedValue(This,pszName,propvar) #define INamedPropertyStore_GetNameCount(This,pdwCount) (This)->lpVtbl->GetNameCount(This,pdwCount) #define INamedPropertyStore_GetNameAt(This,iProp,pbstrName) (This)->lpVtbl->GetNameAt(This,iProp,pbstrName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT INamedPropertyStore_QueryInterface(INamedPropertyStore* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG INamedPropertyStore_AddRef(INamedPropertyStore* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG INamedPropertyStore_Release(INamedPropertyStore* This) { return This->lpVtbl->Release(This); } /*** INamedPropertyStore methods ***/ static FORCEINLINE HRESULT INamedPropertyStore_GetNamedValue(INamedPropertyStore* This,LPCWSTR pszName,PROPVARIANT *ppropvar) { return This->lpVtbl->GetNamedValue(This,pszName,ppropvar); } static FORCEINLINE HRESULT INamedPropertyStore_SetNamedValue(INamedPropertyStore* This,LPCWSTR pszName,REFPROPVARIANT propvar) { return This->lpVtbl->SetNamedValue(This,pszName,propvar); } static FORCEINLINE HRESULT INamedPropertyStore_GetNameCount(INamedPropertyStore* This,DWORD *pdwCount) { return This->lpVtbl->GetNameCount(This,pdwCount); } static FORCEINLINE HRESULT INamedPropertyStore_GetNameAt(INamedPropertyStore* This,DWORD iProp,BSTR *pbstrName) { return This->lpVtbl->GetNameAt(This,iProp,pbstrName); } #endif #endif #endif #endif /* __INamedPropertyStore_INTERFACE_DEFINED__ */ typedef enum GETPROPERTYSTOREFLAGS { GPS_DEFAULT = 0x0, GPS_HANDLERPROPERTIESONLY = 0x1, GPS_READWRITE = 0x2, GPS_TEMPORARY = 0x4, GPS_FASTPROPERTIESONLY = 0x8, GPS_OPENSLOWITEM = 0x10, GPS_DELAYCREATION = 0x20, GPS_BESTEFFORT = 0x40, GPS_NO_OPLOCK = 0x80, GPS_PREFERQUERYPROPERTIES = 0x100, GPS_MASK_VALID = 0x1ff } GETPROPERTYSTOREFLAGS; DEFINE_ENUM_FLAG_OPERATORS(GETPROPERTYSTOREFLAGS) /***************************************************************************** * IObjectWithPropertyKey interface */ #ifndef __IObjectWithPropertyKey_INTERFACE_DEFINED__ #define __IObjectWithPropertyKey_INTERFACE_DEFINED__ DEFINE_GUID(IID_IObjectWithPropertyKey, 0xfc0ca0a7, 0xc316, 0x4fd2, 0x90,0x31, 0x3e,0x62,0x8e,0x6d,0x4f,0x23); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("fc0ca0a7-c316-4fd2-9031-3e628e6d4f23") IObjectWithPropertyKey : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetPropertyKey( REFPROPERTYKEY key) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyKey( PROPERTYKEY *pkey) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IObjectWithPropertyKey, 0xfc0ca0a7, 0xc316, 0x4fd2, 0x90,0x31, 0x3e,0x62,0x8e,0x6d,0x4f,0x23) #endif #else typedef struct IObjectWithPropertyKeyVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IObjectWithPropertyKey *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IObjectWithPropertyKey *This); ULONG (STDMETHODCALLTYPE *Release)( IObjectWithPropertyKey *This); /*** IObjectWithPropertyKey methods ***/ HRESULT (STDMETHODCALLTYPE *SetPropertyKey)( IObjectWithPropertyKey *This, REFPROPERTYKEY key); HRESULT (STDMETHODCALLTYPE *GetPropertyKey)( IObjectWithPropertyKey *This, PROPERTYKEY *pkey); END_INTERFACE } IObjectWithPropertyKeyVtbl; interface IObjectWithPropertyKey { CONST_VTBL IObjectWithPropertyKeyVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IObjectWithPropertyKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IObjectWithPropertyKey_AddRef(This) (This)->lpVtbl->AddRef(This) #define IObjectWithPropertyKey_Release(This) (This)->lpVtbl->Release(This) /*** IObjectWithPropertyKey methods ***/ #define IObjectWithPropertyKey_SetPropertyKey(This,key) (This)->lpVtbl->SetPropertyKey(This,key) #define IObjectWithPropertyKey_GetPropertyKey(This,pkey) (This)->lpVtbl->GetPropertyKey(This,pkey) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IObjectWithPropertyKey_QueryInterface(IObjectWithPropertyKey* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IObjectWithPropertyKey_AddRef(IObjectWithPropertyKey* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IObjectWithPropertyKey_Release(IObjectWithPropertyKey* This) { return This->lpVtbl->Release(This); } /*** IObjectWithPropertyKey methods ***/ static FORCEINLINE HRESULT IObjectWithPropertyKey_SetPropertyKey(IObjectWithPropertyKey* This,REFPROPERTYKEY key) { return This->lpVtbl->SetPropertyKey(This,key); } static FORCEINLINE HRESULT IObjectWithPropertyKey_GetPropertyKey(IObjectWithPropertyKey* This,PROPERTYKEY *pkey) { return This->lpVtbl->GetPropertyKey(This,pkey); } #endif #endif #endif #endif /* __IObjectWithPropertyKey_INTERFACE_DEFINED__ */ typedef enum PKA_FLAGS { PKA_SET = 0, PKA_APPEND = 1, PKA_DELETE = 2 } PKA_FLAGS; /***************************************************************************** * IPropertyChange interface */ #ifndef __IPropertyChange_INTERFACE_DEFINED__ #define __IPropertyChange_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyChange, 0xf917bc8a, 0x1bba, 0x4478, 0xa2,0x45, 0x1b,0xde,0x03,0xeb,0x94,0x31); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f917bc8a-1bba-4478-a245-1bde03eb9431") IPropertyChange : public IObjectWithPropertyKey { virtual HRESULT STDMETHODCALLTYPE ApplyToPropVariant( REFPROPVARIANT propvarIn, PROPVARIANT *ppropvarOut) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyChange, 0xf917bc8a, 0x1bba, 0x4478, 0xa2,0x45, 0x1b,0xde,0x03,0xeb,0x94,0x31) #endif #else typedef struct IPropertyChangeVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyChange *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyChange *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyChange *This); /*** IObjectWithPropertyKey methods ***/ HRESULT (STDMETHODCALLTYPE *SetPropertyKey)( IPropertyChange *This, REFPROPERTYKEY key); HRESULT (STDMETHODCALLTYPE *GetPropertyKey)( IPropertyChange *This, PROPERTYKEY *pkey); /*** IPropertyChange methods ***/ HRESULT (STDMETHODCALLTYPE *ApplyToPropVariant)( IPropertyChange *This, REFPROPVARIANT propvarIn, PROPVARIANT *ppropvarOut); END_INTERFACE } IPropertyChangeVtbl; interface IPropertyChange { CONST_VTBL IPropertyChangeVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyChange_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyChange_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyChange_Release(This) (This)->lpVtbl->Release(This) /*** IObjectWithPropertyKey methods ***/ #define IPropertyChange_SetPropertyKey(This,key) (This)->lpVtbl->SetPropertyKey(This,key) #define IPropertyChange_GetPropertyKey(This,pkey) (This)->lpVtbl->GetPropertyKey(This,pkey) /*** IPropertyChange methods ***/ #define IPropertyChange_ApplyToPropVariant(This,propvarIn,ppropvarOut) (This)->lpVtbl->ApplyToPropVariant(This,propvarIn,ppropvarOut) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyChange_QueryInterface(IPropertyChange* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyChange_AddRef(IPropertyChange* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyChange_Release(IPropertyChange* This) { return This->lpVtbl->Release(This); } /*** IObjectWithPropertyKey methods ***/ static FORCEINLINE HRESULT IPropertyChange_SetPropertyKey(IPropertyChange* This,REFPROPERTYKEY key) { return This->lpVtbl->SetPropertyKey(This,key); } static FORCEINLINE HRESULT IPropertyChange_GetPropertyKey(IPropertyChange* This,PROPERTYKEY *pkey) { return This->lpVtbl->GetPropertyKey(This,pkey); } /*** IPropertyChange methods ***/ static FORCEINLINE HRESULT IPropertyChange_ApplyToPropVariant(IPropertyChange* This,REFPROPVARIANT propvarIn,PROPVARIANT *ppropvarOut) { return This->lpVtbl->ApplyToPropVariant(This,propvarIn,ppropvarOut); } #endif #endif #endif #endif /* __IPropertyChange_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyChangeArray interface */ #ifndef __IPropertyChangeArray_INTERFACE_DEFINED__ #define __IPropertyChangeArray_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyChangeArray, 0x380f5cad, 0x1b5e, 0x42f2, 0x80,0x5d, 0x63,0x7f,0xd3,0x92,0xd3,0x1e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("380f5cad-1b5e-42f2-805d-637fd392d31e") IPropertyChangeArray : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCount( UINT *pcOperations) = 0; virtual HRESULT STDMETHODCALLTYPE GetAt( UINT iIndex, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE InsertAt( UINT iIndex, IPropertyChange *ppropChange) = 0; virtual HRESULT STDMETHODCALLTYPE Append( IPropertyChange *ppropChange) = 0; virtual HRESULT STDMETHODCALLTYPE AppendOrReplace( IPropertyChange *ppropChange) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAt( UINT iIndex) = 0; virtual HRESULT STDMETHODCALLTYPE IsKeyInArray( REFPROPERTYKEY key) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyChangeArray, 0x380f5cad, 0x1b5e, 0x42f2, 0x80,0x5d, 0x63,0x7f,0xd3,0x92,0xd3,0x1e) #endif #else typedef struct IPropertyChangeArrayVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyChangeArray *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyChangeArray *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyChangeArray *This); /*** IPropertyChangeArray methods ***/ HRESULT (STDMETHODCALLTYPE *GetCount)( IPropertyChangeArray *This, UINT *pcOperations); HRESULT (STDMETHODCALLTYPE *GetAt)( IPropertyChangeArray *This, UINT iIndex, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *InsertAt)( IPropertyChangeArray *This, UINT iIndex, IPropertyChange *ppropChange); HRESULT (STDMETHODCALLTYPE *Append)( IPropertyChangeArray *This, IPropertyChange *ppropChange); HRESULT (STDMETHODCALLTYPE *AppendOrReplace)( IPropertyChangeArray *This, IPropertyChange *ppropChange); HRESULT (STDMETHODCALLTYPE *RemoveAt)( IPropertyChangeArray *This, UINT iIndex); HRESULT (STDMETHODCALLTYPE *IsKeyInArray)( IPropertyChangeArray *This, REFPROPERTYKEY key); END_INTERFACE } IPropertyChangeArrayVtbl; interface IPropertyChangeArray { CONST_VTBL IPropertyChangeArrayVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyChangeArray_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyChangeArray_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyChangeArray_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyChangeArray methods ***/ #define IPropertyChangeArray_GetCount(This,pcOperations) (This)->lpVtbl->GetCount(This,pcOperations) #define IPropertyChangeArray_GetAt(This,iIndex,riid,ppv) (This)->lpVtbl->GetAt(This,iIndex,riid,ppv) #define IPropertyChangeArray_InsertAt(This,iIndex,ppropChange) (This)->lpVtbl->InsertAt(This,iIndex,ppropChange) #define IPropertyChangeArray_Append(This,ppropChange) (This)->lpVtbl->Append(This,ppropChange) #define IPropertyChangeArray_AppendOrReplace(This,ppropChange) (This)->lpVtbl->AppendOrReplace(This,ppropChange) #define IPropertyChangeArray_RemoveAt(This,iIndex) (This)->lpVtbl->RemoveAt(This,iIndex) #define IPropertyChangeArray_IsKeyInArray(This,key) (This)->lpVtbl->IsKeyInArray(This,key) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyChangeArray_QueryInterface(IPropertyChangeArray* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyChangeArray_AddRef(IPropertyChangeArray* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyChangeArray_Release(IPropertyChangeArray* This) { return This->lpVtbl->Release(This); } /*** IPropertyChangeArray methods ***/ static FORCEINLINE HRESULT IPropertyChangeArray_GetCount(IPropertyChangeArray* This,UINT *pcOperations) { return This->lpVtbl->GetCount(This,pcOperations); } static FORCEINLINE HRESULT IPropertyChangeArray_GetAt(IPropertyChangeArray* This,UINT iIndex,REFIID riid,void **ppv) { return This->lpVtbl->GetAt(This,iIndex,riid,ppv); } static FORCEINLINE HRESULT IPropertyChangeArray_InsertAt(IPropertyChangeArray* This,UINT iIndex,IPropertyChange *ppropChange) { return This->lpVtbl->InsertAt(This,iIndex,ppropChange); } static FORCEINLINE HRESULT IPropertyChangeArray_Append(IPropertyChangeArray* This,IPropertyChange *ppropChange) { return This->lpVtbl->Append(This,ppropChange); } static FORCEINLINE HRESULT IPropertyChangeArray_AppendOrReplace(IPropertyChangeArray* This,IPropertyChange *ppropChange) { return This->lpVtbl->AppendOrReplace(This,ppropChange); } static FORCEINLINE HRESULT IPropertyChangeArray_RemoveAt(IPropertyChangeArray* This,UINT iIndex) { return This->lpVtbl->RemoveAt(This,iIndex); } static FORCEINLINE HRESULT IPropertyChangeArray_IsKeyInArray(IPropertyChangeArray* This,REFPROPERTYKEY key) { return This->lpVtbl->IsKeyInArray(This,key); } #endif #endif #endif #endif /* __IPropertyChangeArray_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyStoreCapabilities interface */ #ifndef __IPropertyStoreCapabilities_INTERFACE_DEFINED__ #define __IPropertyStoreCapabilities_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyStoreCapabilities, 0xc8e2d566, 0x186e, 0x4d49, 0xbf,0x41, 0x69,0x09,0xea,0xd5,0x6a,0xcc); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c8e2d566-186e-4d49-bf41-6909ead56acc") IPropertyStoreCapabilities : public IUnknown { virtual HRESULT STDMETHODCALLTYPE IsPropertyWritable( REFPROPERTYKEY key) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyStoreCapabilities, 0xc8e2d566, 0x186e, 0x4d49, 0xbf,0x41, 0x69,0x09,0xea,0xd5,0x6a,0xcc) #endif #else typedef struct IPropertyStoreCapabilitiesVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyStoreCapabilities *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyStoreCapabilities *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyStoreCapabilities *This); /*** IPropertyStoreCapabilities methods ***/ HRESULT (STDMETHODCALLTYPE *IsPropertyWritable)( IPropertyStoreCapabilities *This, REFPROPERTYKEY key); END_INTERFACE } IPropertyStoreCapabilitiesVtbl; interface IPropertyStoreCapabilities { CONST_VTBL IPropertyStoreCapabilitiesVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyStoreCapabilities_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyStoreCapabilities_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyStoreCapabilities_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyStoreCapabilities methods ***/ #define IPropertyStoreCapabilities_IsPropertyWritable(This,key) (This)->lpVtbl->IsPropertyWritable(This,key) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyStoreCapabilities_QueryInterface(IPropertyStoreCapabilities* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyStoreCapabilities_AddRef(IPropertyStoreCapabilities* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyStoreCapabilities_Release(IPropertyStoreCapabilities* This) { return This->lpVtbl->Release(This); } /*** IPropertyStoreCapabilities methods ***/ static FORCEINLINE HRESULT IPropertyStoreCapabilities_IsPropertyWritable(IPropertyStoreCapabilities* This,REFPROPERTYKEY key) { return This->lpVtbl->IsPropertyWritable(This,key); } #endif #endif #endif #endif /* __IPropertyStoreCapabilities_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyStoreCache interface */ #ifndef __IPropertyStoreCache_INTERFACE_DEFINED__ #define __IPropertyStoreCache_INTERFACE_DEFINED__ typedef enum PSC_STATE { PSC_NORMAL = 0, PSC_NOTINSOURCE = 1, PSC_DIRTY = 2, PSC_READONLY = 3 } PSC_STATE; DEFINE_GUID(IID_IPropertyStoreCache, 0x3017056d, 0x9a91, 0x4e90, 0x93,0x7d, 0x74,0x6c,0x72,0xab,0xbf,0x4f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3017056d-9a91-4e90-937d-746c72abbf4f") IPropertyStoreCache : public IPropertyStore { virtual HRESULT STDMETHODCALLTYPE GetState( REFPROPERTYKEY key, PSC_STATE *pstate) = 0; virtual HRESULT STDMETHODCALLTYPE GetValueAndState( REFPROPERTYKEY key, PROPVARIANT *ppropvar, PSC_STATE *pstate) = 0; virtual HRESULT STDMETHODCALLTYPE SetState( REFPROPERTYKEY key, PSC_STATE state) = 0; virtual HRESULT STDMETHODCALLTYPE SetValueAndState( REFPROPERTYKEY key, const PROPVARIANT *ppropvar, PSC_STATE state) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyStoreCache, 0x3017056d, 0x9a91, 0x4e90, 0x93,0x7d, 0x74,0x6c,0x72,0xab,0xbf,0x4f) #endif #else typedef struct IPropertyStoreCacheVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyStoreCache *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyStoreCache *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyStoreCache *This); /*** IPropertyStore methods ***/ HRESULT (STDMETHODCALLTYPE *GetCount)( IPropertyStoreCache *This, DWORD *cProps); HRESULT (STDMETHODCALLTYPE *GetAt)( IPropertyStoreCache *This, DWORD iProp, PROPERTYKEY *pkey); HRESULT (STDMETHODCALLTYPE *GetValue)( IPropertyStoreCache *This, REFPROPERTYKEY key, PROPVARIANT *pv); HRESULT (STDMETHODCALLTYPE *SetValue)( IPropertyStoreCache *This, REFPROPERTYKEY key, REFPROPVARIANT propvar); HRESULT (STDMETHODCALLTYPE *Commit)( IPropertyStoreCache *This); /*** IPropertyStoreCache methods ***/ HRESULT (STDMETHODCALLTYPE *GetState)( IPropertyStoreCache *This, REFPROPERTYKEY key, PSC_STATE *pstate); HRESULT (STDMETHODCALLTYPE *GetValueAndState)( IPropertyStoreCache *This, REFPROPERTYKEY key, PROPVARIANT *ppropvar, PSC_STATE *pstate); HRESULT (STDMETHODCALLTYPE *SetState)( IPropertyStoreCache *This, REFPROPERTYKEY key, PSC_STATE state); HRESULT (STDMETHODCALLTYPE *SetValueAndState)( IPropertyStoreCache *This, REFPROPERTYKEY key, const PROPVARIANT *ppropvar, PSC_STATE state); END_INTERFACE } IPropertyStoreCacheVtbl; interface IPropertyStoreCache { CONST_VTBL IPropertyStoreCacheVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyStoreCache_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyStoreCache_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyStoreCache_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyStore methods ***/ #define IPropertyStoreCache_GetCount(This,cProps) (This)->lpVtbl->GetCount(This,cProps) #define IPropertyStoreCache_GetAt(This,iProp,pkey) (This)->lpVtbl->GetAt(This,iProp,pkey) #define IPropertyStoreCache_GetValue(This,key,pv) (This)->lpVtbl->GetValue(This,key,pv) #define IPropertyStoreCache_SetValue(This,key,propvar) (This)->lpVtbl->SetValue(This,key,propvar) #define IPropertyStoreCache_Commit(This) (This)->lpVtbl->Commit(This) /*** IPropertyStoreCache methods ***/ #define IPropertyStoreCache_GetState(This,key,pstate) (This)->lpVtbl->GetState(This,key,pstate) #define IPropertyStoreCache_GetValueAndState(This,key,ppropvar,pstate) (This)->lpVtbl->GetValueAndState(This,key,ppropvar,pstate) #define IPropertyStoreCache_SetState(This,key,state) (This)->lpVtbl->SetState(This,key,state) #define IPropertyStoreCache_SetValueAndState(This,key,ppropvar,state) (This)->lpVtbl->SetValueAndState(This,key,ppropvar,state) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyStoreCache_QueryInterface(IPropertyStoreCache* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyStoreCache_AddRef(IPropertyStoreCache* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyStoreCache_Release(IPropertyStoreCache* This) { return This->lpVtbl->Release(This); } /*** IPropertyStore methods ***/ static FORCEINLINE HRESULT IPropertyStoreCache_GetCount(IPropertyStoreCache* This,DWORD *cProps) { return This->lpVtbl->GetCount(This,cProps); } static FORCEINLINE HRESULT IPropertyStoreCache_GetAt(IPropertyStoreCache* This,DWORD iProp,PROPERTYKEY *pkey) { return This->lpVtbl->GetAt(This,iProp,pkey); } static FORCEINLINE HRESULT IPropertyStoreCache_GetValue(IPropertyStoreCache* This,REFPROPERTYKEY key,PROPVARIANT *pv) { return This->lpVtbl->GetValue(This,key,pv); } static FORCEINLINE HRESULT IPropertyStoreCache_SetValue(IPropertyStoreCache* This,REFPROPERTYKEY key,REFPROPVARIANT propvar) { return This->lpVtbl->SetValue(This,key,propvar); } static FORCEINLINE HRESULT IPropertyStoreCache_Commit(IPropertyStoreCache* This) { return This->lpVtbl->Commit(This); } /*** IPropertyStoreCache methods ***/ static FORCEINLINE HRESULT IPropertyStoreCache_GetState(IPropertyStoreCache* This,REFPROPERTYKEY key,PSC_STATE *pstate) { return This->lpVtbl->GetState(This,key,pstate); } static FORCEINLINE HRESULT IPropertyStoreCache_GetValueAndState(IPropertyStoreCache* This,REFPROPERTYKEY key,PROPVARIANT *ppropvar,PSC_STATE *pstate) { return This->lpVtbl->GetValueAndState(This,key,ppropvar,pstate); } static FORCEINLINE HRESULT IPropertyStoreCache_SetState(IPropertyStoreCache* This,REFPROPERTYKEY key,PSC_STATE state) { return This->lpVtbl->SetState(This,key,state); } static FORCEINLINE HRESULT IPropertyStoreCache_SetValueAndState(IPropertyStoreCache* This,REFPROPERTYKEY key,const PROPVARIANT *ppropvar,PSC_STATE state) { return This->lpVtbl->SetValueAndState(This,key,ppropvar,state); } #endif #endif #endif #endif /* __IPropertyStoreCache_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyEnumType interface */ #ifndef __IPropertyEnumType_INTERFACE_DEFINED__ #define __IPropertyEnumType_INTERFACE_DEFINED__ typedef enum PROPENUMTYPE { PET_DISCRETEVALUE = 0, PET_RANGEDVALUE = 1, PET_DEFAULTVALUE = 2, PET_ENDRANGE = 3 } PROPENUMTYPE; DEFINE_GUID(IID_IPropertyEnumType, 0x11e1fbf9, 0x2d56, 0x4a6b, 0x8d,0xb3, 0x7c,0xd1,0x93,0xa4,0x71,0xf2); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("11e1fbf9-2d56-4a6b-8db3-7cd193a471f2") IPropertyEnumType : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetEnumType( PROPENUMTYPE *penumtype) = 0; virtual HRESULT STDMETHODCALLTYPE GetValue( PROPVARIANT *ppropvar) = 0; virtual HRESULT STDMETHODCALLTYPE GetRangeMinValue( PROPVARIANT *ppropvarMin) = 0; virtual HRESULT STDMETHODCALLTYPE GetRangeSetValue( PROPVARIANT *ppropvarSet) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplayText( LPWSTR *ppszDisplay) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyEnumType, 0x11e1fbf9, 0x2d56, 0x4a6b, 0x8d,0xb3, 0x7c,0xd1,0x93,0xa4,0x71,0xf2) #endif #else typedef struct IPropertyEnumTypeVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyEnumType *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyEnumType *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyEnumType *This); /*** IPropertyEnumType methods ***/ HRESULT (STDMETHODCALLTYPE *GetEnumType)( IPropertyEnumType *This, PROPENUMTYPE *penumtype); HRESULT (STDMETHODCALLTYPE *GetValue)( IPropertyEnumType *This, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *GetRangeMinValue)( IPropertyEnumType *This, PROPVARIANT *ppropvarMin); HRESULT (STDMETHODCALLTYPE *GetRangeSetValue)( IPropertyEnumType *This, PROPVARIANT *ppropvarSet); HRESULT (STDMETHODCALLTYPE *GetDisplayText)( IPropertyEnumType *This, LPWSTR *ppszDisplay); END_INTERFACE } IPropertyEnumTypeVtbl; interface IPropertyEnumType { CONST_VTBL IPropertyEnumTypeVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyEnumType_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyEnumType_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyEnumType_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyEnumType methods ***/ #define IPropertyEnumType_GetEnumType(This,penumtype) (This)->lpVtbl->GetEnumType(This,penumtype) #define IPropertyEnumType_GetValue(This,ppropvar) (This)->lpVtbl->GetValue(This,ppropvar) #define IPropertyEnumType_GetRangeMinValue(This,ppropvarMin) (This)->lpVtbl->GetRangeMinValue(This,ppropvarMin) #define IPropertyEnumType_GetRangeSetValue(This,ppropvarSet) (This)->lpVtbl->GetRangeSetValue(This,ppropvarSet) #define IPropertyEnumType_GetDisplayText(This,ppszDisplay) (This)->lpVtbl->GetDisplayText(This,ppszDisplay) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyEnumType_QueryInterface(IPropertyEnumType* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyEnumType_AddRef(IPropertyEnumType* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyEnumType_Release(IPropertyEnumType* This) { return This->lpVtbl->Release(This); } /*** IPropertyEnumType methods ***/ static FORCEINLINE HRESULT IPropertyEnumType_GetEnumType(IPropertyEnumType* This,PROPENUMTYPE *penumtype) { return This->lpVtbl->GetEnumType(This,penumtype); } static FORCEINLINE HRESULT IPropertyEnumType_GetValue(IPropertyEnumType* This,PROPVARIANT *ppropvar) { return This->lpVtbl->GetValue(This,ppropvar); } static FORCEINLINE HRESULT IPropertyEnumType_GetRangeMinValue(IPropertyEnumType* This,PROPVARIANT *ppropvarMin) { return This->lpVtbl->GetRangeMinValue(This,ppropvarMin); } static FORCEINLINE HRESULT IPropertyEnumType_GetRangeSetValue(IPropertyEnumType* This,PROPVARIANT *ppropvarSet) { return This->lpVtbl->GetRangeSetValue(This,ppropvarSet); } static FORCEINLINE HRESULT IPropertyEnumType_GetDisplayText(IPropertyEnumType* This,LPWSTR *ppszDisplay) { return This->lpVtbl->GetDisplayText(This,ppszDisplay); } #endif #endif #endif #endif /* __IPropertyEnumType_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyEnumType2 interface */ #ifndef __IPropertyEnumType2_INTERFACE_DEFINED__ #define __IPropertyEnumType2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyEnumType2, 0x9b6e051c, 0x5ddd, 0x4321, 0x90,0x70, 0xfe,0x2a,0xcb,0x55,0xe7,0x94); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b6e051c-5ddd-4321-9070-fe2acb55e794") IPropertyEnumType2 : public IPropertyEnumType { virtual HRESULT STDMETHODCALLTYPE GetImageReference( LPWSTR *ppszImageRes) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyEnumType2, 0x9b6e051c, 0x5ddd, 0x4321, 0x90,0x70, 0xfe,0x2a,0xcb,0x55,0xe7,0x94) #endif #else typedef struct IPropertyEnumType2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyEnumType2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyEnumType2 *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyEnumType2 *This); /*** IPropertyEnumType methods ***/ HRESULT (STDMETHODCALLTYPE *GetEnumType)( IPropertyEnumType2 *This, PROPENUMTYPE *penumtype); HRESULT (STDMETHODCALLTYPE *GetValue)( IPropertyEnumType2 *This, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *GetRangeMinValue)( IPropertyEnumType2 *This, PROPVARIANT *ppropvarMin); HRESULT (STDMETHODCALLTYPE *GetRangeSetValue)( IPropertyEnumType2 *This, PROPVARIANT *ppropvarSet); HRESULT (STDMETHODCALLTYPE *GetDisplayText)( IPropertyEnumType2 *This, LPWSTR *ppszDisplay); /*** IPropertyEnumType2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetImageReference)( IPropertyEnumType2 *This, LPWSTR *ppszImageRes); END_INTERFACE } IPropertyEnumType2Vtbl; interface IPropertyEnumType2 { CONST_VTBL IPropertyEnumType2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyEnumType2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyEnumType2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyEnumType2_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyEnumType methods ***/ #define IPropertyEnumType2_GetEnumType(This,penumtype) (This)->lpVtbl->GetEnumType(This,penumtype) #define IPropertyEnumType2_GetValue(This,ppropvar) (This)->lpVtbl->GetValue(This,ppropvar) #define IPropertyEnumType2_GetRangeMinValue(This,ppropvarMin) (This)->lpVtbl->GetRangeMinValue(This,ppropvarMin) #define IPropertyEnumType2_GetRangeSetValue(This,ppropvarSet) (This)->lpVtbl->GetRangeSetValue(This,ppropvarSet) #define IPropertyEnumType2_GetDisplayText(This,ppszDisplay) (This)->lpVtbl->GetDisplayText(This,ppszDisplay) /*** IPropertyEnumType2 methods ***/ #define IPropertyEnumType2_GetImageReference(This,ppszImageRes) (This)->lpVtbl->GetImageReference(This,ppszImageRes) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyEnumType2_QueryInterface(IPropertyEnumType2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyEnumType2_AddRef(IPropertyEnumType2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyEnumType2_Release(IPropertyEnumType2* This) { return This->lpVtbl->Release(This); } /*** IPropertyEnumType methods ***/ static FORCEINLINE HRESULT IPropertyEnumType2_GetEnumType(IPropertyEnumType2* This,PROPENUMTYPE *penumtype) { return This->lpVtbl->GetEnumType(This,penumtype); } static FORCEINLINE HRESULT IPropertyEnumType2_GetValue(IPropertyEnumType2* This,PROPVARIANT *ppropvar) { return This->lpVtbl->GetValue(This,ppropvar); } static FORCEINLINE HRESULT IPropertyEnumType2_GetRangeMinValue(IPropertyEnumType2* This,PROPVARIANT *ppropvarMin) { return This->lpVtbl->GetRangeMinValue(This,ppropvarMin); } static FORCEINLINE HRESULT IPropertyEnumType2_GetRangeSetValue(IPropertyEnumType2* This,PROPVARIANT *ppropvarSet) { return This->lpVtbl->GetRangeSetValue(This,ppropvarSet); } static FORCEINLINE HRESULT IPropertyEnumType2_GetDisplayText(IPropertyEnumType2* This,LPWSTR *ppszDisplay) { return This->lpVtbl->GetDisplayText(This,ppszDisplay); } /*** IPropertyEnumType2 methods ***/ static FORCEINLINE HRESULT IPropertyEnumType2_GetImageReference(IPropertyEnumType2* This,LPWSTR *ppszImageRes) { return This->lpVtbl->GetImageReference(This,ppszImageRes); } #endif #endif #endif #endif /* __IPropertyEnumType2_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyEnumTypeList interface */ #ifndef __IPropertyEnumTypeList_INTERFACE_DEFINED__ #define __IPropertyEnumTypeList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyEnumTypeList, 0xa99400f4, 0x3d84, 0x4557, 0x94,0xba, 0x12,0x42,0xfb,0x2c,0xc9,0xa6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a99400f4-3d84-4557-94ba-1242fb2cc9a6") IPropertyEnumTypeList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCount( UINT *pctypes) = 0; virtual HRESULT STDMETHODCALLTYPE GetAt( UINT itype, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetConditionAt( UINT nIndex, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE FindMatchingIndex( REFPROPVARIANT propvarCmp, UINT *pnIndex) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyEnumTypeList, 0xa99400f4, 0x3d84, 0x4557, 0x94,0xba, 0x12,0x42,0xfb,0x2c,0xc9,0xa6) #endif #else typedef struct IPropertyEnumTypeListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyEnumTypeList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyEnumTypeList *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyEnumTypeList *This); /*** IPropertyEnumTypeList methods ***/ HRESULT (STDMETHODCALLTYPE *GetCount)( IPropertyEnumTypeList *This, UINT *pctypes); HRESULT (STDMETHODCALLTYPE *GetAt)( IPropertyEnumTypeList *This, UINT itype, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetConditionAt)( IPropertyEnumTypeList *This, UINT nIndex, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *FindMatchingIndex)( IPropertyEnumTypeList *This, REFPROPVARIANT propvarCmp, UINT *pnIndex); END_INTERFACE } IPropertyEnumTypeListVtbl; interface IPropertyEnumTypeList { CONST_VTBL IPropertyEnumTypeListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyEnumTypeList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyEnumTypeList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyEnumTypeList_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyEnumTypeList methods ***/ #define IPropertyEnumTypeList_GetCount(This,pctypes) (This)->lpVtbl->GetCount(This,pctypes) #define IPropertyEnumTypeList_GetAt(This,itype,riid,ppv) (This)->lpVtbl->GetAt(This,itype,riid,ppv) #define IPropertyEnumTypeList_GetConditionAt(This,nIndex,riid,ppv) (This)->lpVtbl->GetConditionAt(This,nIndex,riid,ppv) #define IPropertyEnumTypeList_FindMatchingIndex(This,propvarCmp,pnIndex) (This)->lpVtbl->FindMatchingIndex(This,propvarCmp,pnIndex) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyEnumTypeList_QueryInterface(IPropertyEnumTypeList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyEnumTypeList_AddRef(IPropertyEnumTypeList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyEnumTypeList_Release(IPropertyEnumTypeList* This) { return This->lpVtbl->Release(This); } /*** IPropertyEnumTypeList methods ***/ static FORCEINLINE HRESULT IPropertyEnumTypeList_GetCount(IPropertyEnumTypeList* This,UINT *pctypes) { return This->lpVtbl->GetCount(This,pctypes); } static FORCEINLINE HRESULT IPropertyEnumTypeList_GetAt(IPropertyEnumTypeList* This,UINT itype,REFIID riid,void **ppv) { return This->lpVtbl->GetAt(This,itype,riid,ppv); } static FORCEINLINE HRESULT IPropertyEnumTypeList_GetConditionAt(IPropertyEnumTypeList* This,UINT nIndex,REFIID riid,void **ppv) { return This->lpVtbl->GetConditionAt(This,nIndex,riid,ppv); } static FORCEINLINE HRESULT IPropertyEnumTypeList_FindMatchingIndex(IPropertyEnumTypeList* This,REFPROPVARIANT propvarCmp,UINT *pnIndex) { return This->lpVtbl->FindMatchingIndex(This,propvarCmp,pnIndex); } #endif #endif #endif #endif /* __IPropertyEnumTypeList_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyDescription interface */ #ifndef __IPropertyDescription_INTERFACE_DEFINED__ #define __IPropertyDescription_INTERFACE_DEFINED__ typedef enum PROPDESC_TYPE_FLAGS { PDTF_DEFAULT = 0x0, PDTF_MULTIPLEVALUES = 0x1, PDTF_ISINNATE = 0x2, PDTF_ISGROUP = 0x4, PDTF_CANGROUPBY = 0x8, PDTF_CANSTACKBY = 0x10, PDTF_ISTREEPROPERTY = 0x20, PDTF_INCLUDEINFULLTEXTQUERY = 0x40, PDTF_ISVIEWABLE = 0x80, PDTF_ISQUERYABLE = 0x100, PDTF_CANBEPURGED = 0x200, PDTF_SEARCHRAWVALUE = 0x400, PDTF_ISSYSTEMPROPERTY = 0x80000000, PDTF_MASK_ALL = 0x800007ff } PROPDESC_TYPE_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(PROPDESC_TYPE_FLAGS) typedef enum PROPDESC_VIEW_FLAGS { PDVF_DEFAULT = 0x0, PDVF_CENTERALIGN = 0x1, PDVF_RIGHTALIGN = 0x2, PDVF_BEGINNEWGROUP = 0x4, PDVF_FILLAREA = 0x8, PDVF_SORTDESCENDING = 0x10, PDVF_SHOWONLYIFPRESENT = 0x20, PDVF_SHOWBYDEFAULT = 0x40, PDVF_SHOWINPRIMARYLIST = 0x80, PDVF_SHOWINSECONDARYLIST = 0x100, PDVF_HIDELABEL = 0x200, PDVF_HIDDEN = 0x800, PDVF_CANWRAP = 0x1000, PDVF_MASK_ALL = 0x1bff } PROPDESC_VIEW_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(PROPDESC_VIEW_FLAGS) typedef enum PROPDESC_DISPLAYTYPE { PDDT_STRING = 0, PDDT_NUMBER = 1, PDDT_BOOLEAN = 2, PDDT_DATETIME = 3, PDDT_ENUMERATED = 4 } PROPDESC_DISPLAYTYPE; typedef enum PROPDESC_GROUPING_RANGE { PDGR_DISCRETE = 0, PDGR_ALPHANUMERIC = 1, PDGR_SIZE = 2, PDGR_DYNAMIC = 3, PDGR_DATE = 4, PDGR_PERCENT = 5, PDGR_ENUMERATED = 6 } PROPDESC_GROUPING_RANGE; typedef enum PROPDESC_FORMAT_FLAGS { PDFF_DEFAULT = 0x0, PDFF_PREFIXNAME = 0x1, PDFF_FILENAME = 0x2, PDFF_ALWAYSKB = 0x4, PDFF_RESERVED_RIGHTTOLEFT = 0x8, PDFF_SHORTTIME = 0x10, PDFF_LONGTIME = 0x20, PDFF_HIDETIME = 0x40, PDFF_SHORTDATE = 0x80, PDFF_LONGDATE = 0x100, PDFF_HIDEDATE = 0x200, PDFF_RELATIVEDATE = 0x400, PDFF_USEEDITINVITATION = 0x800, PDFF_READONLY = 0x1000, PDFF_NOAUTOREADINGORDER = 0x2000 } PROPDESC_FORMAT_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(PROPDESC_FORMAT_FLAGS) typedef enum PROPDESC_SORTDESCRIPTION { PDSD_GENERAL = 0, PDSD_A_Z = 1, PDSD_LOWEST_HIGHEST = 2, PDSD_SMALLEST_BIGGEST = 3, PDSD_OLDEST_NEWEST = 4 } PROPDESC_SORTDESCRIPTION; typedef enum PROPDESC_RELATIVEDESCRIPTION_TYPE { PDRDT_GENERAL = 0, PDRDT_DATE = 1, PDRDT_SIZE = 2, PDRDT_COUNT = 3, PDRDT_REVISION = 4, PDRDT_LENGTH = 5, PDRDT_DURATION = 6, PDRDT_SPEED = 7, PDRDT_RATE = 8, PDRDT_RATING = 9, PDRDT_PRIORITY = 10 } PROPDESC_RELATIVEDESCRIPTION_TYPE; typedef enum PROPDESC_AGGREGATION_TYPE { PDAT_DEFAULT = 0, PDAT_FIRST = 1, PDAT_SUM = 2, PDAT_AVERAGE = 3, PDAT_DATERANGE = 4, PDAT_UNION = 5, PDAT_MAX = 6, PDAT_MIN = 7 } PROPDESC_AGGREGATION_TYPE; typedef enum PROPDESC_CONDITION_TYPE { PDCOT_NONE = 0, PDCOT_STRING = 1, PDCOT_SIZE = 2, PDCOT_DATETIME = 3, PDCOT_BOOLEAN = 4, PDCOT_NUMBER = 5 } PROPDESC_CONDITION_TYPE; DEFINE_GUID(IID_IPropertyDescription, 0x6f79d558, 0x3e96, 0x4549, 0xa1,0xd1, 0x7d,0x75,0xd2,0x28,0x88,0x14); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6f79d558-3e96-4549-a1d1-7d75d2288814") IPropertyDescription : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPropertyKey( PROPERTYKEY *pkey) = 0; virtual HRESULT STDMETHODCALLTYPE GetCanonicalName( LPWSTR *ppszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyType( VARTYPE *pvartype) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplayName( LPWSTR *ppszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetEditInvitation( LPWSTR *ppszInvite) = 0; virtual HRESULT STDMETHODCALLTYPE GetTypeFlags( PROPDESC_TYPE_FLAGS mask, PROPDESC_TYPE_FLAGS *ppdtFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetViewFlags( PROPDESC_VIEW_FLAGS *ppdvFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultColumnWidth( UINT *pcxChars) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplayType( PROPDESC_DISPLAYTYPE *pdisplaytype) = 0; virtual HRESULT STDMETHODCALLTYPE GetColumnState( SHCOLSTATEF *pcsFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetGroupingRange( PROPDESC_GROUPING_RANGE *pgr) = 0; virtual HRESULT STDMETHODCALLTYPE GetRelativeDescriptionType( PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt) = 0; virtual HRESULT STDMETHODCALLTYPE GetRelativeDescription( REFPROPVARIANT propvar1, REFPROPVARIANT propvar2, LPWSTR *ppszDesc1, LPWSTR *ppszDesc2) = 0; virtual HRESULT STDMETHODCALLTYPE GetSortDescription( PROPDESC_SORTDESCRIPTION *psd) = 0; virtual HRESULT STDMETHODCALLTYPE GetSortDescriptionLabel( WINBOOL fDescending, LPWSTR *ppszDescription) = 0; virtual HRESULT STDMETHODCALLTYPE GetAggregationType( PROPDESC_AGGREGATION_TYPE *paggtype) = 0; virtual HRESULT STDMETHODCALLTYPE GetConditionType( PROPDESC_CONDITION_TYPE *pcontype, CONDITION_OPERATION *popDefault) = 0; virtual HRESULT STDMETHODCALLTYPE GetEnumTypeList( REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE CoerceToCanonicalValue( PROPVARIANT *ppropvar) = 0; virtual HRESULT STDMETHODCALLTYPE FormatForDisplay( REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdfFlags, LPWSTR *ppszDisplay) = 0; virtual HRESULT STDMETHODCALLTYPE IsValueCanonical( REFPROPVARIANT propvar) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyDescription, 0x6f79d558, 0x3e96, 0x4549, 0xa1,0xd1, 0x7d,0x75,0xd2,0x28,0x88,0x14) #endif #else typedef struct IPropertyDescriptionVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyDescription *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyDescription *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyDescription *This); /*** IPropertyDescription methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyKey)( IPropertyDescription *This, PROPERTYKEY *pkey); HRESULT (STDMETHODCALLTYPE *GetCanonicalName)( IPropertyDescription *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetPropertyType)( IPropertyDescription *This, VARTYPE *pvartype); HRESULT (STDMETHODCALLTYPE *GetDisplayName)( IPropertyDescription *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetEditInvitation)( IPropertyDescription *This, LPWSTR *ppszInvite); HRESULT (STDMETHODCALLTYPE *GetTypeFlags)( IPropertyDescription *This, PROPDESC_TYPE_FLAGS mask, PROPDESC_TYPE_FLAGS *ppdtFlags); HRESULT (STDMETHODCALLTYPE *GetViewFlags)( IPropertyDescription *This, PROPDESC_VIEW_FLAGS *ppdvFlags); HRESULT (STDMETHODCALLTYPE *GetDefaultColumnWidth)( IPropertyDescription *This, UINT *pcxChars); HRESULT (STDMETHODCALLTYPE *GetDisplayType)( IPropertyDescription *This, PROPDESC_DISPLAYTYPE *pdisplaytype); HRESULT (STDMETHODCALLTYPE *GetColumnState)( IPropertyDescription *This, SHCOLSTATEF *pcsFlags); HRESULT (STDMETHODCALLTYPE *GetGroupingRange)( IPropertyDescription *This, PROPDESC_GROUPING_RANGE *pgr); HRESULT (STDMETHODCALLTYPE *GetRelativeDescriptionType)( IPropertyDescription *This, PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); HRESULT (STDMETHODCALLTYPE *GetRelativeDescription)( IPropertyDescription *This, REFPROPVARIANT propvar1, REFPROPVARIANT propvar2, LPWSTR *ppszDesc1, LPWSTR *ppszDesc2); HRESULT (STDMETHODCALLTYPE *GetSortDescription)( IPropertyDescription *This, PROPDESC_SORTDESCRIPTION *psd); HRESULT (STDMETHODCALLTYPE *GetSortDescriptionLabel)( IPropertyDescription *This, WINBOOL fDescending, LPWSTR *ppszDescription); HRESULT (STDMETHODCALLTYPE *GetAggregationType)( IPropertyDescription *This, PROPDESC_AGGREGATION_TYPE *paggtype); HRESULT (STDMETHODCALLTYPE *GetConditionType)( IPropertyDescription *This, PROPDESC_CONDITION_TYPE *pcontype, CONDITION_OPERATION *popDefault); HRESULT (STDMETHODCALLTYPE *GetEnumTypeList)( IPropertyDescription *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *CoerceToCanonicalValue)( IPropertyDescription *This, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *FormatForDisplay)( IPropertyDescription *This, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdfFlags, LPWSTR *ppszDisplay); HRESULT (STDMETHODCALLTYPE *IsValueCanonical)( IPropertyDescription *This, REFPROPVARIANT propvar); END_INTERFACE } IPropertyDescriptionVtbl; interface IPropertyDescription { CONST_VTBL IPropertyDescriptionVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyDescription_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyDescription_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyDescription_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyDescription methods ***/ #define IPropertyDescription_GetPropertyKey(This,pkey) (This)->lpVtbl->GetPropertyKey(This,pkey) #define IPropertyDescription_GetCanonicalName(This,ppszName) (This)->lpVtbl->GetCanonicalName(This,ppszName) #define IPropertyDescription_GetPropertyType(This,pvartype) (This)->lpVtbl->GetPropertyType(This,pvartype) #define IPropertyDescription_GetDisplayName(This,ppszName) (This)->lpVtbl->GetDisplayName(This,ppszName) #define IPropertyDescription_GetEditInvitation(This,ppszInvite) (This)->lpVtbl->GetEditInvitation(This,ppszInvite) #define IPropertyDescription_GetTypeFlags(This,mask,ppdtFlags) (This)->lpVtbl->GetTypeFlags(This,mask,ppdtFlags) #define IPropertyDescription_GetViewFlags(This,ppdvFlags) (This)->lpVtbl->GetViewFlags(This,ppdvFlags) #define IPropertyDescription_GetDefaultColumnWidth(This,pcxChars) (This)->lpVtbl->GetDefaultColumnWidth(This,pcxChars) #define IPropertyDescription_GetDisplayType(This,pdisplaytype) (This)->lpVtbl->GetDisplayType(This,pdisplaytype) #define IPropertyDescription_GetColumnState(This,pcsFlags) (This)->lpVtbl->GetColumnState(This,pcsFlags) #define IPropertyDescription_GetGroupingRange(This,pgr) (This)->lpVtbl->GetGroupingRange(This,pgr) #define IPropertyDescription_GetRelativeDescriptionType(This,prdt) (This)->lpVtbl->GetRelativeDescriptionType(This,prdt) #define IPropertyDescription_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) (This)->lpVtbl->GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) #define IPropertyDescription_GetSortDescription(This,psd) (This)->lpVtbl->GetSortDescription(This,psd) #define IPropertyDescription_GetSortDescriptionLabel(This,fDescending,ppszDescription) (This)->lpVtbl->GetSortDescriptionLabel(This,fDescending,ppszDescription) #define IPropertyDescription_GetAggregationType(This,paggtype) (This)->lpVtbl->GetAggregationType(This,paggtype) #define IPropertyDescription_GetConditionType(This,pcontype,popDefault) (This)->lpVtbl->GetConditionType(This,pcontype,popDefault) #define IPropertyDescription_GetEnumTypeList(This,riid,ppv) (This)->lpVtbl->GetEnumTypeList(This,riid,ppv) #define IPropertyDescription_CoerceToCanonicalValue(This,ppropvar) (This)->lpVtbl->CoerceToCanonicalValue(This,ppropvar) #define IPropertyDescription_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) (This)->lpVtbl->FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) #define IPropertyDescription_IsValueCanonical(This,propvar) (This)->lpVtbl->IsValueCanonical(This,propvar) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyDescription_QueryInterface(IPropertyDescription* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyDescription_AddRef(IPropertyDescription* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyDescription_Release(IPropertyDescription* This) { return This->lpVtbl->Release(This); } /*** IPropertyDescription methods ***/ static FORCEINLINE HRESULT IPropertyDescription_GetPropertyKey(IPropertyDescription* This,PROPERTYKEY *pkey) { return This->lpVtbl->GetPropertyKey(This,pkey); } static FORCEINLINE HRESULT IPropertyDescription_GetCanonicalName(IPropertyDescription* This,LPWSTR *ppszName) { return This->lpVtbl->GetCanonicalName(This,ppszName); } static FORCEINLINE HRESULT IPropertyDescription_GetPropertyType(IPropertyDescription* This,VARTYPE *pvartype) { return This->lpVtbl->GetPropertyType(This,pvartype); } static FORCEINLINE HRESULT IPropertyDescription_GetDisplayName(IPropertyDescription* This,LPWSTR *ppszName) { return This->lpVtbl->GetDisplayName(This,ppszName); } static FORCEINLINE HRESULT IPropertyDescription_GetEditInvitation(IPropertyDescription* This,LPWSTR *ppszInvite) { return This->lpVtbl->GetEditInvitation(This,ppszInvite); } static FORCEINLINE HRESULT IPropertyDescription_GetTypeFlags(IPropertyDescription* This,PROPDESC_TYPE_FLAGS mask,PROPDESC_TYPE_FLAGS *ppdtFlags) { return This->lpVtbl->GetTypeFlags(This,mask,ppdtFlags); } static FORCEINLINE HRESULT IPropertyDescription_GetViewFlags(IPropertyDescription* This,PROPDESC_VIEW_FLAGS *ppdvFlags) { return This->lpVtbl->GetViewFlags(This,ppdvFlags); } static FORCEINLINE HRESULT IPropertyDescription_GetDefaultColumnWidth(IPropertyDescription* This,UINT *pcxChars) { return This->lpVtbl->GetDefaultColumnWidth(This,pcxChars); } static FORCEINLINE HRESULT IPropertyDescription_GetDisplayType(IPropertyDescription* This,PROPDESC_DISPLAYTYPE *pdisplaytype) { return This->lpVtbl->GetDisplayType(This,pdisplaytype); } static FORCEINLINE HRESULT IPropertyDescription_GetColumnState(IPropertyDescription* This,SHCOLSTATEF *pcsFlags) { return This->lpVtbl->GetColumnState(This,pcsFlags); } static FORCEINLINE HRESULT IPropertyDescription_GetGroupingRange(IPropertyDescription* This,PROPDESC_GROUPING_RANGE *pgr) { return This->lpVtbl->GetGroupingRange(This,pgr); } static FORCEINLINE HRESULT IPropertyDescription_GetRelativeDescriptionType(IPropertyDescription* This,PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt) { return This->lpVtbl->GetRelativeDescriptionType(This,prdt); } static FORCEINLINE HRESULT IPropertyDescription_GetRelativeDescription(IPropertyDescription* This,REFPROPVARIANT propvar1,REFPROPVARIANT propvar2,LPWSTR *ppszDesc1,LPWSTR *ppszDesc2) { return This->lpVtbl->GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2); } static FORCEINLINE HRESULT IPropertyDescription_GetSortDescription(IPropertyDescription* This,PROPDESC_SORTDESCRIPTION *psd) { return This->lpVtbl->GetSortDescription(This,psd); } static FORCEINLINE HRESULT IPropertyDescription_GetSortDescriptionLabel(IPropertyDescription* This,WINBOOL fDescending,LPWSTR *ppszDescription) { return This->lpVtbl->GetSortDescriptionLabel(This,fDescending,ppszDescription); } static FORCEINLINE HRESULT IPropertyDescription_GetAggregationType(IPropertyDescription* This,PROPDESC_AGGREGATION_TYPE *paggtype) { return This->lpVtbl->GetAggregationType(This,paggtype); } static FORCEINLINE HRESULT IPropertyDescription_GetConditionType(IPropertyDescription* This,PROPDESC_CONDITION_TYPE *pcontype,CONDITION_OPERATION *popDefault) { return This->lpVtbl->GetConditionType(This,pcontype,popDefault); } static FORCEINLINE HRESULT IPropertyDescription_GetEnumTypeList(IPropertyDescription* This,REFIID riid,void **ppv) { return This->lpVtbl->GetEnumTypeList(This,riid,ppv); } static FORCEINLINE HRESULT IPropertyDescription_CoerceToCanonicalValue(IPropertyDescription* This,PROPVARIANT *ppropvar) { return This->lpVtbl->CoerceToCanonicalValue(This,ppropvar); } static FORCEINLINE HRESULT IPropertyDescription_FormatForDisplay(IPropertyDescription* This,REFPROPVARIANT propvar,PROPDESC_FORMAT_FLAGS pdfFlags,LPWSTR *ppszDisplay) { return This->lpVtbl->FormatForDisplay(This,propvar,pdfFlags,ppszDisplay); } static FORCEINLINE HRESULT IPropertyDescription_IsValueCanonical(IPropertyDescription* This,REFPROPVARIANT propvar) { return This->lpVtbl->IsValueCanonical(This,propvar); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IPropertyDescription_RemoteCoerceToCanonicalValue_Proxy( IPropertyDescription* This, REFPROPVARIANT propvar, PROPVARIANT *ppropvar); void __RPC_STUB IPropertyDescription_RemoteCoerceToCanonicalValue_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IPropertyDescription_CoerceToCanonicalValue_Proxy( IPropertyDescription* This, PROPVARIANT *ppropvar); HRESULT __RPC_STUB IPropertyDescription_CoerceToCanonicalValue_Stub( IPropertyDescription* This, REFPROPVARIANT propvar, PROPVARIANT *ppropvar); #endif /* __IPropertyDescription_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyDescription2 interface */ #ifndef __IPropertyDescription2_INTERFACE_DEFINED__ #define __IPropertyDescription2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyDescription2, 0x57d2eded, 0x5062, 0x400e, 0xb1,0x07, 0x5d,0xae,0x79,0xfe,0x57,0xa6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("57d2eded-5062-400e-b107-5dae79fe57a6") IPropertyDescription2 : public IPropertyDescription { virtual HRESULT STDMETHODCALLTYPE GetImageReferenceForValue( REFPROPVARIANT propvar, LPWSTR *ppszImageRes) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyDescription2, 0x57d2eded, 0x5062, 0x400e, 0xb1,0x07, 0x5d,0xae,0x79,0xfe,0x57,0xa6) #endif #else typedef struct IPropertyDescription2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyDescription2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyDescription2 *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyDescription2 *This); /*** IPropertyDescription methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyKey)( IPropertyDescription2 *This, PROPERTYKEY *pkey); HRESULT (STDMETHODCALLTYPE *GetCanonicalName)( IPropertyDescription2 *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetPropertyType)( IPropertyDescription2 *This, VARTYPE *pvartype); HRESULT (STDMETHODCALLTYPE *GetDisplayName)( IPropertyDescription2 *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetEditInvitation)( IPropertyDescription2 *This, LPWSTR *ppszInvite); HRESULT (STDMETHODCALLTYPE *GetTypeFlags)( IPropertyDescription2 *This, PROPDESC_TYPE_FLAGS mask, PROPDESC_TYPE_FLAGS *ppdtFlags); HRESULT (STDMETHODCALLTYPE *GetViewFlags)( IPropertyDescription2 *This, PROPDESC_VIEW_FLAGS *ppdvFlags); HRESULT (STDMETHODCALLTYPE *GetDefaultColumnWidth)( IPropertyDescription2 *This, UINT *pcxChars); HRESULT (STDMETHODCALLTYPE *GetDisplayType)( IPropertyDescription2 *This, PROPDESC_DISPLAYTYPE *pdisplaytype); HRESULT (STDMETHODCALLTYPE *GetColumnState)( IPropertyDescription2 *This, SHCOLSTATEF *pcsFlags); HRESULT (STDMETHODCALLTYPE *GetGroupingRange)( IPropertyDescription2 *This, PROPDESC_GROUPING_RANGE *pgr); HRESULT (STDMETHODCALLTYPE *GetRelativeDescriptionType)( IPropertyDescription2 *This, PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); HRESULT (STDMETHODCALLTYPE *GetRelativeDescription)( IPropertyDescription2 *This, REFPROPVARIANT propvar1, REFPROPVARIANT propvar2, LPWSTR *ppszDesc1, LPWSTR *ppszDesc2); HRESULT (STDMETHODCALLTYPE *GetSortDescription)( IPropertyDescription2 *This, PROPDESC_SORTDESCRIPTION *psd); HRESULT (STDMETHODCALLTYPE *GetSortDescriptionLabel)( IPropertyDescription2 *This, WINBOOL fDescending, LPWSTR *ppszDescription); HRESULT (STDMETHODCALLTYPE *GetAggregationType)( IPropertyDescription2 *This, PROPDESC_AGGREGATION_TYPE *paggtype); HRESULT (STDMETHODCALLTYPE *GetConditionType)( IPropertyDescription2 *This, PROPDESC_CONDITION_TYPE *pcontype, CONDITION_OPERATION *popDefault); HRESULT (STDMETHODCALLTYPE *GetEnumTypeList)( IPropertyDescription2 *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *CoerceToCanonicalValue)( IPropertyDescription2 *This, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *FormatForDisplay)( IPropertyDescription2 *This, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdfFlags, LPWSTR *ppszDisplay); HRESULT (STDMETHODCALLTYPE *IsValueCanonical)( IPropertyDescription2 *This, REFPROPVARIANT propvar); /*** IPropertyDescription2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetImageReferenceForValue)( IPropertyDescription2 *This, REFPROPVARIANT propvar, LPWSTR *ppszImageRes); END_INTERFACE } IPropertyDescription2Vtbl; interface IPropertyDescription2 { CONST_VTBL IPropertyDescription2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyDescription2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyDescription2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyDescription2_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyDescription methods ***/ #define IPropertyDescription2_GetPropertyKey(This,pkey) (This)->lpVtbl->GetPropertyKey(This,pkey) #define IPropertyDescription2_GetCanonicalName(This,ppszName) (This)->lpVtbl->GetCanonicalName(This,ppszName) #define IPropertyDescription2_GetPropertyType(This,pvartype) (This)->lpVtbl->GetPropertyType(This,pvartype) #define IPropertyDescription2_GetDisplayName(This,ppszName) (This)->lpVtbl->GetDisplayName(This,ppszName) #define IPropertyDescription2_GetEditInvitation(This,ppszInvite) (This)->lpVtbl->GetEditInvitation(This,ppszInvite) #define IPropertyDescription2_GetTypeFlags(This,mask,ppdtFlags) (This)->lpVtbl->GetTypeFlags(This,mask,ppdtFlags) #define IPropertyDescription2_GetViewFlags(This,ppdvFlags) (This)->lpVtbl->GetViewFlags(This,ppdvFlags) #define IPropertyDescription2_GetDefaultColumnWidth(This,pcxChars) (This)->lpVtbl->GetDefaultColumnWidth(This,pcxChars) #define IPropertyDescription2_GetDisplayType(This,pdisplaytype) (This)->lpVtbl->GetDisplayType(This,pdisplaytype) #define IPropertyDescription2_GetColumnState(This,pcsFlags) (This)->lpVtbl->GetColumnState(This,pcsFlags) #define IPropertyDescription2_GetGroupingRange(This,pgr) (This)->lpVtbl->GetGroupingRange(This,pgr) #define IPropertyDescription2_GetRelativeDescriptionType(This,prdt) (This)->lpVtbl->GetRelativeDescriptionType(This,prdt) #define IPropertyDescription2_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) (This)->lpVtbl->GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) #define IPropertyDescription2_GetSortDescription(This,psd) (This)->lpVtbl->GetSortDescription(This,psd) #define IPropertyDescription2_GetSortDescriptionLabel(This,fDescending,ppszDescription) (This)->lpVtbl->GetSortDescriptionLabel(This,fDescending,ppszDescription) #define IPropertyDescription2_GetAggregationType(This,paggtype) (This)->lpVtbl->GetAggregationType(This,paggtype) #define IPropertyDescription2_GetConditionType(This,pcontype,popDefault) (This)->lpVtbl->GetConditionType(This,pcontype,popDefault) #define IPropertyDescription2_GetEnumTypeList(This,riid,ppv) (This)->lpVtbl->GetEnumTypeList(This,riid,ppv) #define IPropertyDescription2_CoerceToCanonicalValue(This,ppropvar) (This)->lpVtbl->CoerceToCanonicalValue(This,ppropvar) #define IPropertyDescription2_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) (This)->lpVtbl->FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) #define IPropertyDescription2_IsValueCanonical(This,propvar) (This)->lpVtbl->IsValueCanonical(This,propvar) /*** IPropertyDescription2 methods ***/ #define IPropertyDescription2_GetImageReferenceForValue(This,propvar,ppszImageRes) (This)->lpVtbl->GetImageReferenceForValue(This,propvar,ppszImageRes) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyDescription2_QueryInterface(IPropertyDescription2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyDescription2_AddRef(IPropertyDescription2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyDescription2_Release(IPropertyDescription2* This) { return This->lpVtbl->Release(This); } /*** IPropertyDescription methods ***/ static FORCEINLINE HRESULT IPropertyDescription2_GetPropertyKey(IPropertyDescription2* This,PROPERTYKEY *pkey) { return This->lpVtbl->GetPropertyKey(This,pkey); } static FORCEINLINE HRESULT IPropertyDescription2_GetCanonicalName(IPropertyDescription2* This,LPWSTR *ppszName) { return This->lpVtbl->GetCanonicalName(This,ppszName); } static FORCEINLINE HRESULT IPropertyDescription2_GetPropertyType(IPropertyDescription2* This,VARTYPE *pvartype) { return This->lpVtbl->GetPropertyType(This,pvartype); } static FORCEINLINE HRESULT IPropertyDescription2_GetDisplayName(IPropertyDescription2* This,LPWSTR *ppszName) { return This->lpVtbl->GetDisplayName(This,ppszName); } static FORCEINLINE HRESULT IPropertyDescription2_GetEditInvitation(IPropertyDescription2* This,LPWSTR *ppszInvite) { return This->lpVtbl->GetEditInvitation(This,ppszInvite); } static FORCEINLINE HRESULT IPropertyDescription2_GetTypeFlags(IPropertyDescription2* This,PROPDESC_TYPE_FLAGS mask,PROPDESC_TYPE_FLAGS *ppdtFlags) { return This->lpVtbl->GetTypeFlags(This,mask,ppdtFlags); } static FORCEINLINE HRESULT IPropertyDescription2_GetViewFlags(IPropertyDescription2* This,PROPDESC_VIEW_FLAGS *ppdvFlags) { return This->lpVtbl->GetViewFlags(This,ppdvFlags); } static FORCEINLINE HRESULT IPropertyDescription2_GetDefaultColumnWidth(IPropertyDescription2* This,UINT *pcxChars) { return This->lpVtbl->GetDefaultColumnWidth(This,pcxChars); } static FORCEINLINE HRESULT IPropertyDescription2_GetDisplayType(IPropertyDescription2* This,PROPDESC_DISPLAYTYPE *pdisplaytype) { return This->lpVtbl->GetDisplayType(This,pdisplaytype); } static FORCEINLINE HRESULT IPropertyDescription2_GetColumnState(IPropertyDescription2* This,SHCOLSTATEF *pcsFlags) { return This->lpVtbl->GetColumnState(This,pcsFlags); } static FORCEINLINE HRESULT IPropertyDescription2_GetGroupingRange(IPropertyDescription2* This,PROPDESC_GROUPING_RANGE *pgr) { return This->lpVtbl->GetGroupingRange(This,pgr); } static FORCEINLINE HRESULT IPropertyDescription2_GetRelativeDescriptionType(IPropertyDescription2* This,PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt) { return This->lpVtbl->GetRelativeDescriptionType(This,prdt); } static FORCEINLINE HRESULT IPropertyDescription2_GetRelativeDescription(IPropertyDescription2* This,REFPROPVARIANT propvar1,REFPROPVARIANT propvar2,LPWSTR *ppszDesc1,LPWSTR *ppszDesc2) { return This->lpVtbl->GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2); } static FORCEINLINE HRESULT IPropertyDescription2_GetSortDescription(IPropertyDescription2* This,PROPDESC_SORTDESCRIPTION *psd) { return This->lpVtbl->GetSortDescription(This,psd); } static FORCEINLINE HRESULT IPropertyDescription2_GetSortDescriptionLabel(IPropertyDescription2* This,WINBOOL fDescending,LPWSTR *ppszDescription) { return This->lpVtbl->GetSortDescriptionLabel(This,fDescending,ppszDescription); } static FORCEINLINE HRESULT IPropertyDescription2_GetAggregationType(IPropertyDescription2* This,PROPDESC_AGGREGATION_TYPE *paggtype) { return This->lpVtbl->GetAggregationType(This,paggtype); } static FORCEINLINE HRESULT IPropertyDescription2_GetConditionType(IPropertyDescription2* This,PROPDESC_CONDITION_TYPE *pcontype,CONDITION_OPERATION *popDefault) { return This->lpVtbl->GetConditionType(This,pcontype,popDefault); } static FORCEINLINE HRESULT IPropertyDescription2_GetEnumTypeList(IPropertyDescription2* This,REFIID riid,void **ppv) { return This->lpVtbl->GetEnumTypeList(This,riid,ppv); } static FORCEINLINE HRESULT IPropertyDescription2_CoerceToCanonicalValue(IPropertyDescription2* This,PROPVARIANT *ppropvar) { return This->lpVtbl->CoerceToCanonicalValue(This,ppropvar); } static FORCEINLINE HRESULT IPropertyDescription2_FormatForDisplay(IPropertyDescription2* This,REFPROPVARIANT propvar,PROPDESC_FORMAT_FLAGS pdfFlags,LPWSTR *ppszDisplay) { return This->lpVtbl->FormatForDisplay(This,propvar,pdfFlags,ppszDisplay); } static FORCEINLINE HRESULT IPropertyDescription2_IsValueCanonical(IPropertyDescription2* This,REFPROPVARIANT propvar) { return This->lpVtbl->IsValueCanonical(This,propvar); } /*** IPropertyDescription2 methods ***/ static FORCEINLINE HRESULT IPropertyDescription2_GetImageReferenceForValue(IPropertyDescription2* This,REFPROPVARIANT propvar,LPWSTR *ppszImageRes) { return This->lpVtbl->GetImageReferenceForValue(This,propvar,ppszImageRes); } #endif #endif #endif #endif /* __IPropertyDescription2_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyDescriptionAliasInfo interface */ #ifndef __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__ #define __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyDescriptionAliasInfo, 0xf67104fc, 0x2af9, 0x46fd, 0xb3,0x2d, 0x24,0x3c,0x14,0x04,0xf3,0xd1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f67104fc-2af9-46fd-b32d-243c1404f3d1") IPropertyDescriptionAliasInfo : public IPropertyDescription { virtual HRESULT STDMETHODCALLTYPE GetSortByAlias( REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetAdditionalSortByAliases( REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyDescriptionAliasInfo, 0xf67104fc, 0x2af9, 0x46fd, 0xb3,0x2d, 0x24,0x3c,0x14,0x04,0xf3,0xd1) #endif #else typedef struct IPropertyDescriptionAliasInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyDescriptionAliasInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyDescriptionAliasInfo *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyDescriptionAliasInfo *This); /*** IPropertyDescription methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyKey)( IPropertyDescriptionAliasInfo *This, PROPERTYKEY *pkey); HRESULT (STDMETHODCALLTYPE *GetCanonicalName)( IPropertyDescriptionAliasInfo *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetPropertyType)( IPropertyDescriptionAliasInfo *This, VARTYPE *pvartype); HRESULT (STDMETHODCALLTYPE *GetDisplayName)( IPropertyDescriptionAliasInfo *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetEditInvitation)( IPropertyDescriptionAliasInfo *This, LPWSTR *ppszInvite); HRESULT (STDMETHODCALLTYPE *GetTypeFlags)( IPropertyDescriptionAliasInfo *This, PROPDESC_TYPE_FLAGS mask, PROPDESC_TYPE_FLAGS *ppdtFlags); HRESULT (STDMETHODCALLTYPE *GetViewFlags)( IPropertyDescriptionAliasInfo *This, PROPDESC_VIEW_FLAGS *ppdvFlags); HRESULT (STDMETHODCALLTYPE *GetDefaultColumnWidth)( IPropertyDescriptionAliasInfo *This, UINT *pcxChars); HRESULT (STDMETHODCALLTYPE *GetDisplayType)( IPropertyDescriptionAliasInfo *This, PROPDESC_DISPLAYTYPE *pdisplaytype); HRESULT (STDMETHODCALLTYPE *GetColumnState)( IPropertyDescriptionAliasInfo *This, SHCOLSTATEF *pcsFlags); HRESULT (STDMETHODCALLTYPE *GetGroupingRange)( IPropertyDescriptionAliasInfo *This, PROPDESC_GROUPING_RANGE *pgr); HRESULT (STDMETHODCALLTYPE *GetRelativeDescriptionType)( IPropertyDescriptionAliasInfo *This, PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); HRESULT (STDMETHODCALLTYPE *GetRelativeDescription)( IPropertyDescriptionAliasInfo *This, REFPROPVARIANT propvar1, REFPROPVARIANT propvar2, LPWSTR *ppszDesc1, LPWSTR *ppszDesc2); HRESULT (STDMETHODCALLTYPE *GetSortDescription)( IPropertyDescriptionAliasInfo *This, PROPDESC_SORTDESCRIPTION *psd); HRESULT (STDMETHODCALLTYPE *GetSortDescriptionLabel)( IPropertyDescriptionAliasInfo *This, WINBOOL fDescending, LPWSTR *ppszDescription); HRESULT (STDMETHODCALLTYPE *GetAggregationType)( IPropertyDescriptionAliasInfo *This, PROPDESC_AGGREGATION_TYPE *paggtype); HRESULT (STDMETHODCALLTYPE *GetConditionType)( IPropertyDescriptionAliasInfo *This, PROPDESC_CONDITION_TYPE *pcontype, CONDITION_OPERATION *popDefault); HRESULT (STDMETHODCALLTYPE *GetEnumTypeList)( IPropertyDescriptionAliasInfo *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *CoerceToCanonicalValue)( IPropertyDescriptionAliasInfo *This, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *FormatForDisplay)( IPropertyDescriptionAliasInfo *This, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdfFlags, LPWSTR *ppszDisplay); HRESULT (STDMETHODCALLTYPE *IsValueCanonical)( IPropertyDescriptionAliasInfo *This, REFPROPVARIANT propvar); /*** IPropertyDescriptionAliasInfo methods ***/ HRESULT (STDMETHODCALLTYPE *GetSortByAlias)( IPropertyDescriptionAliasInfo *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetAdditionalSortByAliases)( IPropertyDescriptionAliasInfo *This, REFIID riid, void **ppv); END_INTERFACE } IPropertyDescriptionAliasInfoVtbl; interface IPropertyDescriptionAliasInfo { CONST_VTBL IPropertyDescriptionAliasInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyDescriptionAliasInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyDescriptionAliasInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyDescriptionAliasInfo_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyDescription methods ***/ #define IPropertyDescriptionAliasInfo_GetPropertyKey(This,pkey) (This)->lpVtbl->GetPropertyKey(This,pkey) #define IPropertyDescriptionAliasInfo_GetCanonicalName(This,ppszName) (This)->lpVtbl->GetCanonicalName(This,ppszName) #define IPropertyDescriptionAliasInfo_GetPropertyType(This,pvartype) (This)->lpVtbl->GetPropertyType(This,pvartype) #define IPropertyDescriptionAliasInfo_GetDisplayName(This,ppszName) (This)->lpVtbl->GetDisplayName(This,ppszName) #define IPropertyDescriptionAliasInfo_GetEditInvitation(This,ppszInvite) (This)->lpVtbl->GetEditInvitation(This,ppszInvite) #define IPropertyDescriptionAliasInfo_GetTypeFlags(This,mask,ppdtFlags) (This)->lpVtbl->GetTypeFlags(This,mask,ppdtFlags) #define IPropertyDescriptionAliasInfo_GetViewFlags(This,ppdvFlags) (This)->lpVtbl->GetViewFlags(This,ppdvFlags) #define IPropertyDescriptionAliasInfo_GetDefaultColumnWidth(This,pcxChars) (This)->lpVtbl->GetDefaultColumnWidth(This,pcxChars) #define IPropertyDescriptionAliasInfo_GetDisplayType(This,pdisplaytype) (This)->lpVtbl->GetDisplayType(This,pdisplaytype) #define IPropertyDescriptionAliasInfo_GetColumnState(This,pcsFlags) (This)->lpVtbl->GetColumnState(This,pcsFlags) #define IPropertyDescriptionAliasInfo_GetGroupingRange(This,pgr) (This)->lpVtbl->GetGroupingRange(This,pgr) #define IPropertyDescriptionAliasInfo_GetRelativeDescriptionType(This,prdt) (This)->lpVtbl->GetRelativeDescriptionType(This,prdt) #define IPropertyDescriptionAliasInfo_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) (This)->lpVtbl->GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) #define IPropertyDescriptionAliasInfo_GetSortDescription(This,psd) (This)->lpVtbl->GetSortDescription(This,psd) #define IPropertyDescriptionAliasInfo_GetSortDescriptionLabel(This,fDescending,ppszDescription) (This)->lpVtbl->GetSortDescriptionLabel(This,fDescending,ppszDescription) #define IPropertyDescriptionAliasInfo_GetAggregationType(This,paggtype) (This)->lpVtbl->GetAggregationType(This,paggtype) #define IPropertyDescriptionAliasInfo_GetConditionType(This,pcontype,popDefault) (This)->lpVtbl->GetConditionType(This,pcontype,popDefault) #define IPropertyDescriptionAliasInfo_GetEnumTypeList(This,riid,ppv) (This)->lpVtbl->GetEnumTypeList(This,riid,ppv) #define IPropertyDescriptionAliasInfo_CoerceToCanonicalValue(This,ppropvar) (This)->lpVtbl->CoerceToCanonicalValue(This,ppropvar) #define IPropertyDescriptionAliasInfo_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) (This)->lpVtbl->FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) #define IPropertyDescriptionAliasInfo_IsValueCanonical(This,propvar) (This)->lpVtbl->IsValueCanonical(This,propvar) /*** IPropertyDescriptionAliasInfo methods ***/ #define IPropertyDescriptionAliasInfo_GetSortByAlias(This,riid,ppv) (This)->lpVtbl->GetSortByAlias(This,riid,ppv) #define IPropertyDescriptionAliasInfo_GetAdditionalSortByAliases(This,riid,ppv) (This)->lpVtbl->GetAdditionalSortByAliases(This,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_QueryInterface(IPropertyDescriptionAliasInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyDescriptionAliasInfo_AddRef(IPropertyDescriptionAliasInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyDescriptionAliasInfo_Release(IPropertyDescriptionAliasInfo* This) { return This->lpVtbl->Release(This); } /*** IPropertyDescription methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetPropertyKey(IPropertyDescriptionAliasInfo* This,PROPERTYKEY *pkey) { return This->lpVtbl->GetPropertyKey(This,pkey); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetCanonicalName(IPropertyDescriptionAliasInfo* This,LPWSTR *ppszName) { return This->lpVtbl->GetCanonicalName(This,ppszName); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetPropertyType(IPropertyDescriptionAliasInfo* This,VARTYPE *pvartype) { return This->lpVtbl->GetPropertyType(This,pvartype); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetDisplayName(IPropertyDescriptionAliasInfo* This,LPWSTR *ppszName) { return This->lpVtbl->GetDisplayName(This,ppszName); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetEditInvitation(IPropertyDescriptionAliasInfo* This,LPWSTR *ppszInvite) { return This->lpVtbl->GetEditInvitation(This,ppszInvite); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetTypeFlags(IPropertyDescriptionAliasInfo* This,PROPDESC_TYPE_FLAGS mask,PROPDESC_TYPE_FLAGS *ppdtFlags) { return This->lpVtbl->GetTypeFlags(This,mask,ppdtFlags); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetViewFlags(IPropertyDescriptionAliasInfo* This,PROPDESC_VIEW_FLAGS *ppdvFlags) { return This->lpVtbl->GetViewFlags(This,ppdvFlags); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetDefaultColumnWidth(IPropertyDescriptionAliasInfo* This,UINT *pcxChars) { return This->lpVtbl->GetDefaultColumnWidth(This,pcxChars); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetDisplayType(IPropertyDescriptionAliasInfo* This,PROPDESC_DISPLAYTYPE *pdisplaytype) { return This->lpVtbl->GetDisplayType(This,pdisplaytype); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetColumnState(IPropertyDescriptionAliasInfo* This,SHCOLSTATEF *pcsFlags) { return This->lpVtbl->GetColumnState(This,pcsFlags); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetGroupingRange(IPropertyDescriptionAliasInfo* This,PROPDESC_GROUPING_RANGE *pgr) { return This->lpVtbl->GetGroupingRange(This,pgr); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetRelativeDescriptionType(IPropertyDescriptionAliasInfo* This,PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt) { return This->lpVtbl->GetRelativeDescriptionType(This,prdt); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetRelativeDescription(IPropertyDescriptionAliasInfo* This,REFPROPVARIANT propvar1,REFPROPVARIANT propvar2,LPWSTR *ppszDesc1,LPWSTR *ppszDesc2) { return This->lpVtbl->GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetSortDescription(IPropertyDescriptionAliasInfo* This,PROPDESC_SORTDESCRIPTION *psd) { return This->lpVtbl->GetSortDescription(This,psd); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetSortDescriptionLabel(IPropertyDescriptionAliasInfo* This,WINBOOL fDescending,LPWSTR *ppszDescription) { return This->lpVtbl->GetSortDescriptionLabel(This,fDescending,ppszDescription); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetAggregationType(IPropertyDescriptionAliasInfo* This,PROPDESC_AGGREGATION_TYPE *paggtype) { return This->lpVtbl->GetAggregationType(This,paggtype); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetConditionType(IPropertyDescriptionAliasInfo* This,PROPDESC_CONDITION_TYPE *pcontype,CONDITION_OPERATION *popDefault) { return This->lpVtbl->GetConditionType(This,pcontype,popDefault); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetEnumTypeList(IPropertyDescriptionAliasInfo* This,REFIID riid,void **ppv) { return This->lpVtbl->GetEnumTypeList(This,riid,ppv); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_CoerceToCanonicalValue(IPropertyDescriptionAliasInfo* This,PROPVARIANT *ppropvar) { return This->lpVtbl->CoerceToCanonicalValue(This,ppropvar); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_FormatForDisplay(IPropertyDescriptionAliasInfo* This,REFPROPVARIANT propvar,PROPDESC_FORMAT_FLAGS pdfFlags,LPWSTR *ppszDisplay) { return This->lpVtbl->FormatForDisplay(This,propvar,pdfFlags,ppszDisplay); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_IsValueCanonical(IPropertyDescriptionAliasInfo* This,REFPROPVARIANT propvar) { return This->lpVtbl->IsValueCanonical(This,propvar); } /*** IPropertyDescriptionAliasInfo methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetSortByAlias(IPropertyDescriptionAliasInfo* This,REFIID riid,void **ppv) { return This->lpVtbl->GetSortByAlias(This,riid,ppv); } static FORCEINLINE HRESULT IPropertyDescriptionAliasInfo_GetAdditionalSortByAliases(IPropertyDescriptionAliasInfo* This,REFIID riid,void **ppv) { return This->lpVtbl->GetAdditionalSortByAliases(This,riid,ppv); } #endif #endif #endif #endif /* __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyDescriptionSearchInfo interface */ #ifndef __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__ #define __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__ typedef enum PROPDESC_SEARCHINFO_FLAGS { PDSIF_DEFAULT = 0x0, PDSIF_ININVERTEDINDEX = 0x1, PDSIF_ISCOLUMN = 0x2, PDSIF_ISCOLUMNSPARSE = 0x4, PDSIF_ALWAYSINCLUDE = 0x8, PDSIF_USEFORTYPEAHEAD = 0x10 } PROPDESC_SEARCHINFO_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(PROPDESC_SEARCHINFO_FLAGS) typedef enum PROPDESC_COLUMNINDEX_TYPE { PDCIT_NONE = 0, PDCIT_ONDISK = 1, PDCIT_INMEMORY = 2, PDCIT_ONDEMAND = 3, PDCIT_ONDISKALL = 4, PDCIT_ONDISKVECTOR = 5 } PROPDESC_COLUMNINDEX_TYPE; DEFINE_GUID(IID_IPropertyDescriptionSearchInfo, 0x078f91bd, 0x29a2, 0x440f, 0x92,0x4e, 0x46,0xa2,0x91,0x52,0x45,0x20); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("078f91bd-29a2-440f-924e-46a291524520") IPropertyDescriptionSearchInfo : public IPropertyDescription { virtual HRESULT STDMETHODCALLTYPE GetSearchInfoFlags( PROPDESC_SEARCHINFO_FLAGS *ppdsiFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetColumnIndexType( PROPDESC_COLUMNINDEX_TYPE *ppdciType) = 0; virtual HRESULT STDMETHODCALLTYPE GetProjectionString( LPWSTR *ppszProjection) = 0; virtual HRESULT STDMETHODCALLTYPE GetMaxSize( UINT *pcbMaxSize) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyDescriptionSearchInfo, 0x078f91bd, 0x29a2, 0x440f, 0x92,0x4e, 0x46,0xa2,0x91,0x52,0x45,0x20) #endif #else typedef struct IPropertyDescriptionSearchInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyDescriptionSearchInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyDescriptionSearchInfo *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyDescriptionSearchInfo *This); /*** IPropertyDescription methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyKey)( IPropertyDescriptionSearchInfo *This, PROPERTYKEY *pkey); HRESULT (STDMETHODCALLTYPE *GetCanonicalName)( IPropertyDescriptionSearchInfo *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetPropertyType)( IPropertyDescriptionSearchInfo *This, VARTYPE *pvartype); HRESULT (STDMETHODCALLTYPE *GetDisplayName)( IPropertyDescriptionSearchInfo *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetEditInvitation)( IPropertyDescriptionSearchInfo *This, LPWSTR *ppszInvite); HRESULT (STDMETHODCALLTYPE *GetTypeFlags)( IPropertyDescriptionSearchInfo *This, PROPDESC_TYPE_FLAGS mask, PROPDESC_TYPE_FLAGS *ppdtFlags); HRESULT (STDMETHODCALLTYPE *GetViewFlags)( IPropertyDescriptionSearchInfo *This, PROPDESC_VIEW_FLAGS *ppdvFlags); HRESULT (STDMETHODCALLTYPE *GetDefaultColumnWidth)( IPropertyDescriptionSearchInfo *This, UINT *pcxChars); HRESULT (STDMETHODCALLTYPE *GetDisplayType)( IPropertyDescriptionSearchInfo *This, PROPDESC_DISPLAYTYPE *pdisplaytype); HRESULT (STDMETHODCALLTYPE *GetColumnState)( IPropertyDescriptionSearchInfo *This, SHCOLSTATEF *pcsFlags); HRESULT (STDMETHODCALLTYPE *GetGroupingRange)( IPropertyDescriptionSearchInfo *This, PROPDESC_GROUPING_RANGE *pgr); HRESULT (STDMETHODCALLTYPE *GetRelativeDescriptionType)( IPropertyDescriptionSearchInfo *This, PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); HRESULT (STDMETHODCALLTYPE *GetRelativeDescription)( IPropertyDescriptionSearchInfo *This, REFPROPVARIANT propvar1, REFPROPVARIANT propvar2, LPWSTR *ppszDesc1, LPWSTR *ppszDesc2); HRESULT (STDMETHODCALLTYPE *GetSortDescription)( IPropertyDescriptionSearchInfo *This, PROPDESC_SORTDESCRIPTION *psd); HRESULT (STDMETHODCALLTYPE *GetSortDescriptionLabel)( IPropertyDescriptionSearchInfo *This, WINBOOL fDescending, LPWSTR *ppszDescription); HRESULT (STDMETHODCALLTYPE *GetAggregationType)( IPropertyDescriptionSearchInfo *This, PROPDESC_AGGREGATION_TYPE *paggtype); HRESULT (STDMETHODCALLTYPE *GetConditionType)( IPropertyDescriptionSearchInfo *This, PROPDESC_CONDITION_TYPE *pcontype, CONDITION_OPERATION *popDefault); HRESULT (STDMETHODCALLTYPE *GetEnumTypeList)( IPropertyDescriptionSearchInfo *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *CoerceToCanonicalValue)( IPropertyDescriptionSearchInfo *This, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *FormatForDisplay)( IPropertyDescriptionSearchInfo *This, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdfFlags, LPWSTR *ppszDisplay); HRESULT (STDMETHODCALLTYPE *IsValueCanonical)( IPropertyDescriptionSearchInfo *This, REFPROPVARIANT propvar); /*** IPropertyDescriptionSearchInfo methods ***/ HRESULT (STDMETHODCALLTYPE *GetSearchInfoFlags)( IPropertyDescriptionSearchInfo *This, PROPDESC_SEARCHINFO_FLAGS *ppdsiFlags); HRESULT (STDMETHODCALLTYPE *GetColumnIndexType)( IPropertyDescriptionSearchInfo *This, PROPDESC_COLUMNINDEX_TYPE *ppdciType); HRESULT (STDMETHODCALLTYPE *GetProjectionString)( IPropertyDescriptionSearchInfo *This, LPWSTR *ppszProjection); HRESULT (STDMETHODCALLTYPE *GetMaxSize)( IPropertyDescriptionSearchInfo *This, UINT *pcbMaxSize); END_INTERFACE } IPropertyDescriptionSearchInfoVtbl; interface IPropertyDescriptionSearchInfo { CONST_VTBL IPropertyDescriptionSearchInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyDescriptionSearchInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyDescriptionSearchInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyDescriptionSearchInfo_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyDescription methods ***/ #define IPropertyDescriptionSearchInfo_GetPropertyKey(This,pkey) (This)->lpVtbl->GetPropertyKey(This,pkey) #define IPropertyDescriptionSearchInfo_GetCanonicalName(This,ppszName) (This)->lpVtbl->GetCanonicalName(This,ppszName) #define IPropertyDescriptionSearchInfo_GetPropertyType(This,pvartype) (This)->lpVtbl->GetPropertyType(This,pvartype) #define IPropertyDescriptionSearchInfo_GetDisplayName(This,ppszName) (This)->lpVtbl->GetDisplayName(This,ppszName) #define IPropertyDescriptionSearchInfo_GetEditInvitation(This,ppszInvite) (This)->lpVtbl->GetEditInvitation(This,ppszInvite) #define IPropertyDescriptionSearchInfo_GetTypeFlags(This,mask,ppdtFlags) (This)->lpVtbl->GetTypeFlags(This,mask,ppdtFlags) #define IPropertyDescriptionSearchInfo_GetViewFlags(This,ppdvFlags) (This)->lpVtbl->GetViewFlags(This,ppdvFlags) #define IPropertyDescriptionSearchInfo_GetDefaultColumnWidth(This,pcxChars) (This)->lpVtbl->GetDefaultColumnWidth(This,pcxChars) #define IPropertyDescriptionSearchInfo_GetDisplayType(This,pdisplaytype) (This)->lpVtbl->GetDisplayType(This,pdisplaytype) #define IPropertyDescriptionSearchInfo_GetColumnState(This,pcsFlags) (This)->lpVtbl->GetColumnState(This,pcsFlags) #define IPropertyDescriptionSearchInfo_GetGroupingRange(This,pgr) (This)->lpVtbl->GetGroupingRange(This,pgr) #define IPropertyDescriptionSearchInfo_GetRelativeDescriptionType(This,prdt) (This)->lpVtbl->GetRelativeDescriptionType(This,prdt) #define IPropertyDescriptionSearchInfo_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) (This)->lpVtbl->GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) #define IPropertyDescriptionSearchInfo_GetSortDescription(This,psd) (This)->lpVtbl->GetSortDescription(This,psd) #define IPropertyDescriptionSearchInfo_GetSortDescriptionLabel(This,fDescending,ppszDescription) (This)->lpVtbl->GetSortDescriptionLabel(This,fDescending,ppszDescription) #define IPropertyDescriptionSearchInfo_GetAggregationType(This,paggtype) (This)->lpVtbl->GetAggregationType(This,paggtype) #define IPropertyDescriptionSearchInfo_GetConditionType(This,pcontype,popDefault) (This)->lpVtbl->GetConditionType(This,pcontype,popDefault) #define IPropertyDescriptionSearchInfo_GetEnumTypeList(This,riid,ppv) (This)->lpVtbl->GetEnumTypeList(This,riid,ppv) #define IPropertyDescriptionSearchInfo_CoerceToCanonicalValue(This,ppropvar) (This)->lpVtbl->CoerceToCanonicalValue(This,ppropvar) #define IPropertyDescriptionSearchInfo_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) (This)->lpVtbl->FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) #define IPropertyDescriptionSearchInfo_IsValueCanonical(This,propvar) (This)->lpVtbl->IsValueCanonical(This,propvar) /*** IPropertyDescriptionSearchInfo methods ***/ #define IPropertyDescriptionSearchInfo_GetSearchInfoFlags(This,ppdsiFlags) (This)->lpVtbl->GetSearchInfoFlags(This,ppdsiFlags) #define IPropertyDescriptionSearchInfo_GetColumnIndexType(This,ppdciType) (This)->lpVtbl->GetColumnIndexType(This,ppdciType) #define IPropertyDescriptionSearchInfo_GetProjectionString(This,ppszProjection) (This)->lpVtbl->GetProjectionString(This,ppszProjection) #define IPropertyDescriptionSearchInfo_GetMaxSize(This,pcbMaxSize) (This)->lpVtbl->GetMaxSize(This,pcbMaxSize) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_QueryInterface(IPropertyDescriptionSearchInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyDescriptionSearchInfo_AddRef(IPropertyDescriptionSearchInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyDescriptionSearchInfo_Release(IPropertyDescriptionSearchInfo* This) { return This->lpVtbl->Release(This); } /*** IPropertyDescription methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetPropertyKey(IPropertyDescriptionSearchInfo* This,PROPERTYKEY *pkey) { return This->lpVtbl->GetPropertyKey(This,pkey); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetCanonicalName(IPropertyDescriptionSearchInfo* This,LPWSTR *ppszName) { return This->lpVtbl->GetCanonicalName(This,ppszName); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetPropertyType(IPropertyDescriptionSearchInfo* This,VARTYPE *pvartype) { return This->lpVtbl->GetPropertyType(This,pvartype); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetDisplayName(IPropertyDescriptionSearchInfo* This,LPWSTR *ppszName) { return This->lpVtbl->GetDisplayName(This,ppszName); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetEditInvitation(IPropertyDescriptionSearchInfo* This,LPWSTR *ppszInvite) { return This->lpVtbl->GetEditInvitation(This,ppszInvite); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetTypeFlags(IPropertyDescriptionSearchInfo* This,PROPDESC_TYPE_FLAGS mask,PROPDESC_TYPE_FLAGS *ppdtFlags) { return This->lpVtbl->GetTypeFlags(This,mask,ppdtFlags); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetViewFlags(IPropertyDescriptionSearchInfo* This,PROPDESC_VIEW_FLAGS *ppdvFlags) { return This->lpVtbl->GetViewFlags(This,ppdvFlags); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetDefaultColumnWidth(IPropertyDescriptionSearchInfo* This,UINT *pcxChars) { return This->lpVtbl->GetDefaultColumnWidth(This,pcxChars); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetDisplayType(IPropertyDescriptionSearchInfo* This,PROPDESC_DISPLAYTYPE *pdisplaytype) { return This->lpVtbl->GetDisplayType(This,pdisplaytype); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetColumnState(IPropertyDescriptionSearchInfo* This,SHCOLSTATEF *pcsFlags) { return This->lpVtbl->GetColumnState(This,pcsFlags); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetGroupingRange(IPropertyDescriptionSearchInfo* This,PROPDESC_GROUPING_RANGE *pgr) { return This->lpVtbl->GetGroupingRange(This,pgr); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetRelativeDescriptionType(IPropertyDescriptionSearchInfo* This,PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt) { return This->lpVtbl->GetRelativeDescriptionType(This,prdt); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetRelativeDescription(IPropertyDescriptionSearchInfo* This,REFPROPVARIANT propvar1,REFPROPVARIANT propvar2,LPWSTR *ppszDesc1,LPWSTR *ppszDesc2) { return This->lpVtbl->GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetSortDescription(IPropertyDescriptionSearchInfo* This,PROPDESC_SORTDESCRIPTION *psd) { return This->lpVtbl->GetSortDescription(This,psd); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetSortDescriptionLabel(IPropertyDescriptionSearchInfo* This,WINBOOL fDescending,LPWSTR *ppszDescription) { return This->lpVtbl->GetSortDescriptionLabel(This,fDescending,ppszDescription); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetAggregationType(IPropertyDescriptionSearchInfo* This,PROPDESC_AGGREGATION_TYPE *paggtype) { return This->lpVtbl->GetAggregationType(This,paggtype); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetConditionType(IPropertyDescriptionSearchInfo* This,PROPDESC_CONDITION_TYPE *pcontype,CONDITION_OPERATION *popDefault) { return This->lpVtbl->GetConditionType(This,pcontype,popDefault); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetEnumTypeList(IPropertyDescriptionSearchInfo* This,REFIID riid,void **ppv) { return This->lpVtbl->GetEnumTypeList(This,riid,ppv); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_CoerceToCanonicalValue(IPropertyDescriptionSearchInfo* This,PROPVARIANT *ppropvar) { return This->lpVtbl->CoerceToCanonicalValue(This,ppropvar); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_FormatForDisplay(IPropertyDescriptionSearchInfo* This,REFPROPVARIANT propvar,PROPDESC_FORMAT_FLAGS pdfFlags,LPWSTR *ppszDisplay) { return This->lpVtbl->FormatForDisplay(This,propvar,pdfFlags,ppszDisplay); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_IsValueCanonical(IPropertyDescriptionSearchInfo* This,REFPROPVARIANT propvar) { return This->lpVtbl->IsValueCanonical(This,propvar); } /*** IPropertyDescriptionSearchInfo methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetSearchInfoFlags(IPropertyDescriptionSearchInfo* This,PROPDESC_SEARCHINFO_FLAGS *ppdsiFlags) { return This->lpVtbl->GetSearchInfoFlags(This,ppdsiFlags); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetColumnIndexType(IPropertyDescriptionSearchInfo* This,PROPDESC_COLUMNINDEX_TYPE *ppdciType) { return This->lpVtbl->GetColumnIndexType(This,ppdciType); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetProjectionString(IPropertyDescriptionSearchInfo* This,LPWSTR *ppszProjection) { return This->lpVtbl->GetProjectionString(This,ppszProjection); } static FORCEINLINE HRESULT IPropertyDescriptionSearchInfo_GetMaxSize(IPropertyDescriptionSearchInfo* This,UINT *pcbMaxSize) { return This->lpVtbl->GetMaxSize(This,pcbMaxSize); } #endif #endif #endif #endif /* __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyDescriptionRelatedPropertyInfo interface */ #ifndef __IPropertyDescriptionRelatedPropertyInfo_INTERFACE_DEFINED__ #define __IPropertyDescriptionRelatedPropertyInfo_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyDescriptionRelatedPropertyInfo, 0x507393f4, 0x2a3d, 0x4a60, 0xb5,0x9e, 0xd9,0xc7,0x57,0x16,0xc2,0xdd); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("507393f4-2a3d-4a60-b59e-d9c75716c2dd") IPropertyDescriptionRelatedPropertyInfo : public IPropertyDescription { virtual HRESULT STDMETHODCALLTYPE GetRelatedProperty( LPCWSTR pszRelationshipName, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyDescriptionRelatedPropertyInfo, 0x507393f4, 0x2a3d, 0x4a60, 0xb5,0x9e, 0xd9,0xc7,0x57,0x16,0xc2,0xdd) #endif #else typedef struct IPropertyDescriptionRelatedPropertyInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyDescriptionRelatedPropertyInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyDescriptionRelatedPropertyInfo *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyDescriptionRelatedPropertyInfo *This); /*** IPropertyDescription methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyKey)( IPropertyDescriptionRelatedPropertyInfo *This, PROPERTYKEY *pkey); HRESULT (STDMETHODCALLTYPE *GetCanonicalName)( IPropertyDescriptionRelatedPropertyInfo *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetPropertyType)( IPropertyDescriptionRelatedPropertyInfo *This, VARTYPE *pvartype); HRESULT (STDMETHODCALLTYPE *GetDisplayName)( IPropertyDescriptionRelatedPropertyInfo *This, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetEditInvitation)( IPropertyDescriptionRelatedPropertyInfo *This, LPWSTR *ppszInvite); HRESULT (STDMETHODCALLTYPE *GetTypeFlags)( IPropertyDescriptionRelatedPropertyInfo *This, PROPDESC_TYPE_FLAGS mask, PROPDESC_TYPE_FLAGS *ppdtFlags); HRESULT (STDMETHODCALLTYPE *GetViewFlags)( IPropertyDescriptionRelatedPropertyInfo *This, PROPDESC_VIEW_FLAGS *ppdvFlags); HRESULT (STDMETHODCALLTYPE *GetDefaultColumnWidth)( IPropertyDescriptionRelatedPropertyInfo *This, UINT *pcxChars); HRESULT (STDMETHODCALLTYPE *GetDisplayType)( IPropertyDescriptionRelatedPropertyInfo *This, PROPDESC_DISPLAYTYPE *pdisplaytype); HRESULT (STDMETHODCALLTYPE *GetColumnState)( IPropertyDescriptionRelatedPropertyInfo *This, SHCOLSTATEF *pcsFlags); HRESULT (STDMETHODCALLTYPE *GetGroupingRange)( IPropertyDescriptionRelatedPropertyInfo *This, PROPDESC_GROUPING_RANGE *pgr); HRESULT (STDMETHODCALLTYPE *GetRelativeDescriptionType)( IPropertyDescriptionRelatedPropertyInfo *This, PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); HRESULT (STDMETHODCALLTYPE *GetRelativeDescription)( IPropertyDescriptionRelatedPropertyInfo *This, REFPROPVARIANT propvar1, REFPROPVARIANT propvar2, LPWSTR *ppszDesc1, LPWSTR *ppszDesc2); HRESULT (STDMETHODCALLTYPE *GetSortDescription)( IPropertyDescriptionRelatedPropertyInfo *This, PROPDESC_SORTDESCRIPTION *psd); HRESULT (STDMETHODCALLTYPE *GetSortDescriptionLabel)( IPropertyDescriptionRelatedPropertyInfo *This, WINBOOL fDescending, LPWSTR *ppszDescription); HRESULT (STDMETHODCALLTYPE *GetAggregationType)( IPropertyDescriptionRelatedPropertyInfo *This, PROPDESC_AGGREGATION_TYPE *paggtype); HRESULT (STDMETHODCALLTYPE *GetConditionType)( IPropertyDescriptionRelatedPropertyInfo *This, PROPDESC_CONDITION_TYPE *pcontype, CONDITION_OPERATION *popDefault); HRESULT (STDMETHODCALLTYPE *GetEnumTypeList)( IPropertyDescriptionRelatedPropertyInfo *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *CoerceToCanonicalValue)( IPropertyDescriptionRelatedPropertyInfo *This, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *FormatForDisplay)( IPropertyDescriptionRelatedPropertyInfo *This, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdfFlags, LPWSTR *ppszDisplay); HRESULT (STDMETHODCALLTYPE *IsValueCanonical)( IPropertyDescriptionRelatedPropertyInfo *This, REFPROPVARIANT propvar); /*** IPropertyDescriptionRelatedPropertyInfo methods ***/ HRESULT (STDMETHODCALLTYPE *GetRelatedProperty)( IPropertyDescriptionRelatedPropertyInfo *This, LPCWSTR pszRelationshipName, REFIID riid, void **ppv); END_INTERFACE } IPropertyDescriptionRelatedPropertyInfoVtbl; interface IPropertyDescriptionRelatedPropertyInfo { CONST_VTBL IPropertyDescriptionRelatedPropertyInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyDescriptionRelatedPropertyInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyDescriptionRelatedPropertyInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyDescriptionRelatedPropertyInfo_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyDescription methods ***/ #define IPropertyDescriptionRelatedPropertyInfo_GetPropertyKey(This,pkey) (This)->lpVtbl->GetPropertyKey(This,pkey) #define IPropertyDescriptionRelatedPropertyInfo_GetCanonicalName(This,ppszName) (This)->lpVtbl->GetCanonicalName(This,ppszName) #define IPropertyDescriptionRelatedPropertyInfo_GetPropertyType(This,pvartype) (This)->lpVtbl->GetPropertyType(This,pvartype) #define IPropertyDescriptionRelatedPropertyInfo_GetDisplayName(This,ppszName) (This)->lpVtbl->GetDisplayName(This,ppszName) #define IPropertyDescriptionRelatedPropertyInfo_GetEditInvitation(This,ppszInvite) (This)->lpVtbl->GetEditInvitation(This,ppszInvite) #define IPropertyDescriptionRelatedPropertyInfo_GetTypeFlags(This,mask,ppdtFlags) (This)->lpVtbl->GetTypeFlags(This,mask,ppdtFlags) #define IPropertyDescriptionRelatedPropertyInfo_GetViewFlags(This,ppdvFlags) (This)->lpVtbl->GetViewFlags(This,ppdvFlags) #define IPropertyDescriptionRelatedPropertyInfo_GetDefaultColumnWidth(This,pcxChars) (This)->lpVtbl->GetDefaultColumnWidth(This,pcxChars) #define IPropertyDescriptionRelatedPropertyInfo_GetDisplayType(This,pdisplaytype) (This)->lpVtbl->GetDisplayType(This,pdisplaytype) #define IPropertyDescriptionRelatedPropertyInfo_GetColumnState(This,pcsFlags) (This)->lpVtbl->GetColumnState(This,pcsFlags) #define IPropertyDescriptionRelatedPropertyInfo_GetGroupingRange(This,pgr) (This)->lpVtbl->GetGroupingRange(This,pgr) #define IPropertyDescriptionRelatedPropertyInfo_GetRelativeDescriptionType(This,prdt) (This)->lpVtbl->GetRelativeDescriptionType(This,prdt) #define IPropertyDescriptionRelatedPropertyInfo_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) (This)->lpVtbl->GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) #define IPropertyDescriptionRelatedPropertyInfo_GetSortDescription(This,psd) (This)->lpVtbl->GetSortDescription(This,psd) #define IPropertyDescriptionRelatedPropertyInfo_GetSortDescriptionLabel(This,fDescending,ppszDescription) (This)->lpVtbl->GetSortDescriptionLabel(This,fDescending,ppszDescription) #define IPropertyDescriptionRelatedPropertyInfo_GetAggregationType(This,paggtype) (This)->lpVtbl->GetAggregationType(This,paggtype) #define IPropertyDescriptionRelatedPropertyInfo_GetConditionType(This,pcontype,popDefault) (This)->lpVtbl->GetConditionType(This,pcontype,popDefault) #define IPropertyDescriptionRelatedPropertyInfo_GetEnumTypeList(This,riid,ppv) (This)->lpVtbl->GetEnumTypeList(This,riid,ppv) #define IPropertyDescriptionRelatedPropertyInfo_CoerceToCanonicalValue(This,ppropvar) (This)->lpVtbl->CoerceToCanonicalValue(This,ppropvar) #define IPropertyDescriptionRelatedPropertyInfo_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) (This)->lpVtbl->FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) #define IPropertyDescriptionRelatedPropertyInfo_IsValueCanonical(This,propvar) (This)->lpVtbl->IsValueCanonical(This,propvar) /*** IPropertyDescriptionRelatedPropertyInfo methods ***/ #define IPropertyDescriptionRelatedPropertyInfo_GetRelatedProperty(This,pszRelationshipName,riid,ppv) (This)->lpVtbl->GetRelatedProperty(This,pszRelationshipName,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_QueryInterface(IPropertyDescriptionRelatedPropertyInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyDescriptionRelatedPropertyInfo_AddRef(IPropertyDescriptionRelatedPropertyInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyDescriptionRelatedPropertyInfo_Release(IPropertyDescriptionRelatedPropertyInfo* This) { return This->lpVtbl->Release(This); } /*** IPropertyDescription methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetPropertyKey(IPropertyDescriptionRelatedPropertyInfo* This,PROPERTYKEY *pkey) { return This->lpVtbl->GetPropertyKey(This,pkey); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetCanonicalName(IPropertyDescriptionRelatedPropertyInfo* This,LPWSTR *ppszName) { return This->lpVtbl->GetCanonicalName(This,ppszName); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetPropertyType(IPropertyDescriptionRelatedPropertyInfo* This,VARTYPE *pvartype) { return This->lpVtbl->GetPropertyType(This,pvartype); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetDisplayName(IPropertyDescriptionRelatedPropertyInfo* This,LPWSTR *ppszName) { return This->lpVtbl->GetDisplayName(This,ppszName); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetEditInvitation(IPropertyDescriptionRelatedPropertyInfo* This,LPWSTR *ppszInvite) { return This->lpVtbl->GetEditInvitation(This,ppszInvite); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetTypeFlags(IPropertyDescriptionRelatedPropertyInfo* This,PROPDESC_TYPE_FLAGS mask,PROPDESC_TYPE_FLAGS *ppdtFlags) { return This->lpVtbl->GetTypeFlags(This,mask,ppdtFlags); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetViewFlags(IPropertyDescriptionRelatedPropertyInfo* This,PROPDESC_VIEW_FLAGS *ppdvFlags) { return This->lpVtbl->GetViewFlags(This,ppdvFlags); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetDefaultColumnWidth(IPropertyDescriptionRelatedPropertyInfo* This,UINT *pcxChars) { return This->lpVtbl->GetDefaultColumnWidth(This,pcxChars); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetDisplayType(IPropertyDescriptionRelatedPropertyInfo* This,PROPDESC_DISPLAYTYPE *pdisplaytype) { return This->lpVtbl->GetDisplayType(This,pdisplaytype); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetColumnState(IPropertyDescriptionRelatedPropertyInfo* This,SHCOLSTATEF *pcsFlags) { return This->lpVtbl->GetColumnState(This,pcsFlags); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetGroupingRange(IPropertyDescriptionRelatedPropertyInfo* This,PROPDESC_GROUPING_RANGE *pgr) { return This->lpVtbl->GetGroupingRange(This,pgr); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetRelativeDescriptionType(IPropertyDescriptionRelatedPropertyInfo* This,PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt) { return This->lpVtbl->GetRelativeDescriptionType(This,prdt); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetRelativeDescription(IPropertyDescriptionRelatedPropertyInfo* This,REFPROPVARIANT propvar1,REFPROPVARIANT propvar2,LPWSTR *ppszDesc1,LPWSTR *ppszDesc2) { return This->lpVtbl->GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetSortDescription(IPropertyDescriptionRelatedPropertyInfo* This,PROPDESC_SORTDESCRIPTION *psd) { return This->lpVtbl->GetSortDescription(This,psd); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetSortDescriptionLabel(IPropertyDescriptionRelatedPropertyInfo* This,WINBOOL fDescending,LPWSTR *ppszDescription) { return This->lpVtbl->GetSortDescriptionLabel(This,fDescending,ppszDescription); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetAggregationType(IPropertyDescriptionRelatedPropertyInfo* This,PROPDESC_AGGREGATION_TYPE *paggtype) { return This->lpVtbl->GetAggregationType(This,paggtype); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetConditionType(IPropertyDescriptionRelatedPropertyInfo* This,PROPDESC_CONDITION_TYPE *pcontype,CONDITION_OPERATION *popDefault) { return This->lpVtbl->GetConditionType(This,pcontype,popDefault); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetEnumTypeList(IPropertyDescriptionRelatedPropertyInfo* This,REFIID riid,void **ppv) { return This->lpVtbl->GetEnumTypeList(This,riid,ppv); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_CoerceToCanonicalValue(IPropertyDescriptionRelatedPropertyInfo* This,PROPVARIANT *ppropvar) { return This->lpVtbl->CoerceToCanonicalValue(This,ppropvar); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_FormatForDisplay(IPropertyDescriptionRelatedPropertyInfo* This,REFPROPVARIANT propvar,PROPDESC_FORMAT_FLAGS pdfFlags,LPWSTR *ppszDisplay) { return This->lpVtbl->FormatForDisplay(This,propvar,pdfFlags,ppszDisplay); } static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_IsValueCanonical(IPropertyDescriptionRelatedPropertyInfo* This,REFPROPVARIANT propvar) { return This->lpVtbl->IsValueCanonical(This,propvar); } /*** IPropertyDescriptionRelatedPropertyInfo methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionRelatedPropertyInfo_GetRelatedProperty(IPropertyDescriptionRelatedPropertyInfo* This,LPCWSTR pszRelationshipName,REFIID riid,void **ppv) { return This->lpVtbl->GetRelatedProperty(This,pszRelationshipName,riid,ppv); } #endif #endif #endif #endif /* __IPropertyDescriptionRelatedPropertyInfo_INTERFACE_DEFINED__ */ typedef enum PROPDESC_ENUMFILTER { PDEF_ALL = 0, PDEF_SYSTEM = 1, PDEF_NONSYSTEM = 2, PDEF_VIEWABLE = 3, PDEF_QUERYABLE = 4, PDEF_INFULLTEXTQUERY = 5, PDEF_COLUMN = 6 } PROPDESC_ENUMFILTER; /***************************************************************************** * IPropertySystem interface */ #ifndef __IPropertySystem_INTERFACE_DEFINED__ #define __IPropertySystem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertySystem, 0xca724e8a, 0xc3e6, 0x442b, 0x88,0xa4, 0x6f,0xb0,0xdb,0x80,0x35,0xa3); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ca724e8a-c3e6-442b-88a4-6fb0db8035a3") IPropertySystem : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPropertyDescription( REFPROPERTYKEY propkey, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionByName( LPCWSTR pszCanonicalName, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionListFromString( LPCWSTR pszPropList, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE EnumeratePropertyDescriptions( PROPDESC_ENUMFILTER filterOn, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE FormatForDisplay( REFPROPERTYKEY key, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdff, LPWSTR pszText, DWORD cchText) = 0; virtual HRESULT STDMETHODCALLTYPE FormatForDisplayAlloc( REFPROPERTYKEY key, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdff, LPWSTR *ppszDisplay) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterPropertySchema( LPCWSTR pszPath) = 0; virtual HRESULT STDMETHODCALLTYPE UnregisterPropertySchema( LPCWSTR pszPath) = 0; virtual HRESULT STDMETHODCALLTYPE RefreshPropertySchema( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertySystem, 0xca724e8a, 0xc3e6, 0x442b, 0x88,0xa4, 0x6f,0xb0,0xdb,0x80,0x35,0xa3) #endif #else typedef struct IPropertySystemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertySystem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertySystem *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertySystem *This); /*** IPropertySystem methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyDescription)( IPropertySystem *This, REFPROPERTYKEY propkey, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyDescriptionByName)( IPropertySystem *This, LPCWSTR pszCanonicalName, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyDescriptionListFromString)( IPropertySystem *This, LPCWSTR pszPropList, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *EnumeratePropertyDescriptions)( IPropertySystem *This, PROPDESC_ENUMFILTER filterOn, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *FormatForDisplay)( IPropertySystem *This, REFPROPERTYKEY key, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdff, LPWSTR pszText, DWORD cchText); HRESULT (STDMETHODCALLTYPE *FormatForDisplayAlloc)( IPropertySystem *This, REFPROPERTYKEY key, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdff, LPWSTR *ppszDisplay); HRESULT (STDMETHODCALLTYPE *RegisterPropertySchema)( IPropertySystem *This, LPCWSTR pszPath); HRESULT (STDMETHODCALLTYPE *UnregisterPropertySchema)( IPropertySystem *This, LPCWSTR pszPath); HRESULT (STDMETHODCALLTYPE *RefreshPropertySchema)( IPropertySystem *This); END_INTERFACE } IPropertySystemVtbl; interface IPropertySystem { CONST_VTBL IPropertySystemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertySystem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertySystem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertySystem_Release(This) (This)->lpVtbl->Release(This) /*** IPropertySystem methods ***/ #define IPropertySystem_GetPropertyDescription(This,propkey,riid,ppv) (This)->lpVtbl->GetPropertyDescription(This,propkey,riid,ppv) #define IPropertySystem_GetPropertyDescriptionByName(This,pszCanonicalName,riid,ppv) (This)->lpVtbl->GetPropertyDescriptionByName(This,pszCanonicalName,riid,ppv) #define IPropertySystem_GetPropertyDescriptionListFromString(This,pszPropList,riid,ppv) (This)->lpVtbl->GetPropertyDescriptionListFromString(This,pszPropList,riid,ppv) #define IPropertySystem_EnumeratePropertyDescriptions(This,filterOn,riid,ppv) (This)->lpVtbl->EnumeratePropertyDescriptions(This,filterOn,riid,ppv) #define IPropertySystem_FormatForDisplay(This,key,propvar,pdff,pszText,cchText) (This)->lpVtbl->FormatForDisplay(This,key,propvar,pdff,pszText,cchText) #define IPropertySystem_FormatForDisplayAlloc(This,key,propvar,pdff,ppszDisplay) (This)->lpVtbl->FormatForDisplayAlloc(This,key,propvar,pdff,ppszDisplay) #define IPropertySystem_RegisterPropertySchema(This,pszPath) (This)->lpVtbl->RegisterPropertySchema(This,pszPath) #define IPropertySystem_UnregisterPropertySchema(This,pszPath) (This)->lpVtbl->UnregisterPropertySchema(This,pszPath) #define IPropertySystem_RefreshPropertySchema(This) (This)->lpVtbl->RefreshPropertySchema(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertySystem_QueryInterface(IPropertySystem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertySystem_AddRef(IPropertySystem* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertySystem_Release(IPropertySystem* This) { return This->lpVtbl->Release(This); } /*** IPropertySystem methods ***/ static FORCEINLINE HRESULT IPropertySystem_GetPropertyDescription(IPropertySystem* This,REFPROPERTYKEY propkey,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyDescription(This,propkey,riid,ppv); } static FORCEINLINE HRESULT IPropertySystem_GetPropertyDescriptionByName(IPropertySystem* This,LPCWSTR pszCanonicalName,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyDescriptionByName(This,pszCanonicalName,riid,ppv); } static FORCEINLINE HRESULT IPropertySystem_GetPropertyDescriptionListFromString(IPropertySystem* This,LPCWSTR pszPropList,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyDescriptionListFromString(This,pszPropList,riid,ppv); } static FORCEINLINE HRESULT IPropertySystem_EnumeratePropertyDescriptions(IPropertySystem* This,PROPDESC_ENUMFILTER filterOn,REFIID riid,void **ppv) { return This->lpVtbl->EnumeratePropertyDescriptions(This,filterOn,riid,ppv); } static FORCEINLINE HRESULT IPropertySystem_FormatForDisplay(IPropertySystem* This,REFPROPERTYKEY key,REFPROPVARIANT propvar,PROPDESC_FORMAT_FLAGS pdff,LPWSTR pszText,DWORD cchText) { return This->lpVtbl->FormatForDisplay(This,key,propvar,pdff,pszText,cchText); } static FORCEINLINE HRESULT IPropertySystem_FormatForDisplayAlloc(IPropertySystem* This,REFPROPERTYKEY key,REFPROPVARIANT propvar,PROPDESC_FORMAT_FLAGS pdff,LPWSTR *ppszDisplay) { return This->lpVtbl->FormatForDisplayAlloc(This,key,propvar,pdff,ppszDisplay); } static FORCEINLINE HRESULT IPropertySystem_RegisterPropertySchema(IPropertySystem* This,LPCWSTR pszPath) { return This->lpVtbl->RegisterPropertySchema(This,pszPath); } static FORCEINLINE HRESULT IPropertySystem_UnregisterPropertySchema(IPropertySystem* This,LPCWSTR pszPath) { return This->lpVtbl->UnregisterPropertySchema(This,pszPath); } static FORCEINLINE HRESULT IPropertySystem_RefreshPropertySchema(IPropertySystem* This) { return This->lpVtbl->RefreshPropertySchema(This); } #endif #endif #endif #endif /* __IPropertySystem_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyDescriptionList interface */ #ifndef __IPropertyDescriptionList_INTERFACE_DEFINED__ #define __IPropertyDescriptionList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyDescriptionList, 0x1f9fc1d0, 0xc39b, 0x4b26, 0x81,0x7f, 0x01,0x19,0x67,0xd3,0x44,0x0e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1f9fc1d0-c39b-4b26-817f-011967d3440e") IPropertyDescriptionList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCount( UINT *pcElem) = 0; virtual HRESULT STDMETHODCALLTYPE GetAt( UINT iElem, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyDescriptionList, 0x1f9fc1d0, 0xc39b, 0x4b26, 0x81,0x7f, 0x01,0x19,0x67,0xd3,0x44,0x0e) #endif #else typedef struct IPropertyDescriptionListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyDescriptionList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyDescriptionList *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyDescriptionList *This); /*** IPropertyDescriptionList methods ***/ HRESULT (STDMETHODCALLTYPE *GetCount)( IPropertyDescriptionList *This, UINT *pcElem); HRESULT (STDMETHODCALLTYPE *GetAt)( IPropertyDescriptionList *This, UINT iElem, REFIID riid, void **ppv); END_INTERFACE } IPropertyDescriptionListVtbl; interface IPropertyDescriptionList { CONST_VTBL IPropertyDescriptionListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyDescriptionList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyDescriptionList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyDescriptionList_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyDescriptionList methods ***/ #define IPropertyDescriptionList_GetCount(This,pcElem) (This)->lpVtbl->GetCount(This,pcElem) #define IPropertyDescriptionList_GetAt(This,iElem,riid,ppv) (This)->lpVtbl->GetAt(This,iElem,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionList_QueryInterface(IPropertyDescriptionList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyDescriptionList_AddRef(IPropertyDescriptionList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyDescriptionList_Release(IPropertyDescriptionList* This) { return This->lpVtbl->Release(This); } /*** IPropertyDescriptionList methods ***/ static FORCEINLINE HRESULT IPropertyDescriptionList_GetCount(IPropertyDescriptionList* This,UINT *pcElem) { return This->lpVtbl->GetCount(This,pcElem); } static FORCEINLINE HRESULT IPropertyDescriptionList_GetAt(IPropertyDescriptionList* This,UINT iElem,REFIID riid,void **ppv) { return This->lpVtbl->GetAt(This,iElem,riid,ppv); } #endif #endif #endif #endif /* __IPropertyDescriptionList_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyStoreFactory interface */ #ifndef __IPropertyStoreFactory_INTERFACE_DEFINED__ #define __IPropertyStoreFactory_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyStoreFactory, 0xbc110b6d, 0x57e8, 0x4148, 0xa9,0xc6, 0x91,0x01,0x5a,0xb2,0xf3,0xa5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("bc110b6d-57e8-4148-a9c6-91015ab2f3a5") IPropertyStoreFactory : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPropertyStore( GETPROPERTYSTOREFLAGS flags, IUnknown *pUnkFactory, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyStoreForKeys( const PROPERTYKEY *rgKeys, UINT cKeys, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyStoreFactory, 0xbc110b6d, 0x57e8, 0x4148, 0xa9,0xc6, 0x91,0x01,0x5a,0xb2,0xf3,0xa5) #endif #else typedef struct IPropertyStoreFactoryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyStoreFactory *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyStoreFactory *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyStoreFactory *This); /*** IPropertyStoreFactory methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyStore)( IPropertyStoreFactory *This, GETPROPERTYSTOREFLAGS flags, IUnknown *pUnkFactory, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyStoreForKeys)( IPropertyStoreFactory *This, const PROPERTYKEY *rgKeys, UINT cKeys, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); END_INTERFACE } IPropertyStoreFactoryVtbl; interface IPropertyStoreFactory { CONST_VTBL IPropertyStoreFactoryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyStoreFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyStoreFactory_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyStoreFactory_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyStoreFactory methods ***/ #define IPropertyStoreFactory_GetPropertyStore(This,flags,pUnkFactory,riid,ppv) (This)->lpVtbl->GetPropertyStore(This,flags,pUnkFactory,riid,ppv) #define IPropertyStoreFactory_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) (This)->lpVtbl->GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyStoreFactory_QueryInterface(IPropertyStoreFactory* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyStoreFactory_AddRef(IPropertyStoreFactory* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyStoreFactory_Release(IPropertyStoreFactory* This) { return This->lpVtbl->Release(This); } /*** IPropertyStoreFactory methods ***/ static FORCEINLINE HRESULT IPropertyStoreFactory_GetPropertyStore(IPropertyStoreFactory* This,GETPROPERTYSTOREFLAGS flags,IUnknown *pUnkFactory,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStore(This,flags,pUnkFactory,riid,ppv); } static FORCEINLINE HRESULT IPropertyStoreFactory_GetPropertyStoreForKeys(IPropertyStoreFactory* This,const PROPERTYKEY *rgKeys,UINT cKeys,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv); } #endif #endif #endif #endif /* __IPropertyStoreFactory_INTERFACE_DEFINED__ */ /***************************************************************************** * IDelayedPropertyStoreFactory interface */ #ifndef __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__ #define __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDelayedPropertyStoreFactory, 0x40d4577f, 0xe237, 0x4bdb, 0xbd,0x69, 0x58,0xf0,0x89,0x43,0x1b,0x6a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("40d4577f-e237-4bdb-bd69-58f089431b6a") IDelayedPropertyStoreFactory : public IPropertyStoreFactory { virtual HRESULT STDMETHODCALLTYPE GetDelayedPropertyStore( GETPROPERTYSTOREFLAGS flags, DWORD dwStoreId, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDelayedPropertyStoreFactory, 0x40d4577f, 0xe237, 0x4bdb, 0xbd,0x69, 0x58,0xf0,0x89,0x43,0x1b,0x6a) #endif #else typedef struct IDelayedPropertyStoreFactoryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDelayedPropertyStoreFactory *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDelayedPropertyStoreFactory *This); ULONG (STDMETHODCALLTYPE *Release)( IDelayedPropertyStoreFactory *This); /*** IPropertyStoreFactory methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyStore)( IDelayedPropertyStoreFactory *This, GETPROPERTYSTOREFLAGS flags, IUnknown *pUnkFactory, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyStoreForKeys)( IDelayedPropertyStoreFactory *This, const PROPERTYKEY *rgKeys, UINT cKeys, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); /*** IDelayedPropertyStoreFactory methods ***/ HRESULT (STDMETHODCALLTYPE *GetDelayedPropertyStore)( IDelayedPropertyStoreFactory *This, GETPROPERTYSTOREFLAGS flags, DWORD dwStoreId, REFIID riid, void **ppv); END_INTERFACE } IDelayedPropertyStoreFactoryVtbl; interface IDelayedPropertyStoreFactory { CONST_VTBL IDelayedPropertyStoreFactoryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDelayedPropertyStoreFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDelayedPropertyStoreFactory_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDelayedPropertyStoreFactory_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyStoreFactory methods ***/ #define IDelayedPropertyStoreFactory_GetPropertyStore(This,flags,pUnkFactory,riid,ppv) (This)->lpVtbl->GetPropertyStore(This,flags,pUnkFactory,riid,ppv) #define IDelayedPropertyStoreFactory_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) (This)->lpVtbl->GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) /*** IDelayedPropertyStoreFactory methods ***/ #define IDelayedPropertyStoreFactory_GetDelayedPropertyStore(This,flags,dwStoreId,riid,ppv) (This)->lpVtbl->GetDelayedPropertyStore(This,flags,dwStoreId,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDelayedPropertyStoreFactory_QueryInterface(IDelayedPropertyStoreFactory* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDelayedPropertyStoreFactory_AddRef(IDelayedPropertyStoreFactory* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDelayedPropertyStoreFactory_Release(IDelayedPropertyStoreFactory* This) { return This->lpVtbl->Release(This); } /*** IPropertyStoreFactory methods ***/ static FORCEINLINE HRESULT IDelayedPropertyStoreFactory_GetPropertyStore(IDelayedPropertyStoreFactory* This,GETPROPERTYSTOREFLAGS flags,IUnknown *pUnkFactory,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStore(This,flags,pUnkFactory,riid,ppv); } static FORCEINLINE HRESULT IDelayedPropertyStoreFactory_GetPropertyStoreForKeys(IDelayedPropertyStoreFactory* This,const PROPERTYKEY *rgKeys,UINT cKeys,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv); } /*** IDelayedPropertyStoreFactory methods ***/ static FORCEINLINE HRESULT IDelayedPropertyStoreFactory_GetDelayedPropertyStore(IDelayedPropertyStoreFactory* This,GETPROPERTYSTOREFLAGS flags,DWORD dwStoreId,REFIID riid,void **ppv) { return This->lpVtbl->GetDelayedPropertyStore(This,flags,dwStoreId,riid,ppv); } #endif #endif #endif #endif /* __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__ */ enum _PERSIST_SPROPSTORE_FLAGS { FPSPS_DEFAULT = 0x0, FPSPS_READONLY = 0x1, FPSPS_TREAT_NEW_VALUES_AS_DIRTY = 0x2 }; typedef int PERSIST_SPROPSTORE_FLAGS; typedef struct tagSERIALIZEDPROPSTORAGE SERIALIZEDPROPSTORAGE; typedef SERIALIZEDPROPSTORAGE *PUSERIALIZEDPROPSTORAGE; typedef const SERIALIZEDPROPSTORAGE *PCUSERIALIZEDPROPSTORAGE; /***************************************************************************** * IPersistSerializedPropStorage interface */ #ifndef __IPersistSerializedPropStorage_INTERFACE_DEFINED__ #define __IPersistSerializedPropStorage_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPersistSerializedPropStorage, 0xe318ad57, 0x0aa0, 0x450f, 0xac,0xa5, 0x6f,0xab,0x71,0x03,0xd9,0x17); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e318ad57-0aa0-450f-aca5-6fab7103d917") IPersistSerializedPropStorage : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetFlags( PERSIST_SPROPSTORE_FLAGS flags) = 0; virtual HRESULT STDMETHODCALLTYPE SetPropertyStorage( PCUSERIALIZEDPROPSTORAGE psps, DWORD cb) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyStorage( SERIALIZEDPROPSTORAGE **ppsps, DWORD *pcb) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPersistSerializedPropStorage, 0xe318ad57, 0x0aa0, 0x450f, 0xac,0xa5, 0x6f,0xab,0x71,0x03,0xd9,0x17) #endif #else typedef struct IPersistSerializedPropStorageVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPersistSerializedPropStorage *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPersistSerializedPropStorage *This); ULONG (STDMETHODCALLTYPE *Release)( IPersistSerializedPropStorage *This); /*** IPersistSerializedPropStorage methods ***/ HRESULT (STDMETHODCALLTYPE *SetFlags)( IPersistSerializedPropStorage *This, PERSIST_SPROPSTORE_FLAGS flags); HRESULT (STDMETHODCALLTYPE *SetPropertyStorage)( IPersistSerializedPropStorage *This, PCUSERIALIZEDPROPSTORAGE psps, DWORD cb); HRESULT (STDMETHODCALLTYPE *GetPropertyStorage)( IPersistSerializedPropStorage *This, SERIALIZEDPROPSTORAGE **ppsps, DWORD *pcb); END_INTERFACE } IPersistSerializedPropStorageVtbl; interface IPersistSerializedPropStorage { CONST_VTBL IPersistSerializedPropStorageVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPersistSerializedPropStorage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPersistSerializedPropStorage_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPersistSerializedPropStorage_Release(This) (This)->lpVtbl->Release(This) /*** IPersistSerializedPropStorage methods ***/ #define IPersistSerializedPropStorage_SetFlags(This,flags) (This)->lpVtbl->SetFlags(This,flags) #define IPersistSerializedPropStorage_SetPropertyStorage(This,psps,cb) (This)->lpVtbl->SetPropertyStorage(This,psps,cb) #define IPersistSerializedPropStorage_GetPropertyStorage(This,ppsps,pcb) (This)->lpVtbl->GetPropertyStorage(This,ppsps,pcb) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPersistSerializedPropStorage_QueryInterface(IPersistSerializedPropStorage* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPersistSerializedPropStorage_AddRef(IPersistSerializedPropStorage* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPersistSerializedPropStorage_Release(IPersistSerializedPropStorage* This) { return This->lpVtbl->Release(This); } /*** IPersistSerializedPropStorage methods ***/ static FORCEINLINE HRESULT IPersistSerializedPropStorage_SetFlags(IPersistSerializedPropStorage* This,PERSIST_SPROPSTORE_FLAGS flags) { return This->lpVtbl->SetFlags(This,flags); } static FORCEINLINE HRESULT IPersistSerializedPropStorage_SetPropertyStorage(IPersistSerializedPropStorage* This,PCUSERIALIZEDPROPSTORAGE psps,DWORD cb) { return This->lpVtbl->SetPropertyStorage(This,psps,cb); } static FORCEINLINE HRESULT IPersistSerializedPropStorage_GetPropertyStorage(IPersistSerializedPropStorage* This,SERIALIZEDPROPSTORAGE **ppsps,DWORD *pcb) { return This->lpVtbl->GetPropertyStorage(This,ppsps,pcb); } #endif #endif #endif #endif /* __IPersistSerializedPropStorage_INTERFACE_DEFINED__ */ /***************************************************************************** * IPersistSerializedPropStorage2 interface */ #ifndef __IPersistSerializedPropStorage2_INTERFACE_DEFINED__ #define __IPersistSerializedPropStorage2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPersistSerializedPropStorage2, 0x77effa68, 0x4f98, 0x4366, 0xba,0x72, 0x57,0x3b,0x3d,0x88,0x05,0x71); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("77effa68-4f98-4366-ba72-573b3d880571") IPersistSerializedPropStorage2 : public IPersistSerializedPropStorage { virtual HRESULT STDMETHODCALLTYPE GetPropertyStorageSize( DWORD *pcb) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyStorageBuffer( SERIALIZEDPROPSTORAGE *psps, DWORD cb, DWORD *pcbWritten) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPersistSerializedPropStorage2, 0x77effa68, 0x4f98, 0x4366, 0xba,0x72, 0x57,0x3b,0x3d,0x88,0x05,0x71) #endif #else typedef struct IPersistSerializedPropStorage2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPersistSerializedPropStorage2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPersistSerializedPropStorage2 *This); ULONG (STDMETHODCALLTYPE *Release)( IPersistSerializedPropStorage2 *This); /*** IPersistSerializedPropStorage methods ***/ HRESULT (STDMETHODCALLTYPE *SetFlags)( IPersistSerializedPropStorage2 *This, PERSIST_SPROPSTORE_FLAGS flags); HRESULT (STDMETHODCALLTYPE *SetPropertyStorage)( IPersistSerializedPropStorage2 *This, PCUSERIALIZEDPROPSTORAGE psps, DWORD cb); HRESULT (STDMETHODCALLTYPE *GetPropertyStorage)( IPersistSerializedPropStorage2 *This, SERIALIZEDPROPSTORAGE **ppsps, DWORD *pcb); /*** IPersistSerializedPropStorage2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyStorageSize)( IPersistSerializedPropStorage2 *This, DWORD *pcb); HRESULT (STDMETHODCALLTYPE *GetPropertyStorageBuffer)( IPersistSerializedPropStorage2 *This, SERIALIZEDPROPSTORAGE *psps, DWORD cb, DWORD *pcbWritten); END_INTERFACE } IPersistSerializedPropStorage2Vtbl; interface IPersistSerializedPropStorage2 { CONST_VTBL IPersistSerializedPropStorage2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPersistSerializedPropStorage2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPersistSerializedPropStorage2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPersistSerializedPropStorage2_Release(This) (This)->lpVtbl->Release(This) /*** IPersistSerializedPropStorage methods ***/ #define IPersistSerializedPropStorage2_SetFlags(This,flags) (This)->lpVtbl->SetFlags(This,flags) #define IPersistSerializedPropStorage2_SetPropertyStorage(This,psps,cb) (This)->lpVtbl->SetPropertyStorage(This,psps,cb) #define IPersistSerializedPropStorage2_GetPropertyStorage(This,ppsps,pcb) (This)->lpVtbl->GetPropertyStorage(This,ppsps,pcb) /*** IPersistSerializedPropStorage2 methods ***/ #define IPersistSerializedPropStorage2_GetPropertyStorageSize(This,pcb) (This)->lpVtbl->GetPropertyStorageSize(This,pcb) #define IPersistSerializedPropStorage2_GetPropertyStorageBuffer(This,psps,cb,pcbWritten) (This)->lpVtbl->GetPropertyStorageBuffer(This,psps,cb,pcbWritten) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPersistSerializedPropStorage2_QueryInterface(IPersistSerializedPropStorage2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPersistSerializedPropStorage2_AddRef(IPersistSerializedPropStorage2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPersistSerializedPropStorage2_Release(IPersistSerializedPropStorage2* This) { return This->lpVtbl->Release(This); } /*** IPersistSerializedPropStorage methods ***/ static FORCEINLINE HRESULT IPersistSerializedPropStorage2_SetFlags(IPersistSerializedPropStorage2* This,PERSIST_SPROPSTORE_FLAGS flags) { return This->lpVtbl->SetFlags(This,flags); } static FORCEINLINE HRESULT IPersistSerializedPropStorage2_SetPropertyStorage(IPersistSerializedPropStorage2* This,PCUSERIALIZEDPROPSTORAGE psps,DWORD cb) { return This->lpVtbl->SetPropertyStorage(This,psps,cb); } static FORCEINLINE HRESULT IPersistSerializedPropStorage2_GetPropertyStorage(IPersistSerializedPropStorage2* This,SERIALIZEDPROPSTORAGE **ppsps,DWORD *pcb) { return This->lpVtbl->GetPropertyStorage(This,ppsps,pcb); } /*** IPersistSerializedPropStorage2 methods ***/ static FORCEINLINE HRESULT IPersistSerializedPropStorage2_GetPropertyStorageSize(IPersistSerializedPropStorage2* This,DWORD *pcb) { return This->lpVtbl->GetPropertyStorageSize(This,pcb); } static FORCEINLINE HRESULT IPersistSerializedPropStorage2_GetPropertyStorageBuffer(IPersistSerializedPropStorage2* This,SERIALIZEDPROPSTORAGE *psps,DWORD cb,DWORD *pcbWritten) { return This->lpVtbl->GetPropertyStorageBuffer(This,psps,cb,pcbWritten); } #endif #endif #endif #endif /* __IPersistSerializedPropStorage2_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertySystemChangeNotify interface */ #ifndef __IPropertySystemChangeNotify_INTERFACE_DEFINED__ #define __IPropertySystemChangeNotify_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertySystemChangeNotify, 0xfa955fd9, 0x38be, 0x4879, 0xa6,0xce, 0x82,0x4c,0xf5,0x2d,0x60,0x9f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("fa955fd9-38be-4879-a6ce-824cf52d609f") IPropertySystemChangeNotify : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SchemaRefreshed( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertySystemChangeNotify, 0xfa955fd9, 0x38be, 0x4879, 0xa6,0xce, 0x82,0x4c,0xf5,0x2d,0x60,0x9f) #endif #else typedef struct IPropertySystemChangeNotifyVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertySystemChangeNotify *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertySystemChangeNotify *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertySystemChangeNotify *This); /*** IPropertySystemChangeNotify methods ***/ HRESULT (STDMETHODCALLTYPE *SchemaRefreshed)( IPropertySystemChangeNotify *This); END_INTERFACE } IPropertySystemChangeNotifyVtbl; interface IPropertySystemChangeNotify { CONST_VTBL IPropertySystemChangeNotifyVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertySystemChangeNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertySystemChangeNotify_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertySystemChangeNotify_Release(This) (This)->lpVtbl->Release(This) /*** IPropertySystemChangeNotify methods ***/ #define IPropertySystemChangeNotify_SchemaRefreshed(This) (This)->lpVtbl->SchemaRefreshed(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertySystemChangeNotify_QueryInterface(IPropertySystemChangeNotify* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertySystemChangeNotify_AddRef(IPropertySystemChangeNotify* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertySystemChangeNotify_Release(IPropertySystemChangeNotify* This) { return This->lpVtbl->Release(This); } /*** IPropertySystemChangeNotify methods ***/ static FORCEINLINE HRESULT IPropertySystemChangeNotify_SchemaRefreshed(IPropertySystemChangeNotify* This) { return This->lpVtbl->SchemaRefreshed(This); } #endif #endif #endif #endif /* __IPropertySystemChangeNotify_INTERFACE_DEFINED__ */ /***************************************************************************** * ICreateObject interface */ #ifndef __ICreateObject_INTERFACE_DEFINED__ #define __ICreateObject_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICreateObject, 0x75121952, 0xe0d0, 0x43e5, 0x93,0x80, 0x1d,0x80,0x48,0x3a,0xcf,0x72); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("75121952-e0d0-43e5-9380-1d80483acf72") ICreateObject : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateObject( REFCLSID clsid, IUnknown *pUnkOuter, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICreateObject, 0x75121952, 0xe0d0, 0x43e5, 0x93,0x80, 0x1d,0x80,0x48,0x3a,0xcf,0x72) #endif #else typedef struct ICreateObjectVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICreateObject *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICreateObject *This); ULONG (STDMETHODCALLTYPE *Release)( ICreateObject *This); /*** ICreateObject methods ***/ HRESULT (STDMETHODCALLTYPE *CreateObject)( ICreateObject *This, REFCLSID clsid, IUnknown *pUnkOuter, REFIID riid, void **ppv); END_INTERFACE } ICreateObjectVtbl; interface ICreateObject { CONST_VTBL ICreateObjectVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICreateObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICreateObject_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICreateObject_Release(This) (This)->lpVtbl->Release(This) /*** ICreateObject methods ***/ #define ICreateObject_CreateObject(This,clsid,pUnkOuter,riid,ppv) (This)->lpVtbl->CreateObject(This,clsid,pUnkOuter,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICreateObject_QueryInterface(ICreateObject* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICreateObject_AddRef(ICreateObject* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICreateObject_Release(ICreateObject* This) { return This->lpVtbl->Release(This); } /*** ICreateObject methods ***/ static FORCEINLINE HRESULT ICreateObject_CreateObject(ICreateObject* This,REFCLSID clsid,IUnknown *pUnkOuter,REFIID riid,void **ppv) { return This->lpVtbl->CreateObject(This,clsid,pUnkOuter,riid,ppv); } #endif #endif #endif #endif /* __ICreateObject_INTERFACE_DEFINED__ */ #define PKEY_PIDSTR_MAX 10 #define GUIDSTRING_MAX (39) #define PKEYSTR_MAX (GUIDSTRING_MAX + 1 + PKEY_PIDSTR_MAX) PSSTDAPI PSCoerceToCanonicalValue(REFPROPERTYKEY key, PROPVARIANT *ppropvar); PSSTDAPI PSCreateAdapterFromPropertyStore(IPropertyStore *pps, REFIID riid, void **ppv); PSSTDAPI PSCreateDelayedMultiplexPropertyStore(GETPROPERTYSTOREFLAGS flags, IDelayedPropertyStoreFactory *pdpsf, const DWORD *rgStoreIds, DWORD cStores, REFIID riid, void **ppv); PSSTDAPI PSCreateMemoryPropertyStore(REFIID riid, void **ppv); PSSTDAPI PSCreateMultiplexPropertyStore(IUnknown **prgpunkStores, DWORD cStores, REFIID riid, void **ppv); PSSTDAPI PSCreatePropertyChangeArray(const PROPERTYKEY *rgpropkey, const PKA_FLAGS *rgflags, const PROPVARIANT *rgpropvar, UINT cChanges, REFIID riid, void **ppv); PSSTDAPI PSCreatePropertyStoreFromObject(IUnknown *punk, DWORD grfMode, REFIID riid, void **ppv); PSSTDAPI PSCreatePropertyStoreFromPropertySetStorage(IPropertySetStorage *ppss, DWORD grfMode, REFIID riid, void **ppv); PSSTDAPI PSCreateSimplePropertyChange(PKA_FLAGS flags, REFPROPERTYKEY key, REFPROPVARIANT propvar, REFIID riid, void **ppv); PSSTDAPI PSEnumeratePropertyDescriptions(PROPDESC_ENUMFILTER filterOn, REFIID riid, void **ppv); PSSTDAPI PSFormatForDisplay(REFPROPERTYKEY propkey, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdfFlags, LPWSTR pwszText, DWORD cchText); PSSTDAPI PSFormatForDisplayAlloc(REFPROPERTYKEY key, REFPROPVARIANT propvar, PROPDESC_FORMAT_FLAGS pdff, PWSTR *ppszDisplay); PSSTDAPI PSFormatPropertyValue(IPropertyStore *pps, IPropertyDescription *ppd, PROPDESC_FORMAT_FLAGS pdff, LPWSTR *ppszDisplay); PSSTDAPI PSGetImageReferenceForValue(REFPROPERTYKEY propkey, REFPROPVARIANT propvar, PWSTR *ppszImageRes); PSSTDAPI PSGetItemPropertyHandler(IUnknown *punkItem, BOOL fReadWrite, REFIID riid, void **ppv); PSSTDAPI PSGetItemPropertyHandlerWithCreateObject(IUnknown *punkItem, BOOL fReadWrite, IUnknown *punkCreateObject, REFIID riid, void **ppv); PSSTDAPI PSGetNamedPropertyFromPropertyStorage(PCUSERIALIZEDPROPSTORAGE psps, DWORD cb, LPCWSTR pszName, PROPVARIANT *ppropvar); PSSTDAPI PSGetNameFromPropertyKey(REFPROPERTYKEY propkey, PWSTR *ppszCanonicalName); PSSTDAPI PSGetPropertyDescription(REFPROPERTYKEY propkey, REFIID riid, void **ppv); PSSTDAPI PSGetPropertyDescriptionByName(LPCWSTR pszCanonicalName, REFIID riid, void **ppv); PSSTDAPI PSGetPropertyDescriptionListFromString(LPCWSTR pszPropList, REFIID riid, void **ppv); PSSTDAPI PSGetPropertyFromPropertyStorage(PCUSERIALIZEDPROPSTORAGE psps, DWORD cb, REFPROPERTYKEY rpkey, PROPVARIANT *ppropvar); PSSTDAPI PSGetPropertyKeyFromName(PCWSTR pszName, PROPERTYKEY *ppropkey); PSSTDAPI PSGetPropertySystem(REFIID riid, void **ppv); PSSTDAPI PSGetPropertyValue(IPropertyStore *pps, IPropertyDescription *ppd, PROPVARIANT *ppropvar); PSSTDAPI PSLookupPropertyHandlerCLSID(PCWSTR pszFilePath, CLSID *pclsid); PSSTDAPI PSPropertyBag_Delete(IPropertyBag *propBag, LPCWSTR propName); PSSTDAPI PSPropertyBag_ReadBOOL(IPropertyBag *propBag, LPCWSTR propName, BOOL *value); PSSTDAPI PSPropertyBag_ReadBSTR(IPropertyBag *propBag, LPCWSTR propName, BSTR *value); PSSTDAPI PSPropertyBag_ReadDWORD(IPropertyBag *propBag, LPCWSTR propName, DWORD *value); PSSTDAPI PSPropertyBag_ReadGUID(IPropertyBag *propBag, LPCWSTR propName, GUID *value); PSSTDAPI PSPropertyBag_ReadInt(IPropertyBag *propBag, LPCWSTR propName, INT *value); PSSTDAPI PSPropertyBag_ReadLONG(IPropertyBag *propBag, LPCWSTR propName, LONG *value); PSSTDAPI PSPropertyBag_ReadPOINTL(IPropertyBag *propBag, LPCWSTR propName, POINTL *value); PSSTDAPI PSPropertyBag_ReadPOINTS(IPropertyBag *propBag, LPCWSTR propName, POINTS *value); PSSTDAPI PSPropertyBag_ReadPropertyKey(IPropertyBag *propBag, LPCWSTR propName, PROPERTYKEY *value); PSSTDAPI PSPropertyBag_ReadRECTL(IPropertyBag *propBag, LPCWSTR propName, RECTL *value); PSSTDAPI PSPropertyBag_ReadSHORT(IPropertyBag *propBag, LPCWSTR propName, SHORT *value); PSSTDAPI PSPropertyBag_ReadStr(IPropertyBag *propBag, LPCWSTR propName, LPWSTR value, int characterCount); PSSTDAPI PSPropertyBag_ReadStrAlloc(IPropertyBag *propBag, LPCWSTR propName, PWSTR *value); PSSTDAPI PSPropertyBag_ReadStream(IPropertyBag *propBag, LPCWSTR propName, IStream **value); PSSTDAPI PSPropertyBag_ReadType(IPropertyBag *propBag, LPCWSTR propName, VARIANT *var, VARTYPE type); PSSTDAPI PSPropertyBag_ReadULONGLONG(IPropertyBag *propBag, LPCWSTR propName, ULONGLONG *value); PSSTDAPI PSPropertyBag_ReadUnknown(IPropertyBag *propBag, LPCWSTR propName, REFIID riid, void **ppv); PSSTDAPI PSPropertyBag_WriteBOOL(IPropertyBag *propBag, LPCWSTR propName, BOOL value); PSSTDAPI PSPropertyBag_WriteBSTR(IPropertyBag *propBag, LPCWSTR propName, BSTR value); PSSTDAPI PSPropertyBag_WriteDWORD(IPropertyBag *propBag, LPCWSTR propName, DWORD value); PSSTDAPI PSPropertyBag_WriteGUID(IPropertyBag *propBag, LPCWSTR propName, const GUID *value); PSSTDAPI PSPropertyBag_WriteInt(IPropertyBag *propBag, LPCWSTR propName, INT value); PSSTDAPI PSPropertyBag_WriteLONG(IPropertyBag *propBag, LPCWSTR propName, LONG value); PSSTDAPI PSPropertyBag_WritePOINTL(IPropertyBag *propBag, LPCWSTR propName, const POINTL *value); PSSTDAPI PSPropertyBag_WritePOINTS(IPropertyBag *propBag, LPCWSTR propName, const POINTS *value); PSSTDAPI PSPropertyBag_WritePropertyKey(IPropertyBag *propBag, LPCWSTR propName, REFPROPERTYKEY value); PSSTDAPI PSPropertyBag_WriteRECTL(IPropertyBag *propBag, LPCWSTR propName, const RECTL *value); PSSTDAPI PSPropertyBag_WriteSHORT(IPropertyBag *propBag, LPCWSTR propName, SHORT value); PSSTDAPI PSPropertyBag_WriteStr(IPropertyBag *propBag, LPCWSTR propName, LPCWSTR value); PSSTDAPI PSPropertyBag_WriteStream(IPropertyBag *propBag, LPCWSTR propName, IStream *value); PSSTDAPI PSPropertyBag_WriteULONGLONG(IPropertyBag *propBag, LPCWSTR propName, ULONGLONG value); PSSTDAPI PSPropertyBag_WriteUnknown(IPropertyBag *propBag, LPCWSTR propName, IUnknown *punk); PSSTDAPI PSPropertyKeyFromString(LPCWSTR pszString, PROPERTYKEY *pkey); PSSTDAPI PSRefreshPropertySchema(void); PSSTDAPI PSRegisterPropertySchema(PCWSTR pszPath); PSSTDAPI PSSetPropertyValue(IPropertyStore *pps, IPropertyDescription *ppd, REFPROPVARIANT propvar); PSSTDAPI PSStringFromPropertyKey(REFPROPERTYKEY pkey, LPWSTR psz, UINT cch); PSSTDAPI PSUnregisterPropertySchema(PCWSTR pszPath); #ifndef __PropSysObjects_LIBRARY_DEFINED__ #define __PropSysObjects_LIBRARY_DEFINED__ DEFINE_GUID(LIBID_PropSysObjects, 0x2cda3294, 0x6c4f, 0x4020, 0xb1,0x61, 0x27,0xc5,0x30,0xc8,0x1f,0xa6); /***************************************************************************** * InMemoryPropertyStore coclass */ DEFINE_GUID(CLSID_InMemoryPropertyStore, 0x9a02e012, 0x6303, 0x4e1e, 0xb9,0xa1, 0x63,0x0f,0x80,0x25,0x92,0xc5); #ifdef __cplusplus class DECLSPEC_UUID("9a02e012-6303-4e1e-b9a1-630f802592c5") InMemoryPropertyStore; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(InMemoryPropertyStore, 0x9a02e012, 0x6303, 0x4e1e, 0xb9,0xa1, 0x63,0x0f,0x80,0x25,0x92,0xc5) #endif #endif /***************************************************************************** * PropertySystem coclass */ DEFINE_GUID(CLSID_PropertySystem, 0xb8967f85, 0x58ae, 0x4f46, 0x9f,0xb2, 0x5d,0x79,0x04,0x79,0x8f,0x4b); #ifdef __cplusplus class DECLSPEC_UUID("b8967f85-58ae-4f46-9fb2-5d7904798f4b") PropertySystem; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(PropertySystem, 0xb8967f85, 0x58ae, 0x4f46, 0x9f,0xb2, 0x5d,0x79,0x04,0x79,0x8f,0x4b) #endif #endif #endif /* __PropSysObjects_LIBRARY_DEFINED__ */ #endif /* Begin additional prototypes for all interfaces */ ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *); unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *); unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *); void __RPC_USER BSTR_UserFree (ULONG *, BSTR *); ULONG __RPC_USER LPSAFEARRAY_UserSize (ULONG *, ULONG, LPSAFEARRAY *); unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal (ULONG *, unsigned char *, LPSAFEARRAY *); unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(ULONG *, unsigned char *, LPSAFEARRAY *); void __RPC_USER LPSAFEARRAY_UserFree (ULONG *, LPSAFEARRAY *); /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __propsys_h__ */