/*** Autogenerated by WIDL 10.17 from /var/tmp/portage/app-emulation/wine-vanilla-10.17/work/wine-10.17/include/shobjidl.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 __shobjidl_h__ #define __shobjidl_h__ /* Forward declarations */ #ifndef __IPersistFolder_FWD_DEFINED__ #define __IPersistFolder_FWD_DEFINED__ typedef interface IPersistFolder IPersistFolder; #ifdef __cplusplus interface IPersistFolder; #endif /* __cplusplus */ #endif #ifndef __IPersistFolder2_FWD_DEFINED__ #define __IPersistFolder2_FWD_DEFINED__ typedef interface IPersistFolder2 IPersistFolder2; #ifdef __cplusplus interface IPersistFolder2; #endif /* __cplusplus */ #endif #ifndef __IPersistIDList_FWD_DEFINED__ #define __IPersistIDList_FWD_DEFINED__ typedef interface IPersistIDList IPersistIDList; #ifdef __cplusplus interface IPersistIDList; #endif /* __cplusplus */ #endif #ifndef __IEnumIDList_FWD_DEFINED__ #define __IEnumIDList_FWD_DEFINED__ typedef interface IEnumIDList IEnumIDList; #ifdef __cplusplus interface IEnumIDList; #endif /* __cplusplus */ #endif #ifndef __IShellPropSheetExt_FWD_DEFINED__ #define __IShellPropSheetExt_FWD_DEFINED__ typedef interface IShellPropSheetExt IShellPropSheetExt; #ifdef __cplusplus interface IShellPropSheetExt; #endif /* __cplusplus */ #endif #ifndef __IShellFolder_FWD_DEFINED__ #define __IShellFolder_FWD_DEFINED__ typedef interface IShellFolder IShellFolder; #ifdef __cplusplus interface IShellFolder; #endif /* __cplusplus */ #endif #ifndef __IEnumExtraSearch_FWD_DEFINED__ #define __IEnumExtraSearch_FWD_DEFINED__ typedef interface IEnumExtraSearch IEnumExtraSearch; #ifdef __cplusplus interface IEnumExtraSearch; #endif /* __cplusplus */ #endif #ifndef __IShellFolder2_FWD_DEFINED__ #define __IShellFolder2_FWD_DEFINED__ typedef interface IShellFolder2 IShellFolder2; #ifdef __cplusplus interface IShellFolder2; #endif /* __cplusplus */ #endif #ifndef __IShellItem_FWD_DEFINED__ #define __IShellItem_FWD_DEFINED__ typedef interface IShellItem IShellItem; #ifdef __cplusplus interface IShellItem; #endif /* __cplusplus */ #endif #ifndef __IShellItem2_FWD_DEFINED__ #define __IShellItem2_FWD_DEFINED__ typedef interface IShellItem2 IShellItem2; #ifdef __cplusplus interface IShellItem2; #endif /* __cplusplus */ #endif #ifndef __IShellItemImageFactory_FWD_DEFINED__ #define __IShellItemImageFactory_FWD_DEFINED__ typedef interface IShellItemImageFactory IShellItemImageFactory; #ifdef __cplusplus interface IShellItemImageFactory; #endif /* __cplusplus */ #endif #ifndef __IParentAndItem_FWD_DEFINED__ #define __IParentAndItem_FWD_DEFINED__ typedef interface IParentAndItem IParentAndItem; #ifdef __cplusplus interface IParentAndItem; #endif /* __cplusplus */ #endif #ifndef __INewWindowManager_FWD_DEFINED__ #define __INewWindowManager_FWD_DEFINED__ typedef interface INewWindowManager INewWindowManager; #ifdef __cplusplus interface INewWindowManager; #endif /* __cplusplus */ #endif #ifndef __IEnumShellItems_FWD_DEFINED__ #define __IEnumShellItems_FWD_DEFINED__ typedef interface IEnumShellItems IEnumShellItems; #ifdef __cplusplus interface IEnumShellItems; #endif /* __cplusplus */ #endif #ifndef __IShellItemArray_FWD_DEFINED__ #define __IShellItemArray_FWD_DEFINED__ typedef interface IShellItemArray IShellItemArray; #ifdef __cplusplus interface IShellItemArray; #endif /* __cplusplus */ #endif #ifndef __IShellItemFilter_FWD_DEFINED__ #define __IShellItemFilter_FWD_DEFINED__ typedef interface IShellItemFilter IShellItemFilter; #ifdef __cplusplus interface IShellItemFilter; #endif /* __cplusplus */ #endif #ifndef __IShellIcon_FWD_DEFINED__ #define __IShellIcon_FWD_DEFINED__ typedef interface IShellIcon IShellIcon; #ifdef __cplusplus interface IShellIcon; #endif /* __cplusplus */ #endif #ifndef __IShellView_FWD_DEFINED__ #define __IShellView_FWD_DEFINED__ typedef interface IShellView IShellView; #ifdef __cplusplus interface IShellView; #endif /* __cplusplus */ #endif #ifndef __IShellView2_FWD_DEFINED__ #define __IShellView2_FWD_DEFINED__ typedef interface IShellView2 IShellView2; #ifdef __cplusplus interface IShellView2; #endif /* __cplusplus */ #endif #ifndef __IShellView3_FWD_DEFINED__ #define __IShellView3_FWD_DEFINED__ typedef interface IShellView3 IShellView3; #ifdef __cplusplus interface IShellView3; #endif /* __cplusplus */ #endif #ifndef __IFolderView_FWD_DEFINED__ #define __IFolderView_FWD_DEFINED__ typedef interface IFolderView IFolderView; #ifdef __cplusplus interface IFolderView; #endif /* __cplusplus */ #endif #ifndef __IFolderView2_FWD_DEFINED__ #define __IFolderView2_FWD_DEFINED__ typedef interface IFolderView2 IFolderView2; #ifdef __cplusplus interface IFolderView2; #endif /* __cplusplus */ #endif #ifndef __IShellBrowser_FWD_DEFINED__ #define __IShellBrowser_FWD_DEFINED__ typedef interface IShellBrowser IShellBrowser; #ifdef __cplusplus interface IShellBrowser; #endif /* __cplusplus */ #endif #ifndef __IShellLinkA_FWD_DEFINED__ #define __IShellLinkA_FWD_DEFINED__ typedef interface IShellLinkA IShellLinkA; #ifdef __cplusplus interface IShellLinkA; #endif /* __cplusplus */ #endif #ifndef __IShellLinkW_FWD_DEFINED__ #define __IShellLinkW_FWD_DEFINED__ typedef interface IShellLinkW IShellLinkW; #ifdef __cplusplus interface IShellLinkW; #endif /* __cplusplus */ #endif #ifndef __IShellExtInit_FWD_DEFINED__ #define __IShellExtInit_FWD_DEFINED__ typedef interface IShellExtInit IShellExtInit; #ifdef __cplusplus interface IShellExtInit; #endif /* __cplusplus */ #endif #ifndef __IPersistFolder3_FWD_DEFINED__ #define __IPersistFolder3_FWD_DEFINED__ typedef interface IPersistFolder3 IPersistFolder3; #ifdef __cplusplus interface IPersistFolder3; #endif /* __cplusplus */ #endif #ifndef __IExtractIconA_FWD_DEFINED__ #define __IExtractIconA_FWD_DEFINED__ typedef interface IExtractIconA IExtractIconA; #ifdef __cplusplus interface IExtractIconA; #endif /* __cplusplus */ #endif #ifndef __IExtractIconW_FWD_DEFINED__ #define __IExtractIconW_FWD_DEFINED__ typedef interface IExtractIconW IExtractIconW; #ifdef __cplusplus interface IExtractIconW; #endif /* __cplusplus */ #endif #ifndef __ICommDlgBrowser_FWD_DEFINED__ #define __ICommDlgBrowser_FWD_DEFINED__ typedef interface ICommDlgBrowser ICommDlgBrowser; #ifdef __cplusplus interface ICommDlgBrowser; #endif /* __cplusplus */ #endif #ifndef __ICommDlgBrowser2_FWD_DEFINED__ #define __ICommDlgBrowser2_FWD_DEFINED__ typedef interface ICommDlgBrowser2 ICommDlgBrowser2; #ifdef __cplusplus interface ICommDlgBrowser2; #endif /* __cplusplus */ #endif #ifndef __ICommDlgBrowser3_FWD_DEFINED__ #define __ICommDlgBrowser3_FWD_DEFINED__ typedef interface ICommDlgBrowser3 ICommDlgBrowser3; #ifdef __cplusplus interface ICommDlgBrowser3; #endif /* __cplusplus */ #endif #ifndef __IDockingWindow_FWD_DEFINED__ #define __IDockingWindow_FWD_DEFINED__ typedef interface IDockingWindow IDockingWindow; #ifdef __cplusplus interface IDockingWindow; #endif /* __cplusplus */ #endif #ifndef __IDockingWindowFrame_FWD_DEFINED__ #define __IDockingWindowFrame_FWD_DEFINED__ typedef interface IDockingWindowFrame IDockingWindowFrame; #ifdef __cplusplus interface IDockingWindowFrame; #endif /* __cplusplus */ #endif #ifndef __IDragSourceHelper_FWD_DEFINED__ #define __IDragSourceHelper_FWD_DEFINED__ typedef interface IDragSourceHelper IDragSourceHelper; #ifdef __cplusplus interface IDragSourceHelper; #endif /* __cplusplus */ #endif #ifndef __IDragSourceHelper2_FWD_DEFINED__ #define __IDragSourceHelper2_FWD_DEFINED__ typedef interface IDragSourceHelper2 IDragSourceHelper2; #ifdef __cplusplus interface IDragSourceHelper2; #endif /* __cplusplus */ #endif #ifndef __IDropTargetHelper_FWD_DEFINED__ #define __IDropTargetHelper_FWD_DEFINED__ typedef interface IDropTargetHelper IDropTargetHelper; #ifdef __cplusplus interface IDropTargetHelper; #endif /* __cplusplus */ #endif #ifndef __IContextMenu_FWD_DEFINED__ #define __IContextMenu_FWD_DEFINED__ typedef interface IContextMenu IContextMenu; #ifdef __cplusplus interface IContextMenu; #endif /* __cplusplus */ #endif #ifndef __IContextMenu2_FWD_DEFINED__ #define __IContextMenu2_FWD_DEFINED__ typedef interface IContextMenu2 IContextMenu2; #ifdef __cplusplus interface IContextMenu2; #endif /* __cplusplus */ #endif #ifndef __IContextMenu3_FWD_DEFINED__ #define __IContextMenu3_FWD_DEFINED__ typedef interface IContextMenu3 IContextMenu3; #ifdef __cplusplus interface IContextMenu3; #endif /* __cplusplus */ #endif #ifndef __IContextMenuCB_FWD_DEFINED__ #define __IContextMenuCB_FWD_DEFINED__ typedef interface IContextMenuCB IContextMenuCB; #ifdef __cplusplus interface IContextMenuCB; #endif /* __cplusplus */ #endif #ifndef __IShellExecuteHookA_FWD_DEFINED__ #define __IShellExecuteHookA_FWD_DEFINED__ typedef interface IShellExecuteHookA IShellExecuteHookA; #ifdef __cplusplus interface IShellExecuteHookA; #endif /* __cplusplus */ #endif #ifndef __IShellExecuteHookW_FWD_DEFINED__ #define __IShellExecuteHookW_FWD_DEFINED__ typedef interface IShellExecuteHookW IShellExecuteHookW; #ifdef __cplusplus interface IShellExecuteHookW; #endif /* __cplusplus */ #endif #ifndef __IShellLinkDataList_FWD_DEFINED__ #define __IShellLinkDataList_FWD_DEFINED__ typedef interface IShellLinkDataList IShellLinkDataList; #ifdef __cplusplus interface IShellLinkDataList; #endif /* __cplusplus */ #endif #ifndef __IResolveShellLink_FWD_DEFINED__ #define __IResolveShellLink_FWD_DEFINED__ typedef interface IResolveShellLink IResolveShellLink; #ifdef __cplusplus interface IResolveShellLink; #endif /* __cplusplus */ #endif #ifndef __IURLSearchHook_FWD_DEFINED__ #define __IURLSearchHook_FWD_DEFINED__ typedef interface IURLSearchHook IURLSearchHook; #ifdef __cplusplus interface IURLSearchHook; #endif /* __cplusplus */ #endif #ifndef __ISearchContext_FWD_DEFINED__ #define __ISearchContext_FWD_DEFINED__ typedef interface ISearchContext ISearchContext; #ifdef __cplusplus interface ISearchContext; #endif /* __cplusplus */ #endif #ifndef __IURLSearchHook2_FWD_DEFINED__ #define __IURLSearchHook2_FWD_DEFINED__ typedef interface IURLSearchHook2 IURLSearchHook2; #ifdef __cplusplus interface IURLSearchHook2; #endif /* __cplusplus */ #endif #ifndef __INewShortcutHookA_FWD_DEFINED__ #define __INewShortcutHookA_FWD_DEFINED__ typedef interface INewShortcutHookA INewShortcutHookA; #ifdef __cplusplus interface INewShortcutHookA; #endif /* __cplusplus */ #endif #ifndef __INewShortcutHookW_FWD_DEFINED__ #define __INewShortcutHookW_FWD_DEFINED__ typedef interface INewShortcutHookW INewShortcutHookW; #ifdef __cplusplus interface INewShortcutHookW; #endif /* __cplusplus */ #endif #ifndef __IRunnableTask_FWD_DEFINED__ #define __IRunnableTask_FWD_DEFINED__ typedef interface IRunnableTask IRunnableTask; #ifdef __cplusplus interface IRunnableTask; #endif /* __cplusplus */ #endif #ifndef __IShellChangeNotify_FWD_DEFINED__ #define __IShellChangeNotify_FWD_DEFINED__ typedef interface IShellChangeNotify IShellChangeNotify; #ifdef __cplusplus interface IShellChangeNotify; #endif /* __cplusplus */ #endif #ifndef __IFileSystemBindData_FWD_DEFINED__ #define __IFileSystemBindData_FWD_DEFINED__ typedef interface IFileSystemBindData IFileSystemBindData; #ifdef __cplusplus interface IFileSystemBindData; #endif /* __cplusplus */ #endif #ifndef __ITaskbarList_FWD_DEFINED__ #define __ITaskbarList_FWD_DEFINED__ typedef interface ITaskbarList ITaskbarList; #ifdef __cplusplus interface ITaskbarList; #endif /* __cplusplus */ #endif #ifndef __ITaskbarList2_FWD_DEFINED__ #define __ITaskbarList2_FWD_DEFINED__ typedef interface ITaskbarList2 ITaskbarList2; #ifdef __cplusplus interface ITaskbarList2; #endif /* __cplusplus */ #endif #ifndef __ITaskbarList3_FWD_DEFINED__ #define __ITaskbarList3_FWD_DEFINED__ typedef interface ITaskbarList3 ITaskbarList3; #ifdef __cplusplus interface ITaskbarList3; #endif /* __cplusplus */ #endif #ifndef __ITaskbarList4_FWD_DEFINED__ #define __ITaskbarList4_FWD_DEFINED__ typedef interface ITaskbarList4 ITaskbarList4; #ifdef __cplusplus interface ITaskbarList4; #endif /* __cplusplus */ #endif #ifndef __IAutoCompleteDropDown_FWD_DEFINED__ #define __IAutoCompleteDropDown_FWD_DEFINED__ typedef interface IAutoCompleteDropDown IAutoCompleteDropDown; #ifdef __cplusplus interface IAutoCompleteDropDown; #endif /* __cplusplus */ #endif #ifndef __IProfferService_FWD_DEFINED__ #define __IProfferService_FWD_DEFINED__ typedef interface IProfferService IProfferService; #ifdef __cplusplus interface IProfferService; #endif /* __cplusplus */ #endif #ifndef __IExplorerBrowserEvents_FWD_DEFINED__ #define __IExplorerBrowserEvents_FWD_DEFINED__ typedef interface IExplorerBrowserEvents IExplorerBrowserEvents; #ifdef __cplusplus interface IExplorerBrowserEvents; #endif /* __cplusplus */ #endif #ifndef __IExplorerPaneVisibility_FWD_DEFINED__ #define __IExplorerPaneVisibility_FWD_DEFINED__ typedef interface IExplorerPaneVisibility IExplorerPaneVisibility; #ifdef __cplusplus interface IExplorerPaneVisibility; #endif /* __cplusplus */ #endif #ifndef __IExplorerBrowser_FWD_DEFINED__ #define __IExplorerBrowser_FWD_DEFINED__ typedef interface IExplorerBrowser IExplorerBrowser; #ifdef __cplusplus interface IExplorerBrowser; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControl_FWD_DEFINED__ #define __INameSpaceTreeControl_FWD_DEFINED__ typedef interface INameSpaceTreeControl INameSpaceTreeControl; #ifdef __cplusplus interface INameSpaceTreeControl; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControl2_FWD_DEFINED__ #define __INameSpaceTreeControl2_FWD_DEFINED__ typedef interface INameSpaceTreeControl2 INameSpaceTreeControl2; #ifdef __cplusplus interface INameSpaceTreeControl2; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControlEvents_FWD_DEFINED__ #define __INameSpaceTreeControlEvents_FWD_DEFINED__ typedef interface INameSpaceTreeControlEvents INameSpaceTreeControlEvents; #ifdef __cplusplus interface INameSpaceTreeControlEvents; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControlCustomDraw_FWD_DEFINED__ #define __INameSpaceTreeControlCustomDraw_FWD_DEFINED__ typedef interface INameSpaceTreeControlCustomDraw INameSpaceTreeControlCustomDraw; #ifdef __cplusplus interface INameSpaceTreeControlCustomDraw; #endif /* __cplusplus */ #endif #ifndef __INameSpaceTreeControlDropHandler_FWD_DEFINED__ #define __INameSpaceTreeControlDropHandler_FWD_DEFINED__ typedef interface INameSpaceTreeControlDropHandler INameSpaceTreeControlDropHandler; #ifdef __cplusplus interface INameSpaceTreeControlDropHandler; #endif /* __cplusplus */ #endif #ifndef __IFileDialogEvents_FWD_DEFINED__ #define __IFileDialogEvents_FWD_DEFINED__ typedef interface IFileDialogEvents IFileDialogEvents; #ifdef __cplusplus interface IFileDialogEvents; #endif /* __cplusplus */ #endif #ifndef __IModalWindow_FWD_DEFINED__ #define __IModalWindow_FWD_DEFINED__ typedef interface IModalWindow IModalWindow; #ifdef __cplusplus interface IModalWindow; #endif /* __cplusplus */ #endif #ifndef __IFileDialog_FWD_DEFINED__ #define __IFileDialog_FWD_DEFINED__ typedef interface IFileDialog IFileDialog; #ifdef __cplusplus interface IFileDialog; #endif /* __cplusplus */ #endif #ifndef __IFileDialog2_FWD_DEFINED__ #define __IFileDialog2_FWD_DEFINED__ typedef interface IFileDialog2 IFileDialog2; #ifdef __cplusplus interface IFileDialog2; #endif /* __cplusplus */ #endif #ifndef __IFileOperationProgressSink_FWD_DEFINED__ #define __IFileOperationProgressSink_FWD_DEFINED__ typedef interface IFileOperationProgressSink IFileOperationProgressSink; #ifdef __cplusplus interface IFileOperationProgressSink; #endif /* __cplusplus */ #endif #ifndef __IFileSaveDialog_FWD_DEFINED__ #define __IFileSaveDialog_FWD_DEFINED__ typedef interface IFileSaveDialog IFileSaveDialog; #ifdef __cplusplus interface IFileSaveDialog; #endif /* __cplusplus */ #endif #ifndef __IFileOpenDialog_FWD_DEFINED__ #define __IFileOpenDialog_FWD_DEFINED__ typedef interface IFileOpenDialog IFileOpenDialog; #ifdef __cplusplus interface IFileOpenDialog; #endif /* __cplusplus */ #endif #ifndef __IFileDialogCustomize_FWD_DEFINED__ #define __IFileDialogCustomize_FWD_DEFINED__ typedef interface IFileDialogCustomize IFileDialogCustomize; #ifdef __cplusplus interface IFileDialogCustomize; #endif /* __cplusplus */ #endif #ifndef __IFileDialogControlEvents_FWD_DEFINED__ #define __IFileDialogControlEvents_FWD_DEFINED__ typedef interface IFileDialogControlEvents IFileDialogControlEvents; #ifdef __cplusplus interface IFileDialogControlEvents; #endif /* __cplusplus */ #endif #ifndef __IKnownFolder_FWD_DEFINED__ #define __IKnownFolder_FWD_DEFINED__ typedef interface IKnownFolder IKnownFolder; #ifdef __cplusplus interface IKnownFolder; #endif /* __cplusplus */ #endif #ifndef __IKnownFolderManager_FWD_DEFINED__ #define __IKnownFolderManager_FWD_DEFINED__ typedef interface IKnownFolderManager IKnownFolderManager; #ifdef __cplusplus interface IKnownFolderManager; #endif /* __cplusplus */ #endif #ifndef __IApplicationAssociationRegistration_FWD_DEFINED__ #define __IApplicationAssociationRegistration_FWD_DEFINED__ typedef interface IApplicationAssociationRegistration IApplicationAssociationRegistration; #ifdef __cplusplus interface IApplicationAssociationRegistration; #endif /* __cplusplus */ #endif #ifndef __IApplicationDestinations_FWD_DEFINED__ #define __IApplicationDestinations_FWD_DEFINED__ typedef interface IApplicationDestinations IApplicationDestinations; #ifdef __cplusplus interface IApplicationDestinations; #endif /* __cplusplus */ #endif #ifndef __IApplicationDocumentLists_FWD_DEFINED__ #define __IApplicationDocumentLists_FWD_DEFINED__ typedef interface IApplicationDocumentLists IApplicationDocumentLists; #ifdef __cplusplus interface IApplicationDocumentLists; #endif /* __cplusplus */ #endif #ifndef __ICustomDestinationList_FWD_DEFINED__ #define __ICustomDestinationList_FWD_DEFINED__ typedef interface ICustomDestinationList ICustomDestinationList; #ifdef __cplusplus interface ICustomDestinationList; #endif /* __cplusplus */ #endif #ifndef __IQueryCancelAutoPlay_FWD_DEFINED__ #define __IQueryCancelAutoPlay_FWD_DEFINED__ typedef interface IQueryCancelAutoPlay IQueryCancelAutoPlay; #ifdef __cplusplus interface IQueryCancelAutoPlay; #endif /* __cplusplus */ #endif #ifndef __ITransferAdviseSink_FWD_DEFINED__ #define __ITransferAdviseSink_FWD_DEFINED__ typedef interface ITransferAdviseSink ITransferAdviseSink; #ifdef __cplusplus interface ITransferAdviseSink; #endif /* __cplusplus */ #endif #ifndef __ITransferSource_FWD_DEFINED__ #define __ITransferSource_FWD_DEFINED__ typedef interface ITransferSource ITransferSource; #ifdef __cplusplus interface ITransferSource; #endif /* __cplusplus */ #endif #ifndef __ITransferDestination_FWD_DEFINED__ #define __ITransferDestination_FWD_DEFINED__ typedef interface ITransferDestination ITransferDestination; #ifdef __cplusplus interface ITransferDestination; #endif /* __cplusplus */ #endif #ifndef __IAssocHandlerInvoker_FWD_DEFINED__ #define __IAssocHandlerInvoker_FWD_DEFINED__ typedef interface IAssocHandlerInvoker IAssocHandlerInvoker; #ifdef __cplusplus interface IAssocHandlerInvoker; #endif /* __cplusplus */ #endif #ifndef __IAssocHandler_FWD_DEFINED__ #define __IAssocHandler_FWD_DEFINED__ typedef interface IAssocHandler IAssocHandler; #ifdef __cplusplus interface IAssocHandler; #endif /* __cplusplus */ #endif #ifndef __IEnumAssocHandlers_FWD_DEFINED__ #define __IEnumAssocHandlers_FWD_DEFINED__ typedef interface IEnumAssocHandlers IEnumAssocHandlers; #ifdef __cplusplus interface IEnumAssocHandlers; #endif /* __cplusplus */ #endif #ifndef __IItemNameLimits_FWD_DEFINED__ #define __IItemNameLimits_FWD_DEFINED__ typedef interface IItemNameLimits IItemNameLimits; #ifdef __cplusplus interface IItemNameLimits; #endif /* __cplusplus */ #endif #ifndef __IApplicationActivationManager_FWD_DEFINED__ #define __IApplicationActivationManager_FWD_DEFINED__ typedef interface IApplicationActivationManager IApplicationActivationManager; #ifdef __cplusplus interface IApplicationActivationManager; #endif /* __cplusplus */ #endif #ifndef __IPreviewHandler_FWD_DEFINED__ #define __IPreviewHandler_FWD_DEFINED__ typedef interface IPreviewHandler IPreviewHandler; #ifdef __cplusplus interface IPreviewHandler; #endif /* __cplusplus */ #endif #ifndef __IPreviewHandlerFrame_FWD_DEFINED__ #define __IPreviewHandlerFrame_FWD_DEFINED__ typedef interface IPreviewHandlerFrame IPreviewHandlerFrame; #ifdef __cplusplus interface IPreviewHandlerFrame; #endif /* __cplusplus */ #endif #ifndef __IPreviewHandlerVisuals_FWD_DEFINED__ #define __IPreviewHandlerVisuals_FWD_DEFINED__ typedef interface IPreviewHandlerVisuals IPreviewHandlerVisuals; #ifdef __cplusplus interface IPreviewHandlerVisuals; #endif /* __cplusplus */ #endif #ifndef __ExplorerBrowser_FWD_DEFINED__ #define __ExplorerBrowser_FWD_DEFINED__ #ifdef __cplusplus typedef class ExplorerBrowser ExplorerBrowser; #else typedef struct ExplorerBrowser ExplorerBrowser; #endif /* defined __cplusplus */ #endif /* defined __ExplorerBrowser_FWD_DEFINED__ */ #ifndef __FileOpenDialog_FWD_DEFINED__ #define __FileOpenDialog_FWD_DEFINED__ #ifdef __cplusplus typedef class FileOpenDialog FileOpenDialog; #else typedef struct FileOpenDialog FileOpenDialog; #endif /* defined __cplusplus */ #endif /* defined __FileOpenDialog_FWD_DEFINED__ */ #ifndef __FileSaveDialog_FWD_DEFINED__ #define __FileSaveDialog_FWD_DEFINED__ #ifdef __cplusplus typedef class FileSaveDialog FileSaveDialog; #else typedef struct FileSaveDialog FileSaveDialog; #endif /* defined __cplusplus */ #endif /* defined __FileSaveDialog_FWD_DEFINED__ */ #ifndef __NamespaceTreeControl_FWD_DEFINED__ #define __NamespaceTreeControl_FWD_DEFINED__ #ifdef __cplusplus typedef class NamespaceTreeControl NamespaceTreeControl; #else typedef struct NamespaceTreeControl NamespaceTreeControl; #endif /* defined __cplusplus */ #endif /* defined __NamespaceTreeControl_FWD_DEFINED__ */ #ifndef __KnownFolderManager_FWD_DEFINED__ #define __KnownFolderManager_FWD_DEFINED__ #ifdef __cplusplus typedef class KnownFolderManager KnownFolderManager; #else typedef struct KnownFolderManager KnownFolderManager; #endif /* defined __cplusplus */ #endif /* defined __KnownFolderManager_FWD_DEFINED__ */ #ifndef __ApplicationAssociationRegistration_FWD_DEFINED__ #define __ApplicationAssociationRegistration_FWD_DEFINED__ #ifdef __cplusplus typedef class ApplicationAssociationRegistration ApplicationAssociationRegistration; #else typedef struct ApplicationAssociationRegistration ApplicationAssociationRegistration; #endif /* defined __cplusplus */ #endif /* defined __ApplicationAssociationRegistration_FWD_DEFINED__ */ #ifndef __ApplicationDestinations_FWD_DEFINED__ #define __ApplicationDestinations_FWD_DEFINED__ #ifdef __cplusplus typedef class ApplicationDestinations ApplicationDestinations; #else typedef struct ApplicationDestinations ApplicationDestinations; #endif /* defined __cplusplus */ #endif /* defined __ApplicationDestinations_FWD_DEFINED__ */ #ifndef __ApplicationDocumentLists_FWD_DEFINED__ #define __ApplicationDocumentLists_FWD_DEFINED__ #ifdef __cplusplus typedef class ApplicationDocumentLists ApplicationDocumentLists; #else typedef struct ApplicationDocumentLists ApplicationDocumentLists; #endif /* defined __cplusplus */ #endif /* defined __ApplicationDocumentLists_FWD_DEFINED__ */ #ifndef __ShellLink_FWD_DEFINED__ #define __ShellLink_FWD_DEFINED__ #ifdef __cplusplus typedef class ShellLink ShellLink; #else typedef struct ShellLink ShellLink; #endif /* defined __cplusplus */ #endif /* defined __ShellLink_FWD_DEFINED__ */ #ifndef __TaskbarList_FWD_DEFINED__ #define __TaskbarList_FWD_DEFINED__ #ifdef __cplusplus typedef class TaskbarList TaskbarList; #else typedef struct TaskbarList TaskbarList; #endif /* defined __cplusplus */ #endif /* defined __TaskbarList_FWD_DEFINED__ */ #ifndef __DestinationList_FWD_DEFINED__ #define __DestinationList_FWD_DEFINED__ #ifdef __cplusplus typedef class DestinationList DestinationList; #else typedef struct DestinationList DestinationList; #endif /* defined __cplusplus */ #endif /* defined __DestinationList_FWD_DEFINED__ */ #ifndef __EnumerableObjectCollection_FWD_DEFINED__ #define __EnumerableObjectCollection_FWD_DEFINED__ #ifdef __cplusplus typedef class EnumerableObjectCollection EnumerableObjectCollection; #else typedef struct EnumerableObjectCollection EnumerableObjectCollection; #endif /* defined __cplusplus */ #endif /* defined __EnumerableObjectCollection_FWD_DEFINED__ */ #ifndef __QueryCancelAutoPlay_FWD_DEFINED__ #define __QueryCancelAutoPlay_FWD_DEFINED__ #ifdef __cplusplus typedef class QueryCancelAutoPlay QueryCancelAutoPlay; #else typedef struct QueryCancelAutoPlay QueryCancelAutoPlay; #endif /* defined __cplusplus */ #endif /* defined __QueryCancelAutoPlay_FWD_DEFINED__ */ #ifndef __ApplicationActivationManager_FWD_DEFINED__ #define __ApplicationActivationManager_FWD_DEFINED__ #ifdef __cplusplus typedef class ApplicationActivationManager ApplicationActivationManager; #else typedef struct ApplicationActivationManager ApplicationActivationManager; #endif /* defined __cplusplus */ #endif /* defined __ApplicationActivationManager_FWD_DEFINED__ */ #ifndef __FileOperation_FWD_DEFINED__ #define __FileOperation_FWD_DEFINED__ #ifdef __cplusplus typedef class FileOperation FileOperation; #else typedef struct FileOperation FileOperation; #endif /* defined __cplusplus */ #endif /* defined __FileOperation_FWD_DEFINED__ */ #ifndef __IOperationsProgressDialog_FWD_DEFINED__ #define __IOperationsProgressDialog_FWD_DEFINED__ typedef interface IOperationsProgressDialog IOperationsProgressDialog; #ifdef __cplusplus interface IOperationsProgressDialog; #endif /* __cplusplus */ #endif #ifndef __IFileOperation_FWD_DEFINED__ #define __IFileOperation_FWD_DEFINED__ typedef interface IFileOperation IFileOperation; #ifdef __cplusplus interface IFileOperation; #endif /* __cplusplus */ #endif #ifndef __IEnumObjects_FWD_DEFINED__ #define __IEnumObjects_FWD_DEFINED__ typedef interface IEnumObjects IEnumObjects; #ifdef __cplusplus interface IEnumObjects; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #include #include #include #include #include #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif /* FIXME: #include */ #ifndef WINSHELLAPI #ifdef _SHELL32_ # define WINSHELLAPI #else # define WINSHELLAPI DECLSPEC_IMPORT #endif #endif /***************************************************************************** * IPersistFolder interface */ #ifndef __IPersistFolder_INTERFACE_DEFINED__ #define __IPersistFolder_INTERFACE_DEFINED__ typedef IPersistFolder *LPPERSISTFOLDER; DEFINE_GUID(IID_IPersistFolder, 0x000214ea, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214ea-0000-0000-c000-000000000046") IPersistFolder : public IPersist { virtual HRESULT STDMETHODCALLTYPE Initialize( LPCITEMIDLIST pidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPersistFolder, 0x000214ea, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IPersistFolderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPersistFolder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPersistFolder *This); ULONG (STDMETHODCALLTYPE *Release)( IPersistFolder *This); /*** IPersist methods ***/ HRESULT (STDMETHODCALLTYPE *GetClassID)( IPersistFolder *This, CLSID *pClassID); /*** IPersistFolder methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IPersistFolder *This, LPCITEMIDLIST pidl); END_INTERFACE } IPersistFolderVtbl; interface IPersistFolder { CONST_VTBL IPersistFolderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPersistFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPersistFolder_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPersistFolder_Release(This) (This)->lpVtbl->Release(This) /*** IPersist methods ***/ #define IPersistFolder_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) /*** IPersistFolder methods ***/ #define IPersistFolder_Initialize(This,pidl) (This)->lpVtbl->Initialize(This,pidl) #else /*** IUnknown methods ***/ static inline HRESULT IPersistFolder_QueryInterface(IPersistFolder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IPersistFolder_AddRef(IPersistFolder* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IPersistFolder_Release(IPersistFolder* This) { return This->lpVtbl->Release(This); } /*** IPersist methods ***/ static inline HRESULT IPersistFolder_GetClassID(IPersistFolder* This,CLSID *pClassID) { return This->lpVtbl->GetClassID(This,pClassID); } /*** IPersistFolder methods ***/ static inline HRESULT IPersistFolder_Initialize(IPersistFolder* This,LPCITEMIDLIST pidl) { return This->lpVtbl->Initialize(This,pidl); } #endif #endif #endif #endif /* __IPersistFolder_INTERFACE_DEFINED__ */ /***************************************************************************** * IPersistFolder2 interface */ #ifndef __IPersistFolder2_INTERFACE_DEFINED__ #define __IPersistFolder2_INTERFACE_DEFINED__ typedef IPersistFolder2 *LPPERSISTFOLDER2; DEFINE_GUID(IID_IPersistFolder2, 0x1ac3d9f0, 0x175c, 0x11d1, 0x95,0xbe, 0x00,0x60,0x97,0x97,0xea,0x4f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1ac3d9f0-175c-11d1-95be-00609797ea4f") IPersistFolder2 : public IPersistFolder { virtual HRESULT STDMETHODCALLTYPE GetCurFolder( LPITEMIDLIST *ppidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPersistFolder2, 0x1ac3d9f0, 0x175c, 0x11d1, 0x95,0xbe, 0x00,0x60,0x97,0x97,0xea,0x4f) #endif #else typedef struct IPersistFolder2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPersistFolder2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPersistFolder2 *This); ULONG (STDMETHODCALLTYPE *Release)( IPersistFolder2 *This); /*** IPersist methods ***/ HRESULT (STDMETHODCALLTYPE *GetClassID)( IPersistFolder2 *This, CLSID *pClassID); /*** IPersistFolder methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IPersistFolder2 *This, LPCITEMIDLIST pidl); /*** IPersistFolder2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetCurFolder)( IPersistFolder2 *This, LPITEMIDLIST *ppidl); END_INTERFACE } IPersistFolder2Vtbl; interface IPersistFolder2 { CONST_VTBL IPersistFolder2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPersistFolder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPersistFolder2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPersistFolder2_Release(This) (This)->lpVtbl->Release(This) /*** IPersist methods ***/ #define IPersistFolder2_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) /*** IPersistFolder methods ***/ #define IPersistFolder2_Initialize(This,pidl) (This)->lpVtbl->Initialize(This,pidl) /*** IPersistFolder2 methods ***/ #define IPersistFolder2_GetCurFolder(This,ppidl) (This)->lpVtbl->GetCurFolder(This,ppidl) #else /*** IUnknown methods ***/ static inline HRESULT IPersistFolder2_QueryInterface(IPersistFolder2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IPersistFolder2_AddRef(IPersistFolder2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IPersistFolder2_Release(IPersistFolder2* This) { return This->lpVtbl->Release(This); } /*** IPersist methods ***/ static inline HRESULT IPersistFolder2_GetClassID(IPersistFolder2* This,CLSID *pClassID) { return This->lpVtbl->GetClassID(This,pClassID); } /*** IPersistFolder methods ***/ static inline HRESULT IPersistFolder2_Initialize(IPersistFolder2* This,LPCITEMIDLIST pidl) { return This->lpVtbl->Initialize(This,pidl); } /*** IPersistFolder2 methods ***/ static inline HRESULT IPersistFolder2_GetCurFolder(IPersistFolder2* This,LPITEMIDLIST *ppidl) { return This->lpVtbl->GetCurFolder(This,ppidl); } #endif #endif #endif #endif /* __IPersistFolder2_INTERFACE_DEFINED__ */ /***************************************************************************** * IPersistIDList interface */ #ifndef __IPersistIDList_INTERFACE_DEFINED__ #define __IPersistIDList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPersistIDList, 0x1079acfc, 0x29bd, 0x11d3, 0x8e,0x0d, 0x00,0xc0,0x4f,0x68,0x37,0xd5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1079acfc-29bd-11d3-8e0d-00c04f6837d5") IPersistIDList : public IPersist { virtual HRESULT STDMETHODCALLTYPE SetIDList( LPCITEMIDLIST pidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDList( LPITEMIDLIST *ppidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPersistIDList, 0x1079acfc, 0x29bd, 0x11d3, 0x8e,0x0d, 0x00,0xc0,0x4f,0x68,0x37,0xd5) #endif #else typedef struct IPersistIDListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPersistIDList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPersistIDList *This); ULONG (STDMETHODCALLTYPE *Release)( IPersistIDList *This); /*** IPersist methods ***/ HRESULT (STDMETHODCALLTYPE *GetClassID)( IPersistIDList *This, CLSID *pClassID); /*** IPersistIDList methods ***/ HRESULT (STDMETHODCALLTYPE *SetIDList)( IPersistIDList *This, LPCITEMIDLIST pidl); HRESULT (STDMETHODCALLTYPE *GetIDList)( IPersistIDList *This, LPITEMIDLIST *ppidl); END_INTERFACE } IPersistIDListVtbl; interface IPersistIDList { CONST_VTBL IPersistIDListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPersistIDList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPersistIDList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPersistIDList_Release(This) (This)->lpVtbl->Release(This) /*** IPersist methods ***/ #define IPersistIDList_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) /*** IPersistIDList methods ***/ #define IPersistIDList_SetIDList(This,pidl) (This)->lpVtbl->SetIDList(This,pidl) #define IPersistIDList_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) #else /*** IUnknown methods ***/ static inline HRESULT IPersistIDList_QueryInterface(IPersistIDList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IPersistIDList_AddRef(IPersistIDList* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IPersistIDList_Release(IPersistIDList* This) { return This->lpVtbl->Release(This); } /*** IPersist methods ***/ static inline HRESULT IPersistIDList_GetClassID(IPersistIDList* This,CLSID *pClassID) { return This->lpVtbl->GetClassID(This,pClassID); } /*** IPersistIDList methods ***/ static inline HRESULT IPersistIDList_SetIDList(IPersistIDList* This,LPCITEMIDLIST pidl) { return This->lpVtbl->SetIDList(This,pidl); } static inline HRESULT IPersistIDList_GetIDList(IPersistIDList* This,LPITEMIDLIST *ppidl) { return This->lpVtbl->GetIDList(This,ppidl); } #endif #endif #endif #endif /* __IPersistIDList_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumIDList interface */ #ifndef __IEnumIDList_INTERFACE_DEFINED__ #define __IEnumIDList_INTERFACE_DEFINED__ typedef IEnumIDList *LPENUMIDLIST; DEFINE_GUID(IID_IEnumIDList, 0x000214f2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214f2-0000-0000-c000-000000000046") IEnumIDList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, LPITEMIDLIST *rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumIDList **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumIDList, 0x000214f2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IEnumIDListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumIDList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumIDList *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumIDList *This); /*** IEnumIDList methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumIDList *This, ULONG celt, LPITEMIDLIST *rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumIDList *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumIDList *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumIDList *This, IEnumIDList **ppenum); END_INTERFACE } IEnumIDListVtbl; interface IEnumIDList { CONST_VTBL IEnumIDListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumIDList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumIDList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumIDList_Release(This) (This)->lpVtbl->Release(This) /*** IEnumIDList methods ***/ #define IEnumIDList_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) #define IEnumIDList_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumIDList_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumIDList_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static inline HRESULT IEnumIDList_QueryInterface(IEnumIDList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IEnumIDList_AddRef(IEnumIDList* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IEnumIDList_Release(IEnumIDList* This) { return This->lpVtbl->Release(This); } /*** IEnumIDList methods ***/ static inline HRESULT IEnumIDList_Next(IEnumIDList* This,ULONG celt,LPITEMIDLIST *rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); } static inline HRESULT IEnumIDList_Skip(IEnumIDList* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static inline HRESULT IEnumIDList_Reset(IEnumIDList* This) { return This->lpVtbl->Reset(This); } static inline HRESULT IEnumIDList_Clone(IEnumIDList* This,IEnumIDList **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif #endif /* __IEnumIDList_INTERFACE_DEFINED__ */ #if 0 typedef LPARAM LPFNSVADDPROPSHEETPAGE; #else #include typedef LPFNADDPROPSHEETPAGE LPFNSVADDPROPSHEETPAGE; #endif /***************************************************************************** * IShellPropSheetExt interface */ #ifndef __IShellPropSheetExt_INTERFACE_DEFINED__ #define __IShellPropSheetExt_INTERFACE_DEFINED__ enum tagSHELLPROPSHEETEXTPAGEID { EXPPS_FILETYPES = 0x1 }; typedef UINT EXPPS; DEFINE_GUID(IID_IShellPropSheetExt, 0x000214e9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e9-0000-0000-c000-000000000046") IShellPropSheetExt : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AddPages( LPFNSVADDPROPSHEETPAGE pfnAddPage, LPARAM lParam) = 0; virtual HRESULT STDMETHODCALLTYPE ReplacePage( EXPPS uPageID, LPFNSVADDPROPSHEETPAGE pfnReplaceWith, LPARAM lParam) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellPropSheetExt, 0x000214e9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellPropSheetExtVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellPropSheetExt *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellPropSheetExt *This); ULONG (STDMETHODCALLTYPE *Release)( IShellPropSheetExt *This); /*** IShellPropSheetExt methods ***/ HRESULT (STDMETHODCALLTYPE *AddPages)( IShellPropSheetExt *This, LPFNSVADDPROPSHEETPAGE pfnAddPage, LPARAM lParam); HRESULT (STDMETHODCALLTYPE *ReplacePage)( IShellPropSheetExt *This, EXPPS uPageID, LPFNSVADDPROPSHEETPAGE pfnReplaceWith, LPARAM lParam); END_INTERFACE } IShellPropSheetExtVtbl; interface IShellPropSheetExt { CONST_VTBL IShellPropSheetExtVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellPropSheetExt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellPropSheetExt_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellPropSheetExt_Release(This) (This)->lpVtbl->Release(This) /*** IShellPropSheetExt methods ***/ #define IShellPropSheetExt_AddPages(This,pfnAddPage,lParam) (This)->lpVtbl->AddPages(This,pfnAddPage,lParam) #define IShellPropSheetExt_ReplacePage(This,uPageID,pfnReplaceWith,lParam) (This)->lpVtbl->ReplacePage(This,uPageID,pfnReplaceWith,lParam) #else /*** IUnknown methods ***/ static inline HRESULT IShellPropSheetExt_QueryInterface(IShellPropSheetExt* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellPropSheetExt_AddRef(IShellPropSheetExt* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellPropSheetExt_Release(IShellPropSheetExt* This) { return This->lpVtbl->Release(This); } /*** IShellPropSheetExt methods ***/ static inline HRESULT IShellPropSheetExt_AddPages(IShellPropSheetExt* This,LPFNSVADDPROPSHEETPAGE pfnAddPage,LPARAM lParam) { return This->lpVtbl->AddPages(This,pfnAddPage,lParam); } static inline HRESULT IShellPropSheetExt_ReplacePage(IShellPropSheetExt* This,EXPPS uPageID,LPFNSVADDPROPSHEETPAGE pfnReplaceWith,LPARAM lParam) { return This->lpVtbl->ReplacePage(This,uPageID,pfnReplaceWith,lParam); } #endif #endif #endif #endif /* __IShellPropSheetExt_INTERFACE_DEFINED__ */ typedef IShellPropSheetExt *LPSHELLPROPSHEETEXT; /***************************************************************************** * IShellFolder interface */ #ifndef __IShellFolder_INTERFACE_DEFINED__ #define __IShellFolder_INTERFACE_DEFINED__ typedef IShellFolder *LPSHELLFOLDER; typedef enum tagSHGDN { SHGDN_NORMAL = 0, SHGDN_INFOLDER = 1, SHGDN_FOREDITING = 0x1000, SHGDN_INCLUDE_NONFILESYS = 0x2000, SHGDN_FORADDRESSBAR = 0x4000, SHGDN_FORPARSING = 0x8000 } SHGNO; typedef DWORD SHGDNF; enum tagSHCONTF { SHCONTF_CHECKING_FOR_CHILDREN = 0x10, SHCONTF_FOLDERS = 0x20, SHCONTF_NONFOLDERS = 0x40, SHCONTF_INCLUDEHIDDEN = 0x80, SHCONTF_INIT_ON_FIRST_NEXT = 0x100, SHCONTF_NETPRINTERSRCH = 0x200, SHCONTF_SHAREABLE = 0x400, SHCONTF_STORAGE = 0x800, SHCONTF_NAVIGATION_ENUM = 0x1000, SHCONTF_FASTITEMS = 0x2000, SHCONTF_FLATLIST = 0x4000, SHCONTF_ENABLE_ASYNC = 0x8000, SHCONTF_INCLUDESUPERHIDDEN = 0x10000 }; typedef DWORD SHCONTF; #define SFGAO_CANCOPY DROPEFFECT_COPY #define SFGAO_CANMOVE DROPEFFECT_MOVE #define SFGAO_CANLINK DROPEFFECT_LINK #define SFGAO_STORAGE 0x00000008L #define SFGAO_CANRENAME 0x00000010L #define SFGAO_CANDELETE 0x00000020L #define SFGAO_HASPROPSHEET 0x00000040L #define SFGAO_DROPTARGET 0x00000100L #define SFGAO_CAPABILITYMASK 0x00000177L #define SFGAO_SYSTEM 0x00001000L #define SFGAO_ENCRYPTED 0x00002000L #define SFGAO_ISSLOW 0x00004000L #define SFGAO_GHOSTED 0x00008000L #define SFGAO_LINK 0x00010000L #define SFGAO_SHARE 0x00020000L #define SFGAO_READONLY 0x00040000L #define SFGAO_HIDDEN 0x00080000L #define SFGAO_DISPLAYATTRMASK 0x000FC000L #define SFGAO_FILESYSANCESTOR 0x10000000L #define SFGAO_FOLDER 0x20000000L #define SFGAO_FILESYSTEM 0x40000000L #define SFGAO_HASSUBFOLDER 0x80000000L #define SFGAO_CONTENTSMASK 0x80000000L #define SFGAO_VALIDATE 0x01000000L #define SFGAO_REMOVABLE 0x02000000L #define SFGAO_COMPRESSED 0x04000000L #define SFGAO_BROWSABLE 0x08000000L #define SFGAO_NONENUMERATED 0x00100000L #define SFGAO_NEWCONTENT 0x00200000L #define SFGAO_CANMONIKER 0x00400000L #define SFGAO_HASSTORAGE 0x00400000L #define SFGAO_STREAM 0x00400000L #define SFGAO_STORAGEANCESTOR 0x00800000L #define SFGAO_STORAGEGAPMASK 0x70C50008L #define SFGAO_PKEYSFGAOMASK 0x81044000L typedef ULONG SFGAOF; DEFINE_GUID(IID_IShellFolder, 0x000214e6, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e6-0000-0000-c000-000000000046") IShellFolder : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ParseDisplayName( HWND hwndOwner, LPBC pbcReserved, LPOLESTR lpszDisplayName, ULONG *pchEaten, LPITEMIDLIST *ppidl, ULONG *pdwAttributes) = 0; virtual HRESULT STDMETHODCALLTYPE EnumObjects( HWND hwndOwner, SHCONTF grfFlags, IEnumIDList **ppenumIDList) = 0; virtual HRESULT STDMETHODCALLTYPE BindToObject( LPCITEMIDLIST pidl, LPBC pbcReserved, REFIID riid, void **ppvOut) = 0; virtual HRESULT STDMETHODCALLTYPE BindToStorage( LPCITEMIDLIST pidl, LPBC pbcReserved, REFIID riid, void **ppvObj) = 0; virtual HRESULT STDMETHODCALLTYPE CompareIDs( LPARAM lParam, LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2) = 0; virtual HRESULT STDMETHODCALLTYPE CreateViewObject( HWND hwndOwner, REFIID riid, void **ppvOut) = 0; virtual HRESULT STDMETHODCALLTYPE GetAttributesOf( UINT cidl, LPCITEMIDLIST *apidl, SFGAOF *rgfInOut) = 0; virtual HRESULT STDMETHODCALLTYPE GetUIObjectOf( HWND hwndOwner, UINT cidl, LPCITEMIDLIST *apidl, REFIID riid, UINT *prgfInOut, void **ppvOut) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplayNameOf( LPCITEMIDLIST pidl, SHGDNF uFlags, STRRET *lpName) = 0; virtual HRESULT STDMETHODCALLTYPE SetNameOf( HWND hwnd, LPCITEMIDLIST pidl, LPCOLESTR lpszName, SHGDNF uFlags, LPITEMIDLIST *ppidlOut) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellFolder, 0x000214e6, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellFolderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellFolder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellFolder *This); ULONG (STDMETHODCALLTYPE *Release)( IShellFolder *This); /*** IShellFolder methods ***/ HRESULT (STDMETHODCALLTYPE *ParseDisplayName)( IShellFolder *This, HWND hwndOwner, LPBC pbcReserved, LPOLESTR lpszDisplayName, ULONG *pchEaten, LPITEMIDLIST *ppidl, ULONG *pdwAttributes); HRESULT (STDMETHODCALLTYPE *EnumObjects)( IShellFolder *This, HWND hwndOwner, SHCONTF grfFlags, IEnumIDList **ppenumIDList); HRESULT (STDMETHODCALLTYPE *BindToObject)( IShellFolder *This, LPCITEMIDLIST pidl, LPBC pbcReserved, REFIID riid, void **ppvOut); HRESULT (STDMETHODCALLTYPE *BindToStorage)( IShellFolder *This, LPCITEMIDLIST pidl, LPBC pbcReserved, REFIID riid, void **ppvObj); HRESULT (STDMETHODCALLTYPE *CompareIDs)( IShellFolder *This, LPARAM lParam, LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2); HRESULT (STDMETHODCALLTYPE *CreateViewObject)( IShellFolder *This, HWND hwndOwner, REFIID riid, void **ppvOut); HRESULT (STDMETHODCALLTYPE *GetAttributesOf)( IShellFolder *This, UINT cidl, LPCITEMIDLIST *apidl, SFGAOF *rgfInOut); HRESULT (STDMETHODCALLTYPE *GetUIObjectOf)( IShellFolder *This, HWND hwndOwner, UINT cidl, LPCITEMIDLIST *apidl, REFIID riid, UINT *prgfInOut, void **ppvOut); HRESULT (STDMETHODCALLTYPE *GetDisplayNameOf)( IShellFolder *This, LPCITEMIDLIST pidl, SHGDNF uFlags, STRRET *lpName); HRESULT (STDMETHODCALLTYPE *SetNameOf)( IShellFolder *This, HWND hwnd, LPCITEMIDLIST pidl, LPCOLESTR lpszName, SHGDNF uFlags, LPITEMIDLIST *ppidlOut); END_INTERFACE } IShellFolderVtbl; interface IShellFolder { CONST_VTBL IShellFolderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellFolder_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellFolder_Release(This) (This)->lpVtbl->Release(This) /*** IShellFolder methods ***/ #define IShellFolder_ParseDisplayName(This,hwndOwner,pbcReserved,lpszDisplayName,pchEaten,ppidl,pdwAttributes) (This)->lpVtbl->ParseDisplayName(This,hwndOwner,pbcReserved,lpszDisplayName,pchEaten,ppidl,pdwAttributes) #define IShellFolder_EnumObjects(This,hwndOwner,grfFlags,ppenumIDList) (This)->lpVtbl->EnumObjects(This,hwndOwner,grfFlags,ppenumIDList) #define IShellFolder_BindToObject(This,pidl,pbcReserved,riid,ppvOut) (This)->lpVtbl->BindToObject(This,pidl,pbcReserved,riid,ppvOut) #define IShellFolder_BindToStorage(This,pidl,pbcReserved,riid,ppvObj) (This)->lpVtbl->BindToStorage(This,pidl,pbcReserved,riid,ppvObj) #define IShellFolder_CompareIDs(This,lParam,pidl1,pidl2) (This)->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2) #define IShellFolder_CreateViewObject(This,hwndOwner,riid,ppvOut) (This)->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppvOut) #define IShellFolder_GetAttributesOf(This,cidl,apidl,rgfInOut) (This)->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut) #define IShellFolder_GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,prgfInOut,ppvOut) (This)->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,prgfInOut,ppvOut) #define IShellFolder_GetDisplayNameOf(This,pidl,uFlags,lpName) (This)->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,lpName) #define IShellFolder_SetNameOf(This,hwnd,pidl,lpszName,uFlags,ppidlOut) (This)->lpVtbl->SetNameOf(This,hwnd,pidl,lpszName,uFlags,ppidlOut) #else /*** IUnknown methods ***/ static inline HRESULT IShellFolder_QueryInterface(IShellFolder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellFolder_AddRef(IShellFolder* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellFolder_Release(IShellFolder* This) { return This->lpVtbl->Release(This); } /*** IShellFolder methods ***/ static inline HRESULT IShellFolder_ParseDisplayName(IShellFolder* This,HWND hwndOwner,LPBC pbcReserved,LPOLESTR lpszDisplayName,ULONG *pchEaten,LPITEMIDLIST *ppidl,ULONG *pdwAttributes) { return This->lpVtbl->ParseDisplayName(This,hwndOwner,pbcReserved,lpszDisplayName,pchEaten,ppidl,pdwAttributes); } static inline HRESULT IShellFolder_EnumObjects(IShellFolder* This,HWND hwndOwner,SHCONTF grfFlags,IEnumIDList **ppenumIDList) { return This->lpVtbl->EnumObjects(This,hwndOwner,grfFlags,ppenumIDList); } static inline HRESULT IShellFolder_BindToObject(IShellFolder* This,LPCITEMIDLIST pidl,LPBC pbcReserved,REFIID riid,void **ppvOut) { return This->lpVtbl->BindToObject(This,pidl,pbcReserved,riid,ppvOut); } static inline HRESULT IShellFolder_BindToStorage(IShellFolder* This,LPCITEMIDLIST pidl,LPBC pbcReserved,REFIID riid,void **ppvObj) { return This->lpVtbl->BindToStorage(This,pidl,pbcReserved,riid,ppvObj); } static inline HRESULT IShellFolder_CompareIDs(IShellFolder* This,LPARAM lParam,LPCITEMIDLIST pidl1,LPCITEMIDLIST pidl2) { return This->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2); } static inline HRESULT IShellFolder_CreateViewObject(IShellFolder* This,HWND hwndOwner,REFIID riid,void **ppvOut) { return This->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppvOut); } static inline HRESULT IShellFolder_GetAttributesOf(IShellFolder* This,UINT cidl,LPCITEMIDLIST *apidl,SFGAOF *rgfInOut) { return This->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut); } static inline HRESULT IShellFolder_GetUIObjectOf(IShellFolder* This,HWND hwndOwner,UINT cidl,LPCITEMIDLIST *apidl,REFIID riid,UINT *prgfInOut,void **ppvOut) { return This->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,prgfInOut,ppvOut); } static inline HRESULT IShellFolder_GetDisplayNameOf(IShellFolder* This,LPCITEMIDLIST pidl,SHGDNF uFlags,STRRET *lpName) { return This->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,lpName); } static inline HRESULT IShellFolder_SetNameOf(IShellFolder* This,HWND hwnd,LPCITEMIDLIST pidl,LPCOLESTR lpszName,SHGDNF uFlags,LPITEMIDLIST *ppidlOut) { return This->lpVtbl->SetNameOf(This,hwnd,pidl,lpszName,uFlags,ppidlOut); } #endif #endif #endif #endif /* __IShellFolder_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumExtraSearch interface */ #ifndef __IEnumExtraSearch_INTERFACE_DEFINED__ #define __IEnumExtraSearch_INTERFACE_DEFINED__ typedef IEnumExtraSearch *LPENUMEXTRASEARCH; typedef struct __WIDL_shobjidl_generated_name_00000023 { GUID guidSearch; WCHAR wszFriendlyName[80]; WCHAR wszUrl[2084]; } EXTRASEARCH; typedef struct __WIDL_shobjidl_generated_name_00000023 *LPEXTRASEARCH; DEFINE_GUID(IID_IEnumExtraSearch, 0x0e700be1, 0x9db6, 0x11d1, 0xa1,0xce, 0x00,0xc0,0x4f,0xd7,0x5d,0x13); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0e700be1-9db6-11d1-a1ce-00c04fd75d13") IEnumExtraSearch : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, EXTRASEARCH *rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumExtraSearch **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumExtraSearch, 0x0e700be1, 0x9db6, 0x11d1, 0xa1,0xce, 0x00,0xc0,0x4f,0xd7,0x5d,0x13) #endif #else typedef struct IEnumExtraSearchVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumExtraSearch *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumExtraSearch *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumExtraSearch *This); /*** IEnumExtraSearch methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumExtraSearch *This, ULONG celt, EXTRASEARCH *rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumExtraSearch *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumExtraSearch *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumExtraSearch *This, IEnumExtraSearch **ppenum); END_INTERFACE } IEnumExtraSearchVtbl; interface IEnumExtraSearch { CONST_VTBL IEnumExtraSearchVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumExtraSearch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumExtraSearch_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumExtraSearch_Release(This) (This)->lpVtbl->Release(This) /*** IEnumExtraSearch methods ***/ #define IEnumExtraSearch_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) #define IEnumExtraSearch_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumExtraSearch_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumExtraSearch_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static inline HRESULT IEnumExtraSearch_QueryInterface(IEnumExtraSearch* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IEnumExtraSearch_AddRef(IEnumExtraSearch* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IEnumExtraSearch_Release(IEnumExtraSearch* This) { return This->lpVtbl->Release(This); } /*** IEnumExtraSearch methods ***/ static inline HRESULT IEnumExtraSearch_Next(IEnumExtraSearch* This,ULONG celt,EXTRASEARCH *rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); } static inline HRESULT IEnumExtraSearch_Skip(IEnumExtraSearch* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static inline HRESULT IEnumExtraSearch_Reset(IEnumExtraSearch* This) { return This->lpVtbl->Reset(This); } static inline HRESULT IEnumExtraSearch_Clone(IEnumExtraSearch* This,IEnumExtraSearch **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif #endif /* __IEnumExtraSearch_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellFolder2 interface */ #ifndef __IShellFolder2_INTERFACE_DEFINED__ #define __IShellFolder2_INTERFACE_DEFINED__ typedef struct __WIDL_shobjidl_generated_name_00000024 { GUID fmtid; DWORD pid; } SHCOLUMNID; typedef struct __WIDL_shobjidl_generated_name_00000024 *LPSHCOLUMNID; typedef const SHCOLUMNID *LPCSHCOLUMNID; DEFINE_GUID(IID_IShellFolder2, 0x93f2f68c, 0x1d1b, 0x11d3, 0xa3,0x0e, 0x00,0xc0,0x4f,0x79,0xab,0xd1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("93f2f68c-1d1b-11d3-a30e-00c04f79abd1") IShellFolder2 : public IShellFolder { virtual HRESULT STDMETHODCALLTYPE GetDefaultSearchGUID( GUID *lpguid) = 0; virtual HRESULT STDMETHODCALLTYPE EnumSearches( IEnumExtraSearch **ppenum) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultColumn( DWORD dwReserved, ULONG *pSort, ULONG *pDisplay) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultColumnState( UINT iColumn, SHCOLSTATEF *pcsFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetDetailsEx( LPCITEMIDLIST pidl, const SHCOLUMNID *pscid, VARIANT *pv) = 0; virtual HRESULT STDMETHODCALLTYPE GetDetailsOf( LPCITEMIDLIST pidl, UINT iColumn, SHELLDETAILS *psd) = 0; virtual HRESULT STDMETHODCALLTYPE MapColumnToSCID( UINT iColumn, SHCOLUMNID *pscid) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellFolder2, 0x93f2f68c, 0x1d1b, 0x11d3, 0xa3,0x0e, 0x00,0xc0,0x4f,0x79,0xab,0xd1) #endif #else typedef struct IShellFolder2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellFolder2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellFolder2 *This); ULONG (STDMETHODCALLTYPE *Release)( IShellFolder2 *This); /*** IShellFolder methods ***/ HRESULT (STDMETHODCALLTYPE *ParseDisplayName)( IShellFolder2 *This, HWND hwndOwner, LPBC pbcReserved, LPOLESTR lpszDisplayName, ULONG *pchEaten, LPITEMIDLIST *ppidl, ULONG *pdwAttributes); HRESULT (STDMETHODCALLTYPE *EnumObjects)( IShellFolder2 *This, HWND hwndOwner, SHCONTF grfFlags, IEnumIDList **ppenumIDList); HRESULT (STDMETHODCALLTYPE *BindToObject)( IShellFolder2 *This, LPCITEMIDLIST pidl, LPBC pbcReserved, REFIID riid, void **ppvOut); HRESULT (STDMETHODCALLTYPE *BindToStorage)( IShellFolder2 *This, LPCITEMIDLIST pidl, LPBC pbcReserved, REFIID riid, void **ppvObj); HRESULT (STDMETHODCALLTYPE *CompareIDs)( IShellFolder2 *This, LPARAM lParam, LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2); HRESULT (STDMETHODCALLTYPE *CreateViewObject)( IShellFolder2 *This, HWND hwndOwner, REFIID riid, void **ppvOut); HRESULT (STDMETHODCALLTYPE *GetAttributesOf)( IShellFolder2 *This, UINT cidl, LPCITEMIDLIST *apidl, SFGAOF *rgfInOut); HRESULT (STDMETHODCALLTYPE *GetUIObjectOf)( IShellFolder2 *This, HWND hwndOwner, UINT cidl, LPCITEMIDLIST *apidl, REFIID riid, UINT *prgfInOut, void **ppvOut); HRESULT (STDMETHODCALLTYPE *GetDisplayNameOf)( IShellFolder2 *This, LPCITEMIDLIST pidl, SHGDNF uFlags, STRRET *lpName); HRESULT (STDMETHODCALLTYPE *SetNameOf)( IShellFolder2 *This, HWND hwnd, LPCITEMIDLIST pidl, LPCOLESTR lpszName, SHGDNF uFlags, LPITEMIDLIST *ppidlOut); /*** IShellFolder2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDefaultSearchGUID)( IShellFolder2 *This, GUID *lpguid); HRESULT (STDMETHODCALLTYPE *EnumSearches)( IShellFolder2 *This, IEnumExtraSearch **ppenum); HRESULT (STDMETHODCALLTYPE *GetDefaultColumn)( IShellFolder2 *This, DWORD dwReserved, ULONG *pSort, ULONG *pDisplay); HRESULT (STDMETHODCALLTYPE *GetDefaultColumnState)( IShellFolder2 *This, UINT iColumn, SHCOLSTATEF *pcsFlags); HRESULT (STDMETHODCALLTYPE *GetDetailsEx)( IShellFolder2 *This, LPCITEMIDLIST pidl, const SHCOLUMNID *pscid, VARIANT *pv); HRESULT (STDMETHODCALLTYPE *GetDetailsOf)( IShellFolder2 *This, LPCITEMIDLIST pidl, UINT iColumn, SHELLDETAILS *psd); HRESULT (STDMETHODCALLTYPE *MapColumnToSCID)( IShellFolder2 *This, UINT iColumn, SHCOLUMNID *pscid); END_INTERFACE } IShellFolder2Vtbl; interface IShellFolder2 { CONST_VTBL IShellFolder2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellFolder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellFolder2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellFolder2_Release(This) (This)->lpVtbl->Release(This) /*** IShellFolder methods ***/ #define IShellFolder2_ParseDisplayName(This,hwndOwner,pbcReserved,lpszDisplayName,pchEaten,ppidl,pdwAttributes) (This)->lpVtbl->ParseDisplayName(This,hwndOwner,pbcReserved,lpszDisplayName,pchEaten,ppidl,pdwAttributes) #define IShellFolder2_EnumObjects(This,hwndOwner,grfFlags,ppenumIDList) (This)->lpVtbl->EnumObjects(This,hwndOwner,grfFlags,ppenumIDList) #define IShellFolder2_BindToObject(This,pidl,pbcReserved,riid,ppvOut) (This)->lpVtbl->BindToObject(This,pidl,pbcReserved,riid,ppvOut) #define IShellFolder2_BindToStorage(This,pidl,pbcReserved,riid,ppvObj) (This)->lpVtbl->BindToStorage(This,pidl,pbcReserved,riid,ppvObj) #define IShellFolder2_CompareIDs(This,lParam,pidl1,pidl2) (This)->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2) #define IShellFolder2_CreateViewObject(This,hwndOwner,riid,ppvOut) (This)->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppvOut) #define IShellFolder2_GetAttributesOf(This,cidl,apidl,rgfInOut) (This)->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut) #define IShellFolder2_GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,prgfInOut,ppvOut) (This)->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,prgfInOut,ppvOut) #define IShellFolder2_GetDisplayNameOf(This,pidl,uFlags,lpName) (This)->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,lpName) #define IShellFolder2_SetNameOf(This,hwnd,pidl,lpszName,uFlags,ppidlOut) (This)->lpVtbl->SetNameOf(This,hwnd,pidl,lpszName,uFlags,ppidlOut) /*** IShellFolder2 methods ***/ #define IShellFolder2_GetDefaultSearchGUID(This,lpguid) (This)->lpVtbl->GetDefaultSearchGUID(This,lpguid) #define IShellFolder2_EnumSearches(This,ppenum) (This)->lpVtbl->EnumSearches(This,ppenum) #define IShellFolder2_GetDefaultColumn(This,dwReserved,pSort,pDisplay) (This)->lpVtbl->GetDefaultColumn(This,dwReserved,pSort,pDisplay) #define IShellFolder2_GetDefaultColumnState(This,iColumn,pcsFlags) (This)->lpVtbl->GetDefaultColumnState(This,iColumn,pcsFlags) #define IShellFolder2_GetDetailsEx(This,pidl,pscid,pv) (This)->lpVtbl->GetDetailsEx(This,pidl,pscid,pv) #define IShellFolder2_GetDetailsOf(This,pidl,iColumn,psd) (This)->lpVtbl->GetDetailsOf(This,pidl,iColumn,psd) #define IShellFolder2_MapColumnToSCID(This,iColumn,pscid) (This)->lpVtbl->MapColumnToSCID(This,iColumn,pscid) #else /*** IUnknown methods ***/ static inline HRESULT IShellFolder2_QueryInterface(IShellFolder2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellFolder2_AddRef(IShellFolder2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellFolder2_Release(IShellFolder2* This) { return This->lpVtbl->Release(This); } /*** IShellFolder methods ***/ static inline HRESULT IShellFolder2_ParseDisplayName(IShellFolder2* This,HWND hwndOwner,LPBC pbcReserved,LPOLESTR lpszDisplayName,ULONG *pchEaten,LPITEMIDLIST *ppidl,ULONG *pdwAttributes) { return This->lpVtbl->ParseDisplayName(This,hwndOwner,pbcReserved,lpszDisplayName,pchEaten,ppidl,pdwAttributes); } static inline HRESULT IShellFolder2_EnumObjects(IShellFolder2* This,HWND hwndOwner,SHCONTF grfFlags,IEnumIDList **ppenumIDList) { return This->lpVtbl->EnumObjects(This,hwndOwner,grfFlags,ppenumIDList); } static inline HRESULT IShellFolder2_BindToObject(IShellFolder2* This,LPCITEMIDLIST pidl,LPBC pbcReserved,REFIID riid,void **ppvOut) { return This->lpVtbl->BindToObject(This,pidl,pbcReserved,riid,ppvOut); } static inline HRESULT IShellFolder2_BindToStorage(IShellFolder2* This,LPCITEMIDLIST pidl,LPBC pbcReserved,REFIID riid,void **ppvObj) { return This->lpVtbl->BindToStorage(This,pidl,pbcReserved,riid,ppvObj); } static inline HRESULT IShellFolder2_CompareIDs(IShellFolder2* This,LPARAM lParam,LPCITEMIDLIST pidl1,LPCITEMIDLIST pidl2) { return This->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2); } static inline HRESULT IShellFolder2_CreateViewObject(IShellFolder2* This,HWND hwndOwner,REFIID riid,void **ppvOut) { return This->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppvOut); } static inline HRESULT IShellFolder2_GetAttributesOf(IShellFolder2* This,UINT cidl,LPCITEMIDLIST *apidl,SFGAOF *rgfInOut) { return This->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut); } static inline HRESULT IShellFolder2_GetUIObjectOf(IShellFolder2* This,HWND hwndOwner,UINT cidl,LPCITEMIDLIST *apidl,REFIID riid,UINT *prgfInOut,void **ppvOut) { return This->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,prgfInOut,ppvOut); } static inline HRESULT IShellFolder2_GetDisplayNameOf(IShellFolder2* This,LPCITEMIDLIST pidl,SHGDNF uFlags,STRRET *lpName) { return This->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,lpName); } static inline HRESULT IShellFolder2_SetNameOf(IShellFolder2* This,HWND hwnd,LPCITEMIDLIST pidl,LPCOLESTR lpszName,SHGDNF uFlags,LPITEMIDLIST *ppidlOut) { return This->lpVtbl->SetNameOf(This,hwnd,pidl,lpszName,uFlags,ppidlOut); } /*** IShellFolder2 methods ***/ static inline HRESULT IShellFolder2_GetDefaultSearchGUID(IShellFolder2* This,GUID *lpguid) { return This->lpVtbl->GetDefaultSearchGUID(This,lpguid); } static inline HRESULT IShellFolder2_EnumSearches(IShellFolder2* This,IEnumExtraSearch **ppenum) { return This->lpVtbl->EnumSearches(This,ppenum); } static inline HRESULT IShellFolder2_GetDefaultColumn(IShellFolder2* This,DWORD dwReserved,ULONG *pSort,ULONG *pDisplay) { return This->lpVtbl->GetDefaultColumn(This,dwReserved,pSort,pDisplay); } static inline HRESULT IShellFolder2_GetDefaultColumnState(IShellFolder2* This,UINT iColumn,SHCOLSTATEF *pcsFlags) { return This->lpVtbl->GetDefaultColumnState(This,iColumn,pcsFlags); } static inline HRESULT IShellFolder2_GetDetailsEx(IShellFolder2* This,LPCITEMIDLIST pidl,const SHCOLUMNID *pscid,VARIANT *pv) { return This->lpVtbl->GetDetailsEx(This,pidl,pscid,pv); } static inline HRESULT IShellFolder2_GetDetailsOf(IShellFolder2* This,LPCITEMIDLIST pidl,UINT iColumn,SHELLDETAILS *psd) { return This->lpVtbl->GetDetailsOf(This,pidl,iColumn,psd); } static inline HRESULT IShellFolder2_MapColumnToSCID(IShellFolder2* This,UINT iColumn,SHCOLUMNID *pscid) { return This->lpVtbl->MapColumnToSCID(This,iColumn,pscid); } #endif #endif #endif #endif /* __IShellFolder2_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellItem interface */ #ifndef __IShellItem_INTERFACE_DEFINED__ #define __IShellItem_INTERFACE_DEFINED__ typedef enum __WIDL_shobjidl_generated_name_00000025 { SIGDN_NORMALDISPLAY = 0, SIGDN_PARENTRELATIVEPARSING = 0x80018001, SIGDN_DESKTOPABSOLUTEPARSING = 0x80028000, SIGDN_PARENTRELATIVEEDITING = 0x80031001, SIGDN_DESKTOPABSOLUTEEDITING = 0x8004c000, SIGDN_FILESYSPATH = 0x80058000, SIGDN_URL = 0x80068000, SIGDN_PARENTRELATIVEFORADDRESSBAR = 0x8007c001, SIGDN_PARENTRELATIVE = 0x80080001, SIGDN_PARENTRELATIVEFORUI = 0x80094001 } SIGDN; enum _SICHINTF { SICHINT_DISPLAY = 0x0, SICHINT_CANONICAL = 0x10000000, SICHINT_TEST_FILESYSPATH_IF_NOT_EQUAL = 0x20000000, SICHINT_ALLFIELDS = 0x80000000 }; typedef DWORD SICHINTF; DEFINE_GUID(IID_IShellItem, 0x43826d1e, 0xe718, 0x42ee, 0xbc,0x55, 0xa1,0xe2,0x61,0xc3,0x7b,0xfe); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("43826d1e-e718-42ee-bc55-a1e261c37bfe") IShellItem : public IUnknown { virtual HRESULT STDMETHODCALLTYPE BindToHandler( IBindCtx *pbc, REFGUID rbhid, REFIID riid, void **ppvOut) = 0; virtual HRESULT STDMETHODCALLTYPE GetParent( IShellItem **ppsi) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplayName( SIGDN sigdnName, LPWSTR *ppszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetAttributes( SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs) = 0; virtual HRESULT STDMETHODCALLTYPE Compare( IShellItem *psi, SICHINTF hint, int *piOrder) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItem, 0x43826d1e, 0xe718, 0x42ee, 0xbc,0x55, 0xa1,0xe2,0x61,0xc3,0x7b,0xfe) #endif #else typedef struct IShellItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItem *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItem *This); /*** IShellItem methods ***/ HRESULT (STDMETHODCALLTYPE *BindToHandler)( IShellItem *This, IBindCtx *pbc, REFGUID rbhid, REFIID riid, void **ppvOut); HRESULT (STDMETHODCALLTYPE *GetParent)( IShellItem *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetDisplayName)( IShellItem *This, SIGDN sigdnName, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetAttributes)( IShellItem *This, SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs); HRESULT (STDMETHODCALLTYPE *Compare)( IShellItem *This, IShellItem *psi, SICHINTF hint, int *piOrder); END_INTERFACE } IShellItemVtbl; interface IShellItem { CONST_VTBL IShellItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItem_Release(This) (This)->lpVtbl->Release(This) /*** IShellItem methods ***/ #define IShellItem_BindToHandler(This,pbc,rbhid,riid,ppvOut) (This)->lpVtbl->BindToHandler(This,pbc,rbhid,riid,ppvOut) #define IShellItem_GetParent(This,ppsi) (This)->lpVtbl->GetParent(This,ppsi) #define IShellItem_GetDisplayName(This,sigdnName,ppszName) (This)->lpVtbl->GetDisplayName(This,sigdnName,ppszName) #define IShellItem_GetAttributes(This,sfgaoMask,psfgaoAttribs) (This)->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs) #define IShellItem_Compare(This,psi,hint,piOrder) (This)->lpVtbl->Compare(This,psi,hint,piOrder) #else /*** IUnknown methods ***/ static inline HRESULT IShellItem_QueryInterface(IShellItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellItem_AddRef(IShellItem* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellItem_Release(IShellItem* This) { return This->lpVtbl->Release(This); } /*** IShellItem methods ***/ static inline HRESULT IShellItem_BindToHandler(IShellItem* This,IBindCtx *pbc,REFGUID rbhid,REFIID riid,void **ppvOut) { return This->lpVtbl->BindToHandler(This,pbc,rbhid,riid,ppvOut); } static inline HRESULT IShellItem_GetParent(IShellItem* This,IShellItem **ppsi) { return This->lpVtbl->GetParent(This,ppsi); } static inline HRESULT IShellItem_GetDisplayName(IShellItem* This,SIGDN sigdnName,LPWSTR *ppszName) { return This->lpVtbl->GetDisplayName(This,sigdnName,ppszName); } static inline HRESULT IShellItem_GetAttributes(IShellItem* This,SFGAOF sfgaoMask,SFGAOF *psfgaoAttribs) { return This->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs); } static inline HRESULT IShellItem_Compare(IShellItem* This,IShellItem *psi,SICHINTF hint,int *piOrder) { return This->lpVtbl->Compare(This,psi,hint,piOrder); } #endif #endif #endif #endif /* __IShellItem_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellItem2 interface */ #ifndef __IShellItem2_INTERFACE_DEFINED__ #define __IShellItem2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellItem2, 0x7e9fb0d3, 0x919f, 0x4307, 0xab,0x2e, 0x9b,0x18,0x60,0x31,0x0c,0x93); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7e9fb0d3-919f-4307-ab2e-9b1860310c93") IShellItem2 : public IShellItem { virtual HRESULT STDMETHODCALLTYPE GetPropertyStore( GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyStoreWithCreateObject( GETPROPERTYSTOREFLAGS flags, IUnknown *punkCreateObject, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyStoreForKeys( const PROPERTYKEY *rgKeys, UINT cKeys, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionList( REFPROPERTYKEY keyType, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE Update( IBindCtx *pbc) = 0; virtual HRESULT STDMETHODCALLTYPE GetProperty( REFPROPERTYKEY key, PROPVARIANT *ppropvar) = 0; virtual HRESULT STDMETHODCALLTYPE GetCLSID( REFPROPERTYKEY key, CLSID *pclsid) = 0; virtual HRESULT STDMETHODCALLTYPE GetFileTime( REFPROPERTYKEY key, FILETIME *pft) = 0; virtual HRESULT STDMETHODCALLTYPE GetInt32( REFPROPERTYKEY key, int *pi) = 0; virtual HRESULT STDMETHODCALLTYPE GetString( REFPROPERTYKEY key, LPWSTR *ppsz) = 0; virtual HRESULT STDMETHODCALLTYPE GetUInt32( REFPROPERTYKEY key, ULONG *pui) = 0; virtual HRESULT STDMETHODCALLTYPE GetUInt64( REFPROPERTYKEY key, ULONGLONG *pull) = 0; virtual HRESULT STDMETHODCALLTYPE GetBool( REFPROPERTYKEY key, BOOL *pf) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItem2, 0x7e9fb0d3, 0x919f, 0x4307, 0xab,0x2e, 0x9b,0x18,0x60,0x31,0x0c,0x93) #endif #else typedef struct IShellItem2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItem2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItem2 *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItem2 *This); /*** IShellItem methods ***/ HRESULT (STDMETHODCALLTYPE *BindToHandler)( IShellItem2 *This, IBindCtx *pbc, REFGUID rbhid, REFIID riid, void **ppvOut); HRESULT (STDMETHODCALLTYPE *GetParent)( IShellItem2 *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetDisplayName)( IShellItem2 *This, SIGDN sigdnName, LPWSTR *ppszName); HRESULT (STDMETHODCALLTYPE *GetAttributes)( IShellItem2 *This, SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs); HRESULT (STDMETHODCALLTYPE *Compare)( IShellItem2 *This, IShellItem *psi, SICHINTF hint, int *piOrder); /*** IShellItem2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetPropertyStore)( IShellItem2 *This, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyStoreWithCreateObject)( IShellItem2 *This, GETPROPERTYSTOREFLAGS flags, IUnknown *punkCreateObject, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyStoreForKeys)( IShellItem2 *This, const PROPERTYKEY *rgKeys, UINT cKeys, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyDescriptionList)( IShellItem2 *This, REFPROPERTYKEY keyType, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *Update)( IShellItem2 *This, IBindCtx *pbc); HRESULT (STDMETHODCALLTYPE *GetProperty)( IShellItem2 *This, REFPROPERTYKEY key, PROPVARIANT *ppropvar); HRESULT (STDMETHODCALLTYPE *GetCLSID)( IShellItem2 *This, REFPROPERTYKEY key, CLSID *pclsid); HRESULT (STDMETHODCALLTYPE *GetFileTime)( IShellItem2 *This, REFPROPERTYKEY key, FILETIME *pft); HRESULT (STDMETHODCALLTYPE *GetInt32)( IShellItem2 *This, REFPROPERTYKEY key, int *pi); HRESULT (STDMETHODCALLTYPE *GetString)( IShellItem2 *This, REFPROPERTYKEY key, LPWSTR *ppsz); HRESULT (STDMETHODCALLTYPE *GetUInt32)( IShellItem2 *This, REFPROPERTYKEY key, ULONG *pui); HRESULT (STDMETHODCALLTYPE *GetUInt64)( IShellItem2 *This, REFPROPERTYKEY key, ULONGLONG *pull); HRESULT (STDMETHODCALLTYPE *GetBool)( IShellItem2 *This, REFPROPERTYKEY key, BOOL *pf); END_INTERFACE } IShellItem2Vtbl; interface IShellItem2 { CONST_VTBL IShellItem2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItem2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItem2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItem2_Release(This) (This)->lpVtbl->Release(This) /*** IShellItem methods ***/ #define IShellItem2_BindToHandler(This,pbc,rbhid,riid,ppvOut) (This)->lpVtbl->BindToHandler(This,pbc,rbhid,riid,ppvOut) #define IShellItem2_GetParent(This,ppsi) (This)->lpVtbl->GetParent(This,ppsi) #define IShellItem2_GetDisplayName(This,sigdnName,ppszName) (This)->lpVtbl->GetDisplayName(This,sigdnName,ppszName) #define IShellItem2_GetAttributes(This,sfgaoMask,psfgaoAttribs) (This)->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs) #define IShellItem2_Compare(This,psi,hint,piOrder) (This)->lpVtbl->Compare(This,psi,hint,piOrder) /*** IShellItem2 methods ***/ #define IShellItem2_GetPropertyStore(This,flags,riid,ppv) (This)->lpVtbl->GetPropertyStore(This,flags,riid,ppv) #define IShellItem2_GetPropertyStoreWithCreateObject(This,flags,punkCreateObject,riid,ppv) (This)->lpVtbl->GetPropertyStoreWithCreateObject(This,flags,punkCreateObject,riid,ppv) #define IShellItem2_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) (This)->lpVtbl->GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) #define IShellItem2_GetPropertyDescriptionList(This,keyType,riid,ppv) (This)->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv) #define IShellItem2_Update(This,pbc) (This)->lpVtbl->Update(This,pbc) #define IShellItem2_GetProperty(This,key,ppropvar) (This)->lpVtbl->GetProperty(This,key,ppropvar) #define IShellItem2_GetCLSID(This,key,pclsid) (This)->lpVtbl->GetCLSID(This,key,pclsid) #define IShellItem2_GetFileTime(This,key,pft) (This)->lpVtbl->GetFileTime(This,key,pft) #define IShellItem2_GetInt32(This,key,pi) (This)->lpVtbl->GetInt32(This,key,pi) #define IShellItem2_GetString(This,key,ppsz) (This)->lpVtbl->GetString(This,key,ppsz) #define IShellItem2_GetUInt32(This,key,pui) (This)->lpVtbl->GetUInt32(This,key,pui) #define IShellItem2_GetUInt64(This,key,pull) (This)->lpVtbl->GetUInt64(This,key,pull) #define IShellItem2_GetBool(This,key,pf) (This)->lpVtbl->GetBool(This,key,pf) #else /*** IUnknown methods ***/ static inline HRESULT IShellItem2_QueryInterface(IShellItem2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellItem2_AddRef(IShellItem2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellItem2_Release(IShellItem2* This) { return This->lpVtbl->Release(This); } /*** IShellItem methods ***/ static inline HRESULT IShellItem2_BindToHandler(IShellItem2* This,IBindCtx *pbc,REFGUID rbhid,REFIID riid,void **ppvOut) { return This->lpVtbl->BindToHandler(This,pbc,rbhid,riid,ppvOut); } static inline HRESULT IShellItem2_GetParent(IShellItem2* This,IShellItem **ppsi) { return This->lpVtbl->GetParent(This,ppsi); } static inline HRESULT IShellItem2_GetDisplayName(IShellItem2* This,SIGDN sigdnName,LPWSTR *ppszName) { return This->lpVtbl->GetDisplayName(This,sigdnName,ppszName); } static inline HRESULT IShellItem2_GetAttributes(IShellItem2* This,SFGAOF sfgaoMask,SFGAOF *psfgaoAttribs) { return This->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs); } static inline HRESULT IShellItem2_Compare(IShellItem2* This,IShellItem *psi,SICHINTF hint,int *piOrder) { return This->lpVtbl->Compare(This,psi,hint,piOrder); } /*** IShellItem2 methods ***/ static inline HRESULT IShellItem2_GetPropertyStore(IShellItem2* This,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStore(This,flags,riid,ppv); } static inline HRESULT IShellItem2_GetPropertyStoreWithCreateObject(IShellItem2* This,GETPROPERTYSTOREFLAGS flags,IUnknown *punkCreateObject,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStoreWithCreateObject(This,flags,punkCreateObject,riid,ppv); } static inline HRESULT IShellItem2_GetPropertyStoreForKeys(IShellItem2* This,const PROPERTYKEY *rgKeys,UINT cKeys,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv); } static inline HRESULT IShellItem2_GetPropertyDescriptionList(IShellItem2* This,REFPROPERTYKEY keyType,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv); } static inline HRESULT IShellItem2_Update(IShellItem2* This,IBindCtx *pbc) { return This->lpVtbl->Update(This,pbc); } static inline HRESULT IShellItem2_GetProperty(IShellItem2* This,REFPROPERTYKEY key,PROPVARIANT *ppropvar) { return This->lpVtbl->GetProperty(This,key,ppropvar); } static inline HRESULT IShellItem2_GetCLSID(IShellItem2* This,REFPROPERTYKEY key,CLSID *pclsid) { return This->lpVtbl->GetCLSID(This,key,pclsid); } static inline HRESULT IShellItem2_GetFileTime(IShellItem2* This,REFPROPERTYKEY key,FILETIME *pft) { return This->lpVtbl->GetFileTime(This,key,pft); } static inline HRESULT IShellItem2_GetInt32(IShellItem2* This,REFPROPERTYKEY key,int *pi) { return This->lpVtbl->GetInt32(This,key,pi); } static inline HRESULT IShellItem2_GetString(IShellItem2* This,REFPROPERTYKEY key,LPWSTR *ppsz) { return This->lpVtbl->GetString(This,key,ppsz); } static inline HRESULT IShellItem2_GetUInt32(IShellItem2* This,REFPROPERTYKEY key,ULONG *pui) { return This->lpVtbl->GetUInt32(This,key,pui); } static inline HRESULT IShellItem2_GetUInt64(IShellItem2* This,REFPROPERTYKEY key,ULONGLONG *pull) { return This->lpVtbl->GetUInt64(This,key,pull); } static inline HRESULT IShellItem2_GetBool(IShellItem2* This,REFPROPERTYKEY key,BOOL *pf) { return This->lpVtbl->GetBool(This,key,pf); } #endif #endif #endif #endif /* __IShellItem2_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellItemImageFactory interface */ #ifndef __IShellItemImageFactory_INTERFACE_DEFINED__ #define __IShellItemImageFactory_INTERFACE_DEFINED__ enum _SIIGBF { SIIGBF_RESIZETOFIT = 0x0, SIIGBF_BIGGERSIZEOK = 0x1, SIIGBF_MEMORYONLY = 0x2, SIIGBF_ICONONLY = 0x4, SIIGBF_THUMBNAILONLY = 0x8, SIIGBF_INCACHEONLY = 0x10, SIIGBF_CROPTOSQUARE = 0x20, SIIGBF_WIDETHUMBNAILS = 0x40, SIIGBF_ICONBACKGROUND = 0x80, SIIGBF_SCALEUP = 0x100 }; typedef int SIIGBF; DEFINE_GUID(IID_IShellItemImageFactory, 0xbcc18b79, 0xba16, 0x442f, 0x80,0xc4, 0x8a,0x59,0xc3,0x0c,0x46,0x3b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("bcc18b79-ba16-442f-80c4-8a59c30c463b") IShellItemImageFactory : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetImage( SIZE size, SIIGBF flags, HBITMAP *phbm) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItemImageFactory, 0xbcc18b79, 0xba16, 0x442f, 0x80,0xc4, 0x8a,0x59,0xc3,0x0c,0x46,0x3b) #endif #else typedef struct IShellItemImageFactoryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItemImageFactory *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItemImageFactory *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItemImageFactory *This); /*** IShellItemImageFactory methods ***/ HRESULT (STDMETHODCALLTYPE *GetImage)( IShellItemImageFactory *This, SIZE size, SIIGBF flags, HBITMAP *phbm); END_INTERFACE } IShellItemImageFactoryVtbl; interface IShellItemImageFactory { CONST_VTBL IShellItemImageFactoryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItemImageFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItemImageFactory_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItemImageFactory_Release(This) (This)->lpVtbl->Release(This) /*** IShellItemImageFactory methods ***/ #define IShellItemImageFactory_GetImage(This,size,flags,phbm) (This)->lpVtbl->GetImage(This,size,flags,phbm) #else /*** IUnknown methods ***/ static inline HRESULT IShellItemImageFactory_QueryInterface(IShellItemImageFactory* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellItemImageFactory_AddRef(IShellItemImageFactory* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellItemImageFactory_Release(IShellItemImageFactory* This) { return This->lpVtbl->Release(This); } /*** IShellItemImageFactory methods ***/ static inline HRESULT IShellItemImageFactory_GetImage(IShellItemImageFactory* This,SIZE size,SIIGBF flags,HBITMAP *phbm) { return This->lpVtbl->GetImage(This,size,flags,phbm); } #endif #endif #endif #endif /* __IShellItemImageFactory_INTERFACE_DEFINED__ */ /***************************************************************************** * IParentAndItem interface */ #ifndef __IParentAndItem_INTERFACE_DEFINED__ #define __IParentAndItem_INTERFACE_DEFINED__ DEFINE_GUID(IID_IParentAndItem, 0xb3a4b685, 0xb685, 0x4805, 0x99,0xd9, 0x5d,0xea,0xd2,0x87,0x32,0x36); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b3a4b685-b685-4805-99d9-5dead2873236") IParentAndItem : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetParentAndItem( PCIDLIST_ABSOLUTE parent, IShellFolder *folder, PCUITEMID_CHILD child) = 0; virtual HRESULT STDMETHODCALLTYPE GetParentAndItem( PIDLIST_ABSOLUTE *parent, IShellFolder **folder, PITEMID_CHILD *child) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IParentAndItem, 0xb3a4b685, 0xb685, 0x4805, 0x99,0xd9, 0x5d,0xea,0xd2,0x87,0x32,0x36) #endif #else typedef struct IParentAndItemVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IParentAndItem *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IParentAndItem *This); ULONG (STDMETHODCALLTYPE *Release)( IParentAndItem *This); /*** IParentAndItem methods ***/ HRESULT (STDMETHODCALLTYPE *SetParentAndItem)( IParentAndItem *This, PCIDLIST_ABSOLUTE parent, IShellFolder *folder, PCUITEMID_CHILD child); HRESULT (STDMETHODCALLTYPE *GetParentAndItem)( IParentAndItem *This, PIDLIST_ABSOLUTE *parent, IShellFolder **folder, PITEMID_CHILD *child); END_INTERFACE } IParentAndItemVtbl; interface IParentAndItem { CONST_VTBL IParentAndItemVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IParentAndItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IParentAndItem_AddRef(This) (This)->lpVtbl->AddRef(This) #define IParentAndItem_Release(This) (This)->lpVtbl->Release(This) /*** IParentAndItem methods ***/ #define IParentAndItem_SetParentAndItem(This,parent,folder,child) (This)->lpVtbl->SetParentAndItem(This,parent,folder,child) #define IParentAndItem_GetParentAndItem(This,parent,folder,child) (This)->lpVtbl->GetParentAndItem(This,parent,folder,child) #else /*** IUnknown methods ***/ static inline HRESULT IParentAndItem_QueryInterface(IParentAndItem* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IParentAndItem_AddRef(IParentAndItem* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IParentAndItem_Release(IParentAndItem* This) { return This->lpVtbl->Release(This); } /*** IParentAndItem methods ***/ static inline HRESULT IParentAndItem_SetParentAndItem(IParentAndItem* This,PCIDLIST_ABSOLUTE parent,IShellFolder *folder,PCUITEMID_CHILD child) { return This->lpVtbl->SetParentAndItem(This,parent,folder,child); } static inline HRESULT IParentAndItem_GetParentAndItem(IParentAndItem* This,PIDLIST_ABSOLUTE *parent,IShellFolder **folder,PITEMID_CHILD *child) { return This->lpVtbl->GetParentAndItem(This,parent,folder,child); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IParentAndItem_RemoteGetParentAndItem_Proxy( IParentAndItem* This, PIDLIST_ABSOLUTE *parent, IShellFolder **folder, PITEMID_CHILD *child); void __RPC_STUB IParentAndItem_RemoteGetParentAndItem_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IParentAndItem_GetParentAndItem_Proxy( IParentAndItem* This, PIDLIST_ABSOLUTE *parent, IShellFolder **folder, PITEMID_CHILD *child); HRESULT __RPC_STUB IParentAndItem_GetParentAndItem_Stub( IParentAndItem* This, PIDLIST_ABSOLUTE *parent, IShellFolder **folder, PITEMID_CHILD *child); #endif /* __IParentAndItem_INTERFACE_DEFINED__ */ typedef enum tagNWMF { NWMF_UNLOADING = 0x1, NWMF_USERINITED = 0x2, NWMF_FIRST = 0x4, NWMF_OVERRIDEKEY = 0x8, NWMF_SHOWHELP = 0x10, NWMF_HTMLDIALOG = 0x20, NWMF_FROMDIALOGCHILD = 0x40, NWMF_USERREQUESTED = 0x80, NWMF_USERALLOWED = 0x100, NWMF_FORCEWINDOW = 0x10000, NWMF_FORCETAB = 0x20000, NWMF_SUGGESTWINDOW = 0x40000, NWMF_SUGGESTTAB = 0x80000, NWMF_INACTIVETAB = 0x100000 } NWMF; /***************************************************************************** * INewWindowManager interface */ #ifndef __INewWindowManager_INTERFACE_DEFINED__ #define __INewWindowManager_INTERFACE_DEFINED__ DEFINE_GUID(IID_INewWindowManager, 0xd2bc4c84, 0x3f72, 0x4a52, 0xa6,0x04, 0x7b,0xcb,0xf3,0x98,0x2c,0xbb); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d2bc4c84-3f72-4a52-a604-7bcbf3982cbb") INewWindowManager : public IUnknown { virtual HRESULT STDMETHODCALLTYPE EvaluateNewWindow( LPCWSTR pszUrl, LPCWSTR pszName, LPCWSTR pszUrlContext, LPCWSTR pszFeatures, BOOL fReplace, DWORD dwFlags, DWORD dwUserActionTime) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INewWindowManager, 0xd2bc4c84, 0x3f72, 0x4a52, 0xa6,0x04, 0x7b,0xcb,0xf3,0x98,0x2c,0xbb) #endif #else typedef struct INewWindowManagerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INewWindowManager *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INewWindowManager *This); ULONG (STDMETHODCALLTYPE *Release)( INewWindowManager *This); /*** INewWindowManager methods ***/ HRESULT (STDMETHODCALLTYPE *EvaluateNewWindow)( INewWindowManager *This, LPCWSTR pszUrl, LPCWSTR pszName, LPCWSTR pszUrlContext, LPCWSTR pszFeatures, BOOL fReplace, DWORD dwFlags, DWORD dwUserActionTime); END_INTERFACE } INewWindowManagerVtbl; interface INewWindowManager { CONST_VTBL INewWindowManagerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INewWindowManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INewWindowManager_AddRef(This) (This)->lpVtbl->AddRef(This) #define INewWindowManager_Release(This) (This)->lpVtbl->Release(This) /*** INewWindowManager methods ***/ #define INewWindowManager_EvaluateNewWindow(This,pszUrl,pszName,pszUrlContext,pszFeatures,fReplace,dwFlags,dwUserActionTime) (This)->lpVtbl->EvaluateNewWindow(This,pszUrl,pszName,pszUrlContext,pszFeatures,fReplace,dwFlags,dwUserActionTime) #else /*** IUnknown methods ***/ static inline HRESULT INewWindowManager_QueryInterface(INewWindowManager* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG INewWindowManager_AddRef(INewWindowManager* This) { return This->lpVtbl->AddRef(This); } static inline ULONG INewWindowManager_Release(INewWindowManager* This) { return This->lpVtbl->Release(This); } /*** INewWindowManager methods ***/ static inline HRESULT INewWindowManager_EvaluateNewWindow(INewWindowManager* This,LPCWSTR pszUrl,LPCWSTR pszName,LPCWSTR pszUrlContext,LPCWSTR pszFeatures,BOOL fReplace,DWORD dwFlags,DWORD dwUserActionTime) { return This->lpVtbl->EvaluateNewWindow(This,pszUrl,pszName,pszUrlContext,pszFeatures,fReplace,dwFlags,dwUserActionTime); } #endif #endif #endif #endif /* __INewWindowManager_INTERFACE_DEFINED__ */ #define SID_SNewWindowManager IID_INewWindowManager /***************************************************************************** * IEnumShellItems interface */ #ifndef __IEnumShellItems_INTERFACE_DEFINED__ #define __IEnumShellItems_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumShellItems, 0x70629033, 0xe363, 0x4a28, 0xa5,0x67, 0x0d,0xb7,0x80,0x06,0xe6,0xd7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("70629033-e363-4a28-a567-0db78006e6d7") IEnumShellItems : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, IShellItem **rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumShellItems **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumShellItems, 0x70629033, 0xe363, 0x4a28, 0xa5,0x67, 0x0d,0xb7,0x80,0x06,0xe6,0xd7) #endif #else typedef struct IEnumShellItemsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumShellItems *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumShellItems *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumShellItems *This); /*** IEnumShellItems methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumShellItems *This, ULONG celt, IShellItem **rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumShellItems *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumShellItems *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumShellItems *This, IEnumShellItems **ppenum); END_INTERFACE } IEnumShellItemsVtbl; interface IEnumShellItems { CONST_VTBL IEnumShellItemsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumShellItems_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumShellItems_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumShellItems_Release(This) (This)->lpVtbl->Release(This) /*** IEnumShellItems methods ***/ #define IEnumShellItems_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) #define IEnumShellItems_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumShellItems_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumShellItems_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static inline HRESULT IEnumShellItems_QueryInterface(IEnumShellItems* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IEnumShellItems_AddRef(IEnumShellItems* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IEnumShellItems_Release(IEnumShellItems* This) { return This->lpVtbl->Release(This); } /*** IEnumShellItems methods ***/ static inline HRESULT IEnumShellItems_Next(IEnumShellItems* This,ULONG celt,IShellItem **rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); } static inline HRESULT IEnumShellItems_Skip(IEnumShellItems* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static inline HRESULT IEnumShellItems_Reset(IEnumShellItems* This) { return This->lpVtbl->Reset(This); } static inline HRESULT IEnumShellItems_Clone(IEnumShellItems* This,IEnumShellItems **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IEnumShellItems_RemoteNext_Proxy( IEnumShellItems* This, ULONG celt, IShellItem **rgelt, ULONG *pceltFetched); void __RPC_STUB IEnumShellItems_RemoteNext_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IEnumShellItems_Next_Proxy( IEnumShellItems* This, ULONG celt, IShellItem **rgelt, ULONG *pceltFetched); HRESULT __RPC_STUB IEnumShellItems_Next_Stub( IEnumShellItems* This, ULONG celt, IShellItem **rgelt, ULONG *pceltFetched); #endif /* __IEnumShellItems_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellItemArray interface */ #ifndef __IShellItemArray_INTERFACE_DEFINED__ #define __IShellItemArray_INTERFACE_DEFINED__ typedef enum SIATTRIBFLAGS { SIATTRIBFLAGS_AND = 0x1, SIATTRIBFLAGS_OR = 0x2, SIATTRIBFLAGS_APPCOMPAT = 0x3, SIATTRIBFLAGS_MASK = 0x3, SIATTRIBFLAGS_ALLITEMS = 0x4000 } SIATTRIBFLAGS; DEFINE_ENUM_FLAG_OPERATORS(SIATTRIBFLAGS) DEFINE_GUID(IID_IShellItemArray, 0xb63ea76d, 0x1f85, 0x456f, 0xa1,0x9c, 0x48,0x15,0x9e,0xfa,0x85,0x8b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b63ea76d-1f85-456f-a19c-48159efa858b") IShellItemArray : public IUnknown { virtual HRESULT STDMETHODCALLTYPE BindToHandler( IBindCtx *pbc, REFGUID bhid, REFIID riid, void **ppvOut) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyStore( GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionList( REFPROPERTYKEY keyType, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetAttributes( SIATTRIBFLAGS AttribFlags, SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs) = 0; virtual HRESULT STDMETHODCALLTYPE GetCount( DWORD *pdwNumItems) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemAt( DWORD dwIndex, IShellItem **ppsi) = 0; virtual HRESULT STDMETHODCALLTYPE EnumItems( IEnumShellItems **ppenumShellItems) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItemArray, 0xb63ea76d, 0x1f85, 0x456f, 0xa1,0x9c, 0x48,0x15,0x9e,0xfa,0x85,0x8b) #endif #else typedef struct IShellItemArrayVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItemArray *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItemArray *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItemArray *This); /*** IShellItemArray methods ***/ HRESULT (STDMETHODCALLTYPE *BindToHandler)( IShellItemArray *This, IBindCtx *pbc, REFGUID bhid, REFIID riid, void **ppvOut); HRESULT (STDMETHODCALLTYPE *GetPropertyStore)( IShellItemArray *This, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPropertyDescriptionList)( IShellItemArray *This, REFPROPERTYKEY keyType, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetAttributes)( IShellItemArray *This, SIATTRIBFLAGS AttribFlags, SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs); HRESULT (STDMETHODCALLTYPE *GetCount)( IShellItemArray *This, DWORD *pdwNumItems); HRESULT (STDMETHODCALLTYPE *GetItemAt)( IShellItemArray *This, DWORD dwIndex, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *EnumItems)( IShellItemArray *This, IEnumShellItems **ppenumShellItems); END_INTERFACE } IShellItemArrayVtbl; interface IShellItemArray { CONST_VTBL IShellItemArrayVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItemArray_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItemArray_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItemArray_Release(This) (This)->lpVtbl->Release(This) /*** IShellItemArray methods ***/ #define IShellItemArray_BindToHandler(This,pbc,bhid,riid,ppvOut) (This)->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppvOut) #define IShellItemArray_GetPropertyStore(This,flags,riid,ppv) (This)->lpVtbl->GetPropertyStore(This,flags,riid,ppv) #define IShellItemArray_GetPropertyDescriptionList(This,keyType,riid,ppv) (This)->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv) #define IShellItemArray_GetAttributes(This,AttribFlags,sfgaoMask,psfgaoAttribs) (This)->lpVtbl->GetAttributes(This,AttribFlags,sfgaoMask,psfgaoAttribs) #define IShellItemArray_GetCount(This,pdwNumItems) (This)->lpVtbl->GetCount(This,pdwNumItems) #define IShellItemArray_GetItemAt(This,dwIndex,ppsi) (This)->lpVtbl->GetItemAt(This,dwIndex,ppsi) #define IShellItemArray_EnumItems(This,ppenumShellItems) (This)->lpVtbl->EnumItems(This,ppenumShellItems) #else /*** IUnknown methods ***/ static inline HRESULT IShellItemArray_QueryInterface(IShellItemArray* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellItemArray_AddRef(IShellItemArray* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellItemArray_Release(IShellItemArray* This) { return This->lpVtbl->Release(This); } /*** IShellItemArray methods ***/ static inline HRESULT IShellItemArray_BindToHandler(IShellItemArray* This,IBindCtx *pbc,REFGUID bhid,REFIID riid,void **ppvOut) { return This->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppvOut); } static inline HRESULT IShellItemArray_GetPropertyStore(IShellItemArray* This,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyStore(This,flags,riid,ppv); } static inline HRESULT IShellItemArray_GetPropertyDescriptionList(IShellItemArray* This,REFPROPERTYKEY keyType,REFIID riid,void **ppv) { return This->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv); } static inline HRESULT IShellItemArray_GetAttributes(IShellItemArray* This,SIATTRIBFLAGS AttribFlags,SFGAOF sfgaoMask,SFGAOF *psfgaoAttribs) { return This->lpVtbl->GetAttributes(This,AttribFlags,sfgaoMask,psfgaoAttribs); } static inline HRESULT IShellItemArray_GetCount(IShellItemArray* This,DWORD *pdwNumItems) { return This->lpVtbl->GetCount(This,pdwNumItems); } static inline HRESULT IShellItemArray_GetItemAt(IShellItemArray* This,DWORD dwIndex,IShellItem **ppsi) { return This->lpVtbl->GetItemAt(This,dwIndex,ppsi); } static inline HRESULT IShellItemArray_EnumItems(IShellItemArray* This,IEnumShellItems **ppenumShellItems) { return This->lpVtbl->EnumItems(This,ppenumShellItems); } #endif #endif #endif #endif /* __IShellItemArray_INTERFACE_DEFINED__ */ typedef enum DATAOBJ_GET_ITEM_FLAGS { DOGIF_DEFAULT = 0x0, DOGIF_TRAVERSE_LINK = 0x1, DOGIF_NO_HDROP = 0x2, DOGIF_NO_URL = 0x4, DOGIF_ONLY_IF_ONE = 0x8 } DATAOBJ_GET_ITEM_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(DATAOBJ_GET_ITEM_FLAGS) WINSHELLAPI HRESULT WINAPI SHGetNameFromIDList(PCIDLIST_ABSOLUTE pidl, SIGDN sigdnName, PWSTR *ppszName); WINSHELLAPI HRESULT WINAPI SHCreateItemFromParsingName(PCWSTR pszPath, IBindCtx *pbc, REFIID riid, void **ppv); WINSHELLAPI HRESULT WINAPI SHCreateItemFromIDList(PCIDLIST_ABSOLUTE pidl, REFIID riid, void **ppv); WINSHELLAPI HRESULT WINAPI SHCreateItemFromRelativeName(IShellItem *parent, PCWSTR name, IBindCtx *pbc, REFIID riid, void **ppv); WINSHELLAPI HRESULT WINAPI SHGetItemFromDataObject(IDataObject *pdtobj, DATAOBJ_GET_ITEM_FLAGS dwFlags, REFIID riid, void **ppv); WINSHELLAPI HRESULT WINAPI SHGetIDListFromObject(IUnknown *punk, PIDLIST_ABSOLUTE *ppidl); WINSHELLAPI HRESULT WINAPI SHGetItemFromObject(IUnknown *punk, REFIID riid, void **ppv); WINSHELLAPI HRESULT WINAPI SHCreateShellItemArray(PCIDLIST_ABSOLUTE pidlParent, IShellFolder* psf, UINT cidl, PCUITEMID_CHILD_ARRAY ppidl, IShellItemArray **ppsiItemArray); WINSHELLAPI HRESULT WINAPI SHCreateShellItemArrayFromShellItem(IShellItem *psi, REFIID riid, void **ppv); WINSHELLAPI HRESULT WINAPI SHCreateShellItemArrayFromIDLists(UINT cidl, PCIDLIST_ABSOLUTE_ARRAY pidl_array, IShellItemArray **psia); WINSHELLAPI HRESULT WINAPI SHCreateItemInKnownFolder(REFKNOWNFOLDERID rfid, DWORD flags, PCWSTR filename, REFIID riid, void **ppv); WINSHELLAPI HRESULT WINAPI SHCreateShellItemArrayFromDataObject(IDataObject *pdo, REFIID riid, void **ppv); /***************************************************************************** * IShellItemFilter interface */ #ifndef __IShellItemFilter_INTERFACE_DEFINED__ #define __IShellItemFilter_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellItemFilter, 0x2659b475, 0xeeb8, 0x48b7, 0x8f,0x07, 0xb3,0x78,0x81,0x0f,0x48,0xcf); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2659b475-eeb8-48b7-8f07-b378810f48cf") IShellItemFilter : public IUnknown { virtual HRESULT STDMETHODCALLTYPE IncludeItem( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE GetEnumFlagsForItem( IShellItem *psi, SHCONTF *pgrfFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellItemFilter, 0x2659b475, 0xeeb8, 0x48b7, 0x8f,0x07, 0xb3,0x78,0x81,0x0f,0x48,0xcf) #endif #else typedef struct IShellItemFilterVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellItemFilter *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellItemFilter *This); ULONG (STDMETHODCALLTYPE *Release)( IShellItemFilter *This); /*** IShellItemFilter methods ***/ HRESULT (STDMETHODCALLTYPE *IncludeItem)( IShellItemFilter *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetEnumFlagsForItem)( IShellItemFilter *This, IShellItem *psi, SHCONTF *pgrfFlags); END_INTERFACE } IShellItemFilterVtbl; interface IShellItemFilter { CONST_VTBL IShellItemFilterVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellItemFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellItemFilter_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellItemFilter_Release(This) (This)->lpVtbl->Release(This) /*** IShellItemFilter methods ***/ #define IShellItemFilter_IncludeItem(This,psi) (This)->lpVtbl->IncludeItem(This,psi) #define IShellItemFilter_GetEnumFlagsForItem(This,psi,pgrfFlags) (This)->lpVtbl->GetEnumFlagsForItem(This,psi,pgrfFlags) #else /*** IUnknown methods ***/ static inline HRESULT IShellItemFilter_QueryInterface(IShellItemFilter* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellItemFilter_AddRef(IShellItemFilter* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellItemFilter_Release(IShellItemFilter* This) { return This->lpVtbl->Release(This); } /*** IShellItemFilter methods ***/ static inline HRESULT IShellItemFilter_IncludeItem(IShellItemFilter* This,IShellItem *psi) { return This->lpVtbl->IncludeItem(This,psi); } static inline HRESULT IShellItemFilter_GetEnumFlagsForItem(IShellItemFilter* This,IShellItem *psi,SHCONTF *pgrfFlags) { return This->lpVtbl->GetEnumFlagsForItem(This,psi,pgrfFlags); } #endif #endif #endif #endif /* __IShellItemFilter_INTERFACE_DEFINED__ */ typedef char *LPVIEWSETTINGS; typedef enum FOLDERFLAGS { FWF_NONE = 0x0, FWF_AUTOARRANGE = 0x1, FWF_ABBREVIATEDNAMES = 0x2, FWF_SNAPTOGRID = 0x4, FWF_OWNERDATA = 0x8, FWF_BESTFITWINDOW = 0x10, FWF_DESKTOP = 0x20, FWF_SINGLESEL = 0x40, FWF_NOSUBFOLDERS = 0x80, FWF_TRANSPARENT = 0x100, FWF_NOCLIENTEDGE = 0x200, FWF_NOSCROLL = 0x400, FWF_ALIGNLEFT = 0x800, FWF_NOICONS = 0x1000, FWF_SHOWSELALWAYS = 0x2000, FWF_NOVISIBLE = 0x4000, FWF_SINGLECLICKACTIVATE = 0x8000, FWF_NOWEBVIEW = 0x10000, FWF_HIDEFILENAMES = 0x20000, FWF_CHECKSELECT = 0x40000, FWF_NOENUMREFRESH = 0x80000, FWF_NOGROUPING = 0x100000, FWF_FULLROWSELECT = 0x200000, FWF_NOFILTERS = 0x400000, FWF_NOCOLUMNHEADER = 0x800000, FWF_NOHEADERINALLVIEWS = 0x1000000, FWF_EXTENDEDTILES = 0x2000000, FWF_TRICHECKSELECT = 0x4000000, FWF_AUTOCHECKSELECT = 0x8000000, FWF_NOBROWSERVIEWSTATE = 0x10000000, FWF_SUBSETGROUPS = 0x20000000, FWF_USESEARCHFOLDER = 0x40000000, FWF_ALLOWRTLREADING = 0x80000000 } FOLDERFLAGS; typedef enum FOLDERVIEWMODE { FVM_AUTO = -1, FVM_ICON = 1, FVM_FIRST = FVM_ICON, FVM_SMALLICON = 2, FVM_LIST = 3, FVM_DETAILS = 4, FVM_THUMBNAIL = 5, FVM_TILE = 6, FVM_THUMBSTRIP = 7, FVM_CONTENT = 8, FVM_LAST = FVM_CONTENT } FOLDERVIEWMODE; typedef struct __WIDL_shobjidl_generated_name_00000026 { UINT ViewMode; UINT fFlags; } FOLDERSETTINGS; typedef struct __WIDL_shobjidl_generated_name_00000026 *PFOLDERSETTINGS; typedef struct __WIDL_shobjidl_generated_name_00000026 *LPFOLDERSETTINGS; typedef const FOLDERSETTINGS *LPCFOLDERSETTINGS; /***************************************************************************** * IShellIcon interface */ #ifndef __IShellIcon_INTERFACE_DEFINED__ #define __IShellIcon_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellIcon, 0x000214e5, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e5-0000-0000-c000-000000000046") IShellIcon : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetIconOf( PCUITEMID_CHILD pidl, UINT flags, int *pIconIndex) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellIcon, 0x000214e5, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellIconVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellIcon *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellIcon *This); ULONG (STDMETHODCALLTYPE *Release)( IShellIcon *This); /*** IShellIcon methods ***/ HRESULT (STDMETHODCALLTYPE *GetIconOf)( IShellIcon *This, PCUITEMID_CHILD pidl, UINT flags, int *pIconIndex); END_INTERFACE } IShellIconVtbl; interface IShellIcon { CONST_VTBL IShellIconVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellIcon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellIcon_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellIcon_Release(This) (This)->lpVtbl->Release(This) /*** IShellIcon methods ***/ #define IShellIcon_GetIconOf(This,pidl,flags,pIconIndex) (This)->lpVtbl->GetIconOf(This,pidl,flags,pIconIndex) #else /*** IUnknown methods ***/ static inline HRESULT IShellIcon_QueryInterface(IShellIcon* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellIcon_AddRef(IShellIcon* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellIcon_Release(IShellIcon* This) { return This->lpVtbl->Release(This); } /*** IShellIcon methods ***/ static inline HRESULT IShellIcon_GetIconOf(IShellIcon* This,PCUITEMID_CHILD pidl,UINT flags,int *pIconIndex) { return This->lpVtbl->GetIconOf(This,pidl,flags,pIconIndex); } #endif #endif #endif #endif /* __IShellIcon_INTERFACE_DEFINED__ */ #ifndef __IShellBrowser_FWD_DEFINED__ #define __IShellBrowser_FWD_DEFINED__ typedef interface IShellBrowser IShellBrowser; #ifdef __cplusplus interface IShellBrowser; #endif /* __cplusplus */ #endif /***************************************************************************** * IShellView interface */ #ifndef __IShellView_INTERFACE_DEFINED__ #define __IShellView_INTERFACE_DEFINED__ typedef IShellView *LPSHELLVIEW; typedef enum _SVSIF { SVSI_DESELECT = 0x0, SVSI_SELECT = 0x1, SVSI_EDIT = 0x3, SVSI_DESELECTOTHERS = 0x4, SVSI_ENSUREVISIBLE = 0x8, SVSI_FOCUSED = 0x10, SVSI_TRANSLATEPT = 0x20, SVSI_SELECTIONMARK = 0x40, SVSI_POSITIONITEM = 0x80, SVSI_CHECK = 0x100, SVSI_CHECK2 = 0x200, SVSI_KEYBOARDSELECT = 0x401, SVSI_NOTAKEFOCUS = 0x40000000 } _SVSIF; #define SVSI_NOSTATECHANGE 0x80000000 typedef UINT SVSIF; typedef enum _SVGIO { SVGIO_BACKGROUND = 0x0, SVGIO_SELECTION = 0x1, SVGIO_ALLVIEW = 0x2, SVGIO_CHECKED = 0x3, SVGIO_TYPE_MASK = 0xf, SVGIO_FLAG_VIEWORDER = 0x80000000 } _SVGIO; typedef INT SVGIO; typedef enum SVUIA_STATUS { SVUIA_DEACTIVATE = 0, SVUIA_ACTIVATE_NOFOCUS = 1, SVUIA_ACTIVATE_FOCUS = 2, SVUIA_INPLACEACTIVATE = 3 } SVUIA_STATUS; DEFINE_GUID(IID_IShellView, 0x000214e3, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e3-0000-0000-c000-000000000046") IShellView : public IOleWindow { virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator( MSG *pmsg) = 0; virtual HRESULT STDMETHODCALLTYPE EnableModeless( BOOL fEnable) = 0; virtual HRESULT STDMETHODCALLTYPE UIActivate( UINT uState) = 0; virtual HRESULT STDMETHODCALLTYPE Refresh( ) = 0; virtual HRESULT STDMETHODCALLTYPE CreateViewWindow( IShellView *psvPrevious, LPCFOLDERSETTINGS lpfs, IShellBrowser *psb, RECT *prcView, HWND *phWnd) = 0; virtual HRESULT STDMETHODCALLTYPE DestroyViewWindow( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentInfo( LPFOLDERSETTINGS lpfs) = 0; virtual HRESULT STDMETHODCALLTYPE AddPropertySheetPages( DWORD dwReserved, LPFNSVADDPROPSHEETPAGE pfn, LPARAM lparam) = 0; virtual HRESULT STDMETHODCALLTYPE SaveViewState( ) = 0; virtual HRESULT STDMETHODCALLTYPE SelectItem( LPCITEMIDLIST pidlItem, SVSIF uFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemObject( UINT uItem, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellView, 0x000214e3, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellView *This); ULONG (STDMETHODCALLTYPE *Release)( IShellView *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IShellView *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IShellView *This, BOOL fEnterMode); /*** IShellView methods ***/ HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( IShellView *This, MSG *pmsg); HRESULT (STDMETHODCALLTYPE *EnableModeless)( IShellView *This, BOOL fEnable); HRESULT (STDMETHODCALLTYPE *UIActivate)( IShellView *This, UINT uState); HRESULT (STDMETHODCALLTYPE *Refresh)( IShellView *This); HRESULT (STDMETHODCALLTYPE *CreateViewWindow)( IShellView *This, IShellView *psvPrevious, LPCFOLDERSETTINGS lpfs, IShellBrowser *psb, RECT *prcView, HWND *phWnd); HRESULT (STDMETHODCALLTYPE *DestroyViewWindow)( IShellView *This); HRESULT (STDMETHODCALLTYPE *GetCurrentInfo)( IShellView *This, LPFOLDERSETTINGS lpfs); HRESULT (STDMETHODCALLTYPE *AddPropertySheetPages)( IShellView *This, DWORD dwReserved, LPFNSVADDPROPSHEETPAGE pfn, LPARAM lparam); HRESULT (STDMETHODCALLTYPE *SaveViewState)( IShellView *This); HRESULT (STDMETHODCALLTYPE *SelectItem)( IShellView *This, LPCITEMIDLIST pidlItem, SVSIF uFlags); HRESULT (STDMETHODCALLTYPE *GetItemObject)( IShellView *This, UINT uItem, REFIID riid, void **ppv); END_INTERFACE } IShellViewVtbl; interface IShellView { CONST_VTBL IShellViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellView_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellView_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IShellView_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IShellView_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IShellView methods ***/ #define IShellView_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) #define IShellView_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable) #define IShellView_UIActivate(This,uState) (This)->lpVtbl->UIActivate(This,uState) #define IShellView_Refresh(This) (This)->lpVtbl->Refresh(This) #define IShellView_CreateViewWindow(This,psvPrevious,lpfs,psb,prcView,phWnd) (This)->lpVtbl->CreateViewWindow(This,psvPrevious,lpfs,psb,prcView,phWnd) #define IShellView_DestroyViewWindow(This) (This)->lpVtbl->DestroyViewWindow(This) #define IShellView_GetCurrentInfo(This,lpfs) (This)->lpVtbl->GetCurrentInfo(This,lpfs) #define IShellView_AddPropertySheetPages(This,dwReserved,pfn,lparam) (This)->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam) #define IShellView_SaveViewState(This) (This)->lpVtbl->SaveViewState(This) #define IShellView_SelectItem(This,pidlItem,uFlags) (This)->lpVtbl->SelectItem(This,pidlItem,uFlags) #define IShellView_GetItemObject(This,uItem,riid,ppv) (This)->lpVtbl->GetItemObject(This,uItem,riid,ppv) #else /*** IUnknown methods ***/ static inline HRESULT IShellView_QueryInterface(IShellView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellView_AddRef(IShellView* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellView_Release(IShellView* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static inline HRESULT IShellView_GetWindow(IShellView* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static inline HRESULT IShellView_ContextSensitiveHelp(IShellView* This,BOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IShellView methods ***/ static inline HRESULT IShellView_TranslateAccelerator(IShellView* This,MSG *pmsg) { return This->lpVtbl->TranslateAccelerator(This,pmsg); } static inline HRESULT IShellView_EnableModeless(IShellView* This,BOOL fEnable) { return This->lpVtbl->EnableModeless(This,fEnable); } static inline HRESULT IShellView_UIActivate(IShellView* This,UINT uState) { return This->lpVtbl->UIActivate(This,uState); } static inline HRESULT IShellView_Refresh(IShellView* This) { return This->lpVtbl->Refresh(This); } static inline HRESULT IShellView_CreateViewWindow(IShellView* This,IShellView *psvPrevious,LPCFOLDERSETTINGS lpfs,IShellBrowser *psb,RECT *prcView,HWND *phWnd) { return This->lpVtbl->CreateViewWindow(This,psvPrevious,lpfs,psb,prcView,phWnd); } static inline HRESULT IShellView_DestroyViewWindow(IShellView* This) { return This->lpVtbl->DestroyViewWindow(This); } static inline HRESULT IShellView_GetCurrentInfo(IShellView* This,LPFOLDERSETTINGS lpfs) { return This->lpVtbl->GetCurrentInfo(This,lpfs); } static inline HRESULT IShellView_AddPropertySheetPages(IShellView* This,DWORD dwReserved,LPFNSVADDPROPSHEETPAGE pfn,LPARAM lparam) { return This->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam); } static inline HRESULT IShellView_SaveViewState(IShellView* This) { return This->lpVtbl->SaveViewState(This); } static inline HRESULT IShellView_SelectItem(IShellView* This,LPCITEMIDLIST pidlItem,SVSIF uFlags) { return This->lpVtbl->SelectItem(This,pidlItem,uFlags); } static inline HRESULT IShellView_GetItemObject(IShellView* This,UINT uItem,REFIID riid,void **ppv) { return This->lpVtbl->GetItemObject(This,uItem,riid,ppv); } #endif #endif #endif #endif /* __IShellView_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellView2 interface */ #ifndef __IShellView2_INTERFACE_DEFINED__ #define __IShellView2_INTERFACE_DEFINED__ typedef GUID SHELLVIEWID; #pragma pack(push,8) typedef struct _SV2CVW2_PARAMS { DWORD cbSize; IShellView *psvPrev; LPCFOLDERSETTINGS pfs; IShellBrowser *psbOwner; RECT *prcView; const SHELLVIEWID *pvid; HWND hwndView; } SV2CVW2_PARAMS; typedef struct _SV2CVW2_PARAMS *LPSV2CVW2_PARAMS; #pragma pack(pop) DEFINE_GUID(IID_IShellView2, 0x88e39e80, 0x3578, 0x11cf, 0xae,0x69, 0x08,0x00,0x2b,0x2e,0x12,0x62); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("88e39e80-3578-11cf-ae69-08002b2e1262") IShellView2 : public IShellView { virtual HRESULT STDMETHODCALLTYPE GetView( SHELLVIEWID *view_guid, ULONG view_type) = 0; virtual HRESULT STDMETHODCALLTYPE CreateViewWindow2( LPSV2CVW2_PARAMS view_params) = 0; virtual HRESULT STDMETHODCALLTYPE HandleRename( LPCITEMIDLIST new_pidl) = 0; virtual HRESULT STDMETHODCALLTYPE SelectAndPositionItem( LPCITEMIDLIST item, UINT flags, POINT *point) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellView2, 0x88e39e80, 0x3578, 0x11cf, 0xae,0x69, 0x08,0x00,0x2b,0x2e,0x12,0x62) #endif #else typedef struct IShellView2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellView2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellView2 *This); ULONG (STDMETHODCALLTYPE *Release)( IShellView2 *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IShellView2 *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IShellView2 *This, BOOL fEnterMode); /*** IShellView methods ***/ HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( IShellView2 *This, MSG *pmsg); HRESULT (STDMETHODCALLTYPE *EnableModeless)( IShellView2 *This, BOOL fEnable); HRESULT (STDMETHODCALLTYPE *UIActivate)( IShellView2 *This, UINT uState); HRESULT (STDMETHODCALLTYPE *Refresh)( IShellView2 *This); HRESULT (STDMETHODCALLTYPE *CreateViewWindow)( IShellView2 *This, IShellView *psvPrevious, LPCFOLDERSETTINGS lpfs, IShellBrowser *psb, RECT *prcView, HWND *phWnd); HRESULT (STDMETHODCALLTYPE *DestroyViewWindow)( IShellView2 *This); HRESULT (STDMETHODCALLTYPE *GetCurrentInfo)( IShellView2 *This, LPFOLDERSETTINGS lpfs); HRESULT (STDMETHODCALLTYPE *AddPropertySheetPages)( IShellView2 *This, DWORD dwReserved, LPFNSVADDPROPSHEETPAGE pfn, LPARAM lparam); HRESULT (STDMETHODCALLTYPE *SaveViewState)( IShellView2 *This); HRESULT (STDMETHODCALLTYPE *SelectItem)( IShellView2 *This, LPCITEMIDLIST pidlItem, SVSIF uFlags); HRESULT (STDMETHODCALLTYPE *GetItemObject)( IShellView2 *This, UINT uItem, REFIID riid, void **ppv); /*** IShellView2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetView)( IShellView2 *This, SHELLVIEWID *view_guid, ULONG view_type); HRESULT (STDMETHODCALLTYPE *CreateViewWindow2)( IShellView2 *This, LPSV2CVW2_PARAMS view_params); HRESULT (STDMETHODCALLTYPE *HandleRename)( IShellView2 *This, LPCITEMIDLIST new_pidl); HRESULT (STDMETHODCALLTYPE *SelectAndPositionItem)( IShellView2 *This, LPCITEMIDLIST item, UINT flags, POINT *point); END_INTERFACE } IShellView2Vtbl; interface IShellView2 { CONST_VTBL IShellView2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellView2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellView2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellView2_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IShellView2_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IShellView2_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IShellView methods ***/ #define IShellView2_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) #define IShellView2_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable) #define IShellView2_UIActivate(This,uState) (This)->lpVtbl->UIActivate(This,uState) #define IShellView2_Refresh(This) (This)->lpVtbl->Refresh(This) #define IShellView2_CreateViewWindow(This,psvPrevious,lpfs,psb,prcView,phWnd) (This)->lpVtbl->CreateViewWindow(This,psvPrevious,lpfs,psb,prcView,phWnd) #define IShellView2_DestroyViewWindow(This) (This)->lpVtbl->DestroyViewWindow(This) #define IShellView2_GetCurrentInfo(This,lpfs) (This)->lpVtbl->GetCurrentInfo(This,lpfs) #define IShellView2_AddPropertySheetPages(This,dwReserved,pfn,lparam) (This)->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam) #define IShellView2_SaveViewState(This) (This)->lpVtbl->SaveViewState(This) #define IShellView2_SelectItem(This,pidlItem,uFlags) (This)->lpVtbl->SelectItem(This,pidlItem,uFlags) #define IShellView2_GetItemObject(This,uItem,riid,ppv) (This)->lpVtbl->GetItemObject(This,uItem,riid,ppv) /*** IShellView2 methods ***/ #define IShellView2_GetView(This,view_guid,view_type) (This)->lpVtbl->GetView(This,view_guid,view_type) #define IShellView2_CreateViewWindow2(This,view_params) (This)->lpVtbl->CreateViewWindow2(This,view_params) #define IShellView2_HandleRename(This,new_pidl) (This)->lpVtbl->HandleRename(This,new_pidl) #define IShellView2_SelectAndPositionItem(This,item,flags,point) (This)->lpVtbl->SelectAndPositionItem(This,item,flags,point) #else /*** IUnknown methods ***/ static inline HRESULT IShellView2_QueryInterface(IShellView2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellView2_AddRef(IShellView2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellView2_Release(IShellView2* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static inline HRESULT IShellView2_GetWindow(IShellView2* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static inline HRESULT IShellView2_ContextSensitiveHelp(IShellView2* This,BOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IShellView methods ***/ static inline HRESULT IShellView2_TranslateAccelerator(IShellView2* This,MSG *pmsg) { return This->lpVtbl->TranslateAccelerator(This,pmsg); } static inline HRESULT IShellView2_EnableModeless(IShellView2* This,BOOL fEnable) { return This->lpVtbl->EnableModeless(This,fEnable); } static inline HRESULT IShellView2_UIActivate(IShellView2* This,UINT uState) { return This->lpVtbl->UIActivate(This,uState); } static inline HRESULT IShellView2_Refresh(IShellView2* This) { return This->lpVtbl->Refresh(This); } static inline HRESULT IShellView2_CreateViewWindow(IShellView2* This,IShellView *psvPrevious,LPCFOLDERSETTINGS lpfs,IShellBrowser *psb,RECT *prcView,HWND *phWnd) { return This->lpVtbl->CreateViewWindow(This,psvPrevious,lpfs,psb,prcView,phWnd); } static inline HRESULT IShellView2_DestroyViewWindow(IShellView2* This) { return This->lpVtbl->DestroyViewWindow(This); } static inline HRESULT IShellView2_GetCurrentInfo(IShellView2* This,LPFOLDERSETTINGS lpfs) { return This->lpVtbl->GetCurrentInfo(This,lpfs); } static inline HRESULT IShellView2_AddPropertySheetPages(IShellView2* This,DWORD dwReserved,LPFNSVADDPROPSHEETPAGE pfn,LPARAM lparam) { return This->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam); } static inline HRESULT IShellView2_SaveViewState(IShellView2* This) { return This->lpVtbl->SaveViewState(This); } static inline HRESULT IShellView2_SelectItem(IShellView2* This,LPCITEMIDLIST pidlItem,SVSIF uFlags) { return This->lpVtbl->SelectItem(This,pidlItem,uFlags); } static inline HRESULT IShellView2_GetItemObject(IShellView2* This,UINT uItem,REFIID riid,void **ppv) { return This->lpVtbl->GetItemObject(This,uItem,riid,ppv); } /*** IShellView2 methods ***/ static inline HRESULT IShellView2_GetView(IShellView2* This,SHELLVIEWID *view_guid,ULONG view_type) { return This->lpVtbl->GetView(This,view_guid,view_type); } static inline HRESULT IShellView2_CreateViewWindow2(IShellView2* This,LPSV2CVW2_PARAMS view_params) { return This->lpVtbl->CreateViewWindow2(This,view_params); } static inline HRESULT IShellView2_HandleRename(IShellView2* This,LPCITEMIDLIST new_pidl) { return This->lpVtbl->HandleRename(This,new_pidl); } static inline HRESULT IShellView2_SelectAndPositionItem(IShellView2* This,LPCITEMIDLIST item,UINT flags,POINT *point) { return This->lpVtbl->SelectAndPositionItem(This,item,flags,point); } #endif #endif #endif #endif /* __IShellView2_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellView3 interface */ #ifndef __IShellView3_INTERFACE_DEFINED__ #define __IShellView3_INTERFACE_DEFINED__ enum _SV3CVW3_FLAGS { SV3CVW3_DEFAULT = 0x0, SV3CVW3_NONINTERACTIVE = 0x1, SV3CVW3_FORCEVIEWMODE = 0x2, SV3CVW3_FORCEFOLDERFLAGS = 0x4 }; typedef DWORD SV3CVW3_FLAGS; DEFINE_GUID(IID_IShellView3, 0xec39fa88, 0xf8af, 0x41c5, 0x84,0x21, 0x38,0xbe,0xd2,0x8f,0x46,0x73); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ec39fa88-f8af-41c5-8421-38bed28f4673") IShellView3 : public IShellView2 { virtual HRESULT STDMETHODCALLTYPE CreateViewWindow3( IShellBrowser *owner, IShellView *prev_view, SV3CVW3_FLAGS view_flags, FOLDERFLAGS mask, FOLDERFLAGS flags, FOLDERVIEWMODE mode, const SHELLVIEWID *view_id, const RECT *rect, HWND *hwnd) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellView3, 0xec39fa88, 0xf8af, 0x41c5, 0x84,0x21, 0x38,0xbe,0xd2,0x8f,0x46,0x73) #endif #else typedef struct IShellView3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellView3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellView3 *This); ULONG (STDMETHODCALLTYPE *Release)( IShellView3 *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IShellView3 *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IShellView3 *This, BOOL fEnterMode); /*** IShellView methods ***/ HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( IShellView3 *This, MSG *pmsg); HRESULT (STDMETHODCALLTYPE *EnableModeless)( IShellView3 *This, BOOL fEnable); HRESULT (STDMETHODCALLTYPE *UIActivate)( IShellView3 *This, UINT uState); HRESULT (STDMETHODCALLTYPE *Refresh)( IShellView3 *This); HRESULT (STDMETHODCALLTYPE *CreateViewWindow)( IShellView3 *This, IShellView *psvPrevious, LPCFOLDERSETTINGS lpfs, IShellBrowser *psb, RECT *prcView, HWND *phWnd); HRESULT (STDMETHODCALLTYPE *DestroyViewWindow)( IShellView3 *This); HRESULT (STDMETHODCALLTYPE *GetCurrentInfo)( IShellView3 *This, LPFOLDERSETTINGS lpfs); HRESULT (STDMETHODCALLTYPE *AddPropertySheetPages)( IShellView3 *This, DWORD dwReserved, LPFNSVADDPROPSHEETPAGE pfn, LPARAM lparam); HRESULT (STDMETHODCALLTYPE *SaveViewState)( IShellView3 *This); HRESULT (STDMETHODCALLTYPE *SelectItem)( IShellView3 *This, LPCITEMIDLIST pidlItem, SVSIF uFlags); HRESULT (STDMETHODCALLTYPE *GetItemObject)( IShellView3 *This, UINT uItem, REFIID riid, void **ppv); /*** IShellView2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetView)( IShellView3 *This, SHELLVIEWID *view_guid, ULONG view_type); HRESULT (STDMETHODCALLTYPE *CreateViewWindow2)( IShellView3 *This, LPSV2CVW2_PARAMS view_params); HRESULT (STDMETHODCALLTYPE *HandleRename)( IShellView3 *This, LPCITEMIDLIST new_pidl); HRESULT (STDMETHODCALLTYPE *SelectAndPositionItem)( IShellView3 *This, LPCITEMIDLIST item, UINT flags, POINT *point); /*** IShellView3 methods ***/ HRESULT (STDMETHODCALLTYPE *CreateViewWindow3)( IShellView3 *This, IShellBrowser *owner, IShellView *prev_view, SV3CVW3_FLAGS view_flags, FOLDERFLAGS mask, FOLDERFLAGS flags, FOLDERVIEWMODE mode, const SHELLVIEWID *view_id, const RECT *rect, HWND *hwnd); END_INTERFACE } IShellView3Vtbl; interface IShellView3 { CONST_VTBL IShellView3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellView3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellView3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellView3_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IShellView3_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IShellView3_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IShellView methods ***/ #define IShellView3_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) #define IShellView3_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable) #define IShellView3_UIActivate(This,uState) (This)->lpVtbl->UIActivate(This,uState) #define IShellView3_Refresh(This) (This)->lpVtbl->Refresh(This) #define IShellView3_CreateViewWindow(This,psvPrevious,lpfs,psb,prcView,phWnd) (This)->lpVtbl->CreateViewWindow(This,psvPrevious,lpfs,psb,prcView,phWnd) #define IShellView3_DestroyViewWindow(This) (This)->lpVtbl->DestroyViewWindow(This) #define IShellView3_GetCurrentInfo(This,lpfs) (This)->lpVtbl->GetCurrentInfo(This,lpfs) #define IShellView3_AddPropertySheetPages(This,dwReserved,pfn,lparam) (This)->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam) #define IShellView3_SaveViewState(This) (This)->lpVtbl->SaveViewState(This) #define IShellView3_SelectItem(This,pidlItem,uFlags) (This)->lpVtbl->SelectItem(This,pidlItem,uFlags) #define IShellView3_GetItemObject(This,uItem,riid,ppv) (This)->lpVtbl->GetItemObject(This,uItem,riid,ppv) /*** IShellView2 methods ***/ #define IShellView3_GetView(This,view_guid,view_type) (This)->lpVtbl->GetView(This,view_guid,view_type) #define IShellView3_CreateViewWindow2(This,view_params) (This)->lpVtbl->CreateViewWindow2(This,view_params) #define IShellView3_HandleRename(This,new_pidl) (This)->lpVtbl->HandleRename(This,new_pidl) #define IShellView3_SelectAndPositionItem(This,item,flags,point) (This)->lpVtbl->SelectAndPositionItem(This,item,flags,point) /*** IShellView3 methods ***/ #define IShellView3_CreateViewWindow3(This,owner,prev_view,view_flags,mask,flags,mode,view_id,rect,hwnd) (This)->lpVtbl->CreateViewWindow3(This,owner,prev_view,view_flags,mask,flags,mode,view_id,rect,hwnd) #else /*** IUnknown methods ***/ static inline HRESULT IShellView3_QueryInterface(IShellView3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellView3_AddRef(IShellView3* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellView3_Release(IShellView3* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static inline HRESULT IShellView3_GetWindow(IShellView3* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static inline HRESULT IShellView3_ContextSensitiveHelp(IShellView3* This,BOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IShellView methods ***/ static inline HRESULT IShellView3_TranslateAccelerator(IShellView3* This,MSG *pmsg) { return This->lpVtbl->TranslateAccelerator(This,pmsg); } static inline HRESULT IShellView3_EnableModeless(IShellView3* This,BOOL fEnable) { return This->lpVtbl->EnableModeless(This,fEnable); } static inline HRESULT IShellView3_UIActivate(IShellView3* This,UINT uState) { return This->lpVtbl->UIActivate(This,uState); } static inline HRESULT IShellView3_Refresh(IShellView3* This) { return This->lpVtbl->Refresh(This); } static inline HRESULT IShellView3_CreateViewWindow(IShellView3* This,IShellView *psvPrevious,LPCFOLDERSETTINGS lpfs,IShellBrowser *psb,RECT *prcView,HWND *phWnd) { return This->lpVtbl->CreateViewWindow(This,psvPrevious,lpfs,psb,prcView,phWnd); } static inline HRESULT IShellView3_DestroyViewWindow(IShellView3* This) { return This->lpVtbl->DestroyViewWindow(This); } static inline HRESULT IShellView3_GetCurrentInfo(IShellView3* This,LPFOLDERSETTINGS lpfs) { return This->lpVtbl->GetCurrentInfo(This,lpfs); } static inline HRESULT IShellView3_AddPropertySheetPages(IShellView3* This,DWORD dwReserved,LPFNSVADDPROPSHEETPAGE pfn,LPARAM lparam) { return This->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam); } static inline HRESULT IShellView3_SaveViewState(IShellView3* This) { return This->lpVtbl->SaveViewState(This); } static inline HRESULT IShellView3_SelectItem(IShellView3* This,LPCITEMIDLIST pidlItem,SVSIF uFlags) { return This->lpVtbl->SelectItem(This,pidlItem,uFlags); } static inline HRESULT IShellView3_GetItemObject(IShellView3* This,UINT uItem,REFIID riid,void **ppv) { return This->lpVtbl->GetItemObject(This,uItem,riid,ppv); } /*** IShellView2 methods ***/ static inline HRESULT IShellView3_GetView(IShellView3* This,SHELLVIEWID *view_guid,ULONG view_type) { return This->lpVtbl->GetView(This,view_guid,view_type); } static inline HRESULT IShellView3_CreateViewWindow2(IShellView3* This,LPSV2CVW2_PARAMS view_params) { return This->lpVtbl->CreateViewWindow2(This,view_params); } static inline HRESULT IShellView3_HandleRename(IShellView3* This,LPCITEMIDLIST new_pidl) { return This->lpVtbl->HandleRename(This,new_pidl); } static inline HRESULT IShellView3_SelectAndPositionItem(IShellView3* This,LPCITEMIDLIST item,UINT flags,POINT *point) { return This->lpVtbl->SelectAndPositionItem(This,item,flags,point); } /*** IShellView3 methods ***/ static inline HRESULT IShellView3_CreateViewWindow3(IShellView3* This,IShellBrowser *owner,IShellView *prev_view,SV3CVW3_FLAGS view_flags,FOLDERFLAGS mask,FOLDERFLAGS flags,FOLDERVIEWMODE mode,const SHELLVIEWID *view_id,const RECT *rect,HWND *hwnd) { return This->lpVtbl->CreateViewWindow3(This,owner,prev_view,view_flags,mask,flags,mode,view_id,rect,hwnd); } #endif #endif #endif #endif /* __IShellView3_INTERFACE_DEFINED__ */ /***************************************************************************** * IFolderView interface */ #ifndef __IFolderView_INTERFACE_DEFINED__ #define __IFolderView_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFolderView, 0xcde725b0, 0xccc9, 0x4519, 0x91,0x7e, 0x32,0x5d,0x72,0xfa,0xb4,0xce); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("cde725b0-ccc9-4519-917e-325d72fab4ce") IFolderView : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetCurrentViewMode( UINT *mode) = 0; virtual HRESULT STDMETHODCALLTYPE SetCurrentViewMode( UINT mode) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolder( REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE Item( int index, PITEMID_CHILD *ppidl) = 0; virtual HRESULT STDMETHODCALLTYPE ItemCount( UINT flags, int *items) = 0; virtual HRESULT STDMETHODCALLTYPE Items( UINT flags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectionMarkedItem( int *item) = 0; virtual HRESULT STDMETHODCALLTYPE GetFocusedItem( int *item) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemPosition( PCUITEMID_CHILD pidl, POINT *ppt) = 0; virtual HRESULT STDMETHODCALLTYPE GetSpacing( POINT *pt) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultSpacing( POINT *pt) = 0; virtual HRESULT STDMETHODCALLTYPE GetAutoArrange( ) = 0; virtual HRESULT STDMETHODCALLTYPE SelectItem( int item, DWORD flags) = 0; virtual HRESULT STDMETHODCALLTYPE SelectAndPositionItems( UINT cidl, PCUITEMID_CHILD_ARRAY apidl, POINT *apt, DWORD flags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFolderView, 0xcde725b0, 0xccc9, 0x4519, 0x91,0x7e, 0x32,0x5d,0x72,0xfa,0xb4,0xce) #endif #else typedef struct IFolderViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFolderView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFolderView *This); ULONG (STDMETHODCALLTYPE *Release)( IFolderView *This); /*** IFolderView methods ***/ HRESULT (STDMETHODCALLTYPE *GetCurrentViewMode)( IFolderView *This, UINT *mode); HRESULT (STDMETHODCALLTYPE *SetCurrentViewMode)( IFolderView *This, UINT mode); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFolderView *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *Item)( IFolderView *This, int index, PITEMID_CHILD *ppidl); HRESULT (STDMETHODCALLTYPE *ItemCount)( IFolderView *This, UINT flags, int *items); HRESULT (STDMETHODCALLTYPE *Items)( IFolderView *This, UINT flags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetSelectionMarkedItem)( IFolderView *This, int *item); HRESULT (STDMETHODCALLTYPE *GetFocusedItem)( IFolderView *This, int *item); HRESULT (STDMETHODCALLTYPE *GetItemPosition)( IFolderView *This, PCUITEMID_CHILD pidl, POINT *ppt); HRESULT (STDMETHODCALLTYPE *GetSpacing)( IFolderView *This, POINT *pt); HRESULT (STDMETHODCALLTYPE *GetDefaultSpacing)( IFolderView *This, POINT *pt); HRESULT (STDMETHODCALLTYPE *GetAutoArrange)( IFolderView *This); HRESULT (STDMETHODCALLTYPE *SelectItem)( IFolderView *This, int item, DWORD flags); HRESULT (STDMETHODCALLTYPE *SelectAndPositionItems)( IFolderView *This, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, POINT *apt, DWORD flags); END_INTERFACE } IFolderViewVtbl; interface IFolderView { CONST_VTBL IFolderViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFolderView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFolderView_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFolderView_Release(This) (This)->lpVtbl->Release(This) /*** IFolderView methods ***/ #define IFolderView_GetCurrentViewMode(This,mode) (This)->lpVtbl->GetCurrentViewMode(This,mode) #define IFolderView_SetCurrentViewMode(This,mode) (This)->lpVtbl->SetCurrentViewMode(This,mode) #define IFolderView_GetFolder(This,riid,ppv) (This)->lpVtbl->GetFolder(This,riid,ppv) #define IFolderView_Item(This,index,ppidl) (This)->lpVtbl->Item(This,index,ppidl) #define IFolderView_ItemCount(This,flags,items) (This)->lpVtbl->ItemCount(This,flags,items) #define IFolderView_Items(This,flags,riid,ppv) (This)->lpVtbl->Items(This,flags,riid,ppv) #define IFolderView_GetSelectionMarkedItem(This,item) (This)->lpVtbl->GetSelectionMarkedItem(This,item) #define IFolderView_GetFocusedItem(This,item) (This)->lpVtbl->GetFocusedItem(This,item) #define IFolderView_GetItemPosition(This,pidl,ppt) (This)->lpVtbl->GetItemPosition(This,pidl,ppt) #define IFolderView_GetSpacing(This,pt) (This)->lpVtbl->GetSpacing(This,pt) #define IFolderView_GetDefaultSpacing(This,pt) (This)->lpVtbl->GetDefaultSpacing(This,pt) #define IFolderView_GetAutoArrange(This) (This)->lpVtbl->GetAutoArrange(This) #define IFolderView_SelectItem(This,item,flags) (This)->lpVtbl->SelectItem(This,item,flags) #define IFolderView_SelectAndPositionItems(This,cidl,apidl,apt,flags) (This)->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,flags) #else /*** IUnknown methods ***/ static inline HRESULT IFolderView_QueryInterface(IFolderView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFolderView_AddRef(IFolderView* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFolderView_Release(IFolderView* This) { return This->lpVtbl->Release(This); } /*** IFolderView methods ***/ static inline HRESULT IFolderView_GetCurrentViewMode(IFolderView* This,UINT *mode) { return This->lpVtbl->GetCurrentViewMode(This,mode); } static inline HRESULT IFolderView_SetCurrentViewMode(IFolderView* This,UINT mode) { return This->lpVtbl->SetCurrentViewMode(This,mode); } static inline HRESULT IFolderView_GetFolder(IFolderView* This,REFIID riid,void **ppv) { return This->lpVtbl->GetFolder(This,riid,ppv); } static inline HRESULT IFolderView_Item(IFolderView* This,int index,PITEMID_CHILD *ppidl) { return This->lpVtbl->Item(This,index,ppidl); } static inline HRESULT IFolderView_ItemCount(IFolderView* This,UINT flags,int *items) { return This->lpVtbl->ItemCount(This,flags,items); } static inline HRESULT IFolderView_Items(IFolderView* This,UINT flags,REFIID riid,void **ppv) { return This->lpVtbl->Items(This,flags,riid,ppv); } static inline HRESULT IFolderView_GetSelectionMarkedItem(IFolderView* This,int *item) { return This->lpVtbl->GetSelectionMarkedItem(This,item); } static inline HRESULT IFolderView_GetFocusedItem(IFolderView* This,int *item) { return This->lpVtbl->GetFocusedItem(This,item); } static inline HRESULT IFolderView_GetItemPosition(IFolderView* This,PCUITEMID_CHILD pidl,POINT *ppt) { return This->lpVtbl->GetItemPosition(This,pidl,ppt); } static inline HRESULT IFolderView_GetSpacing(IFolderView* This,POINT *pt) { return This->lpVtbl->GetSpacing(This,pt); } static inline HRESULT IFolderView_GetDefaultSpacing(IFolderView* This,POINT *pt) { return This->lpVtbl->GetDefaultSpacing(This,pt); } static inline HRESULT IFolderView_GetAutoArrange(IFolderView* This) { return This->lpVtbl->GetAutoArrange(This); } static inline HRESULT IFolderView_SelectItem(IFolderView* This,int item,DWORD flags) { return This->lpVtbl->SelectItem(This,item,flags); } static inline HRESULT IFolderView_SelectAndPositionItems(IFolderView* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,POINT *apt,DWORD flags) { return This->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,flags); } #endif #endif #endif #endif /* __IFolderView_INTERFACE_DEFINED__ */ enum tagSORTDIRECTION { SORT_DESCENDING = -1, SORT_ASCENDING = 1 }; typedef int SORTDIRECTION; typedef struct SORTCOLUMN { PROPERTYKEY propkey; SORTDIRECTION direction; } SORTCOLUMN; typedef enum FVTEXTTYPE { FVST_EMPTYTEXT = 0 } FVTEXTTYPE; /***************************************************************************** * IFolderView2 interface */ #ifndef __IFolderView2_INTERFACE_DEFINED__ #define __IFolderView2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFolderView2, 0x1af3a467, 0x214f, 0x4298, 0x90,0x8e, 0x06,0xb0,0x3e,0x0b,0x39,0xf9); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1af3a467-214f-4298-908e-06b03e0b39f9") IFolderView2 : public IFolderView { virtual HRESULT STDMETHODCALLTYPE SetGroupBy( REFPROPERTYKEY key, BOOL ascending) = 0; virtual HRESULT STDMETHODCALLTYPE GetGroupBy( PROPERTYKEY *pkey, BOOL *ascending) = 0; virtual HRESULT STDMETHODCALLTYPE SetViewProperty( PCUITEMID_CHILD pidl, REFPROPERTYKEY propkey, REFPROPVARIANT propvar) = 0; virtual HRESULT STDMETHODCALLTYPE GetViewProperty( PCUITEMID_CHILD pidl, REFPROPERTYKEY propkey, PROPVARIANT *propvar) = 0; virtual HRESULT STDMETHODCALLTYPE SetTileViewProperties( PCUITEMID_CHILD pidl, LPCWSTR prop_list) = 0; virtual HRESULT STDMETHODCALLTYPE SetExtendedTileViewProperties( PCUITEMID_CHILD pidl, LPCWSTR prop_list) = 0; virtual HRESULT STDMETHODCALLTYPE SetText( FVTEXTTYPE type, LPCWSTR text) = 0; virtual HRESULT STDMETHODCALLTYPE SetCurrentFolderFlags( DWORD mask, DWORD flags) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentFolderFlags( DWORD *flags) = 0; virtual HRESULT STDMETHODCALLTYPE GetSortColumnCount( int *columns) = 0; virtual HRESULT STDMETHODCALLTYPE SetSortColumns( const SORTCOLUMN *columns, int count) = 0; virtual HRESULT STDMETHODCALLTYPE GetSortColumns( SORTCOLUMN *columns, int count) = 0; virtual HRESULT STDMETHODCALLTYPE GetItem( int ittem, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetVisibleItem( int start, BOOL previous, int *item) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectedItem( int start, int *item) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelection( BOOL none_implies_folder, IShellItemArray **array) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectionState( PCUITEMID_CHILD pidl, DWORD *flags) = 0; virtual HRESULT STDMETHODCALLTYPE InvokeVerbOnSelection( LPCSTR verb) = 0; virtual HRESULT STDMETHODCALLTYPE SetViewModeAndIconSize( FOLDERVIEWMODE mode, int size) = 0; virtual HRESULT STDMETHODCALLTYPE GetViewModeAndIconSize( FOLDERVIEWMODE *mode, int *size) = 0; virtual HRESULT STDMETHODCALLTYPE SetGroupSubsetCount( UINT visible_rows) = 0; virtual HRESULT STDMETHODCALLTYPE GetGroupSubsetCount( UINT *visible_rows) = 0; virtual HRESULT STDMETHODCALLTYPE SetRedraw( BOOL redraw) = 0; virtual HRESULT STDMETHODCALLTYPE IsMoveInSameFolder( ) = 0; virtual HRESULT STDMETHODCALLTYPE DoRename( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFolderView2, 0x1af3a467, 0x214f, 0x4298, 0x90,0x8e, 0x06,0xb0,0x3e,0x0b,0x39,0xf9) #endif #else typedef struct IFolderView2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFolderView2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFolderView2 *This); ULONG (STDMETHODCALLTYPE *Release)( IFolderView2 *This); /*** IFolderView methods ***/ HRESULT (STDMETHODCALLTYPE *GetCurrentViewMode)( IFolderView2 *This, UINT *mode); HRESULT (STDMETHODCALLTYPE *SetCurrentViewMode)( IFolderView2 *This, UINT mode); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFolderView2 *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *Item)( IFolderView2 *This, int index, PITEMID_CHILD *ppidl); HRESULT (STDMETHODCALLTYPE *ItemCount)( IFolderView2 *This, UINT flags, int *items); HRESULT (STDMETHODCALLTYPE *Items)( IFolderView2 *This, UINT flags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetSelectionMarkedItem)( IFolderView2 *This, int *item); HRESULT (STDMETHODCALLTYPE *GetFocusedItem)( IFolderView2 *This, int *item); HRESULT (STDMETHODCALLTYPE *GetItemPosition)( IFolderView2 *This, PCUITEMID_CHILD pidl, POINT *ppt); HRESULT (STDMETHODCALLTYPE *GetSpacing)( IFolderView2 *This, POINT *pt); HRESULT (STDMETHODCALLTYPE *GetDefaultSpacing)( IFolderView2 *This, POINT *pt); HRESULT (STDMETHODCALLTYPE *GetAutoArrange)( IFolderView2 *This); HRESULT (STDMETHODCALLTYPE *SelectItem)( IFolderView2 *This, int item, DWORD flags); HRESULT (STDMETHODCALLTYPE *SelectAndPositionItems)( IFolderView2 *This, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, POINT *apt, DWORD flags); /*** IFolderView2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetGroupBy)( IFolderView2 *This, REFPROPERTYKEY key, BOOL ascending); HRESULT (STDMETHODCALLTYPE *GetGroupBy)( IFolderView2 *This, PROPERTYKEY *pkey, BOOL *ascending); HRESULT (STDMETHODCALLTYPE *SetViewProperty)( IFolderView2 *This, PCUITEMID_CHILD pidl, REFPROPERTYKEY propkey, REFPROPVARIANT propvar); HRESULT (STDMETHODCALLTYPE *GetViewProperty)( IFolderView2 *This, PCUITEMID_CHILD pidl, REFPROPERTYKEY propkey, PROPVARIANT *propvar); HRESULT (STDMETHODCALLTYPE *SetTileViewProperties)( IFolderView2 *This, PCUITEMID_CHILD pidl, LPCWSTR prop_list); HRESULT (STDMETHODCALLTYPE *SetExtendedTileViewProperties)( IFolderView2 *This, PCUITEMID_CHILD pidl, LPCWSTR prop_list); HRESULT (STDMETHODCALLTYPE *SetText)( IFolderView2 *This, FVTEXTTYPE type, LPCWSTR text); HRESULT (STDMETHODCALLTYPE *SetCurrentFolderFlags)( IFolderView2 *This, DWORD mask, DWORD flags); HRESULT (STDMETHODCALLTYPE *GetCurrentFolderFlags)( IFolderView2 *This, DWORD *flags); HRESULT (STDMETHODCALLTYPE *GetSortColumnCount)( IFolderView2 *This, int *columns); HRESULT (STDMETHODCALLTYPE *SetSortColumns)( IFolderView2 *This, const SORTCOLUMN *columns, int count); HRESULT (STDMETHODCALLTYPE *GetSortColumns)( IFolderView2 *This, SORTCOLUMN *columns, int count); HRESULT (STDMETHODCALLTYPE *GetItem)( IFolderView2 *This, int ittem, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetVisibleItem)( IFolderView2 *This, int start, BOOL previous, int *item); HRESULT (STDMETHODCALLTYPE *GetSelectedItem)( IFolderView2 *This, int start, int *item); HRESULT (STDMETHODCALLTYPE *GetSelection)( IFolderView2 *This, BOOL none_implies_folder, IShellItemArray **array); HRESULT (STDMETHODCALLTYPE *GetSelectionState)( IFolderView2 *This, PCUITEMID_CHILD pidl, DWORD *flags); HRESULT (STDMETHODCALLTYPE *InvokeVerbOnSelection)( IFolderView2 *This, LPCSTR verb); HRESULT (STDMETHODCALLTYPE *SetViewModeAndIconSize)( IFolderView2 *This, FOLDERVIEWMODE mode, int size); HRESULT (STDMETHODCALLTYPE *GetViewModeAndIconSize)( IFolderView2 *This, FOLDERVIEWMODE *mode, int *size); HRESULT (STDMETHODCALLTYPE *SetGroupSubsetCount)( IFolderView2 *This, UINT visible_rows); HRESULT (STDMETHODCALLTYPE *GetGroupSubsetCount)( IFolderView2 *This, UINT *visible_rows); HRESULT (STDMETHODCALLTYPE *SetRedraw)( IFolderView2 *This, BOOL redraw); HRESULT (STDMETHODCALLTYPE *IsMoveInSameFolder)( IFolderView2 *This); HRESULT (STDMETHODCALLTYPE *DoRename)( IFolderView2 *This); END_INTERFACE } IFolderView2Vtbl; interface IFolderView2 { CONST_VTBL IFolderView2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFolderView2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFolderView2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFolderView2_Release(This) (This)->lpVtbl->Release(This) /*** IFolderView methods ***/ #define IFolderView2_GetCurrentViewMode(This,mode) (This)->lpVtbl->GetCurrentViewMode(This,mode) #define IFolderView2_SetCurrentViewMode(This,mode) (This)->lpVtbl->SetCurrentViewMode(This,mode) #define IFolderView2_GetFolder(This,riid,ppv) (This)->lpVtbl->GetFolder(This,riid,ppv) #define IFolderView2_Item(This,index,ppidl) (This)->lpVtbl->Item(This,index,ppidl) #define IFolderView2_ItemCount(This,flags,items) (This)->lpVtbl->ItemCount(This,flags,items) #define IFolderView2_Items(This,flags,riid,ppv) (This)->lpVtbl->Items(This,flags,riid,ppv) #define IFolderView2_GetSelectionMarkedItem(This,item) (This)->lpVtbl->GetSelectionMarkedItem(This,item) #define IFolderView2_GetFocusedItem(This,item) (This)->lpVtbl->GetFocusedItem(This,item) #define IFolderView2_GetItemPosition(This,pidl,ppt) (This)->lpVtbl->GetItemPosition(This,pidl,ppt) #define IFolderView2_GetSpacing(This,pt) (This)->lpVtbl->GetSpacing(This,pt) #define IFolderView2_GetDefaultSpacing(This,pt) (This)->lpVtbl->GetDefaultSpacing(This,pt) #define IFolderView2_GetAutoArrange(This) (This)->lpVtbl->GetAutoArrange(This) #define IFolderView2_SelectItem(This,item,flags) (This)->lpVtbl->SelectItem(This,item,flags) #define IFolderView2_SelectAndPositionItems(This,cidl,apidl,apt,flags) (This)->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,flags) /*** IFolderView2 methods ***/ #define IFolderView2_SetGroupBy(This,key,ascending) (This)->lpVtbl->SetGroupBy(This,key,ascending) #define IFolderView2_GetGroupBy(This,pkey,ascending) (This)->lpVtbl->GetGroupBy(This,pkey,ascending) #define IFolderView2_SetViewProperty(This,pidl,propkey,propvar) (This)->lpVtbl->SetViewProperty(This,pidl,propkey,propvar) #define IFolderView2_GetViewProperty(This,pidl,propkey,propvar) (This)->lpVtbl->GetViewProperty(This,pidl,propkey,propvar) #define IFolderView2_SetTileViewProperties(This,pidl,prop_list) (This)->lpVtbl->SetTileViewProperties(This,pidl,prop_list) #define IFolderView2_SetExtendedTileViewProperties(This,pidl,prop_list) (This)->lpVtbl->SetExtendedTileViewProperties(This,pidl,prop_list) #define IFolderView2_SetText(This,type,text) (This)->lpVtbl->SetText(This,type,text) #define IFolderView2_SetCurrentFolderFlags(This,mask,flags) (This)->lpVtbl->SetCurrentFolderFlags(This,mask,flags) #define IFolderView2_GetCurrentFolderFlags(This,flags) (This)->lpVtbl->GetCurrentFolderFlags(This,flags) #define IFolderView2_GetSortColumnCount(This,columns) (This)->lpVtbl->GetSortColumnCount(This,columns) #define IFolderView2_SetSortColumns(This,columns,count) (This)->lpVtbl->SetSortColumns(This,columns,count) #define IFolderView2_GetSortColumns(This,columns,count) (This)->lpVtbl->GetSortColumns(This,columns,count) #define IFolderView2_GetItem(This,ittem,riid,ppv) (This)->lpVtbl->GetItem(This,ittem,riid,ppv) #define IFolderView2_GetVisibleItem(This,start,previous,item) (This)->lpVtbl->GetVisibleItem(This,start,previous,item) #define IFolderView2_GetSelectedItem(This,start,item) (This)->lpVtbl->GetSelectedItem(This,start,item) #define IFolderView2_GetSelection(This,none_implies_folder,array) (This)->lpVtbl->GetSelection(This,none_implies_folder,array) #define IFolderView2_GetSelectionState(This,pidl,flags) (This)->lpVtbl->GetSelectionState(This,pidl,flags) #define IFolderView2_InvokeVerbOnSelection(This,verb) (This)->lpVtbl->InvokeVerbOnSelection(This,verb) #define IFolderView2_SetViewModeAndIconSize(This,mode,size) (This)->lpVtbl->SetViewModeAndIconSize(This,mode,size) #define IFolderView2_GetViewModeAndIconSize(This,mode,size) (This)->lpVtbl->GetViewModeAndIconSize(This,mode,size) #define IFolderView2_SetGroupSubsetCount(This,visible_rows) (This)->lpVtbl->SetGroupSubsetCount(This,visible_rows) #define IFolderView2_GetGroupSubsetCount(This,visible_rows) (This)->lpVtbl->GetGroupSubsetCount(This,visible_rows) #define IFolderView2_SetRedraw(This,redraw) (This)->lpVtbl->SetRedraw(This,redraw) #define IFolderView2_IsMoveInSameFolder(This) (This)->lpVtbl->IsMoveInSameFolder(This) #define IFolderView2_DoRename(This) (This)->lpVtbl->DoRename(This) #else /*** IUnknown methods ***/ static inline HRESULT IFolderView2_QueryInterface(IFolderView2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFolderView2_AddRef(IFolderView2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFolderView2_Release(IFolderView2* This) { return This->lpVtbl->Release(This); } /*** IFolderView methods ***/ static inline HRESULT IFolderView2_GetCurrentViewMode(IFolderView2* This,UINT *mode) { return This->lpVtbl->GetCurrentViewMode(This,mode); } static inline HRESULT IFolderView2_SetCurrentViewMode(IFolderView2* This,UINT mode) { return This->lpVtbl->SetCurrentViewMode(This,mode); } static inline HRESULT IFolderView2_GetFolder(IFolderView2* This,REFIID riid,void **ppv) { return This->lpVtbl->GetFolder(This,riid,ppv); } static inline HRESULT IFolderView2_Item(IFolderView2* This,int index,PITEMID_CHILD *ppidl) { return This->lpVtbl->Item(This,index,ppidl); } static inline HRESULT IFolderView2_ItemCount(IFolderView2* This,UINT flags,int *items) { return This->lpVtbl->ItemCount(This,flags,items); } static inline HRESULT IFolderView2_Items(IFolderView2* This,UINT flags,REFIID riid,void **ppv) { return This->lpVtbl->Items(This,flags,riid,ppv); } static inline HRESULT IFolderView2_GetSelectionMarkedItem(IFolderView2* This,int *item) { return This->lpVtbl->GetSelectionMarkedItem(This,item); } static inline HRESULT IFolderView2_GetFocusedItem(IFolderView2* This,int *item) { return This->lpVtbl->GetFocusedItem(This,item); } static inline HRESULT IFolderView2_GetItemPosition(IFolderView2* This,PCUITEMID_CHILD pidl,POINT *ppt) { return This->lpVtbl->GetItemPosition(This,pidl,ppt); } static inline HRESULT IFolderView2_GetSpacing(IFolderView2* This,POINT *pt) { return This->lpVtbl->GetSpacing(This,pt); } static inline HRESULT IFolderView2_GetDefaultSpacing(IFolderView2* This,POINT *pt) { return This->lpVtbl->GetDefaultSpacing(This,pt); } static inline HRESULT IFolderView2_GetAutoArrange(IFolderView2* This) { return This->lpVtbl->GetAutoArrange(This); } static inline HRESULT IFolderView2_SelectItem(IFolderView2* This,int item,DWORD flags) { return This->lpVtbl->SelectItem(This,item,flags); } static inline HRESULT IFolderView2_SelectAndPositionItems(IFolderView2* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,POINT *apt,DWORD flags) { return This->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,flags); } /*** IFolderView2 methods ***/ static inline HRESULT IFolderView2_SetGroupBy(IFolderView2* This,REFPROPERTYKEY key,BOOL ascending) { return This->lpVtbl->SetGroupBy(This,key,ascending); } static inline HRESULT IFolderView2_GetGroupBy(IFolderView2* This,PROPERTYKEY *pkey,BOOL *ascending) { return This->lpVtbl->GetGroupBy(This,pkey,ascending); } static inline HRESULT IFolderView2_SetViewProperty(IFolderView2* This,PCUITEMID_CHILD pidl,REFPROPERTYKEY propkey,REFPROPVARIANT propvar) { return This->lpVtbl->SetViewProperty(This,pidl,propkey,propvar); } static inline HRESULT IFolderView2_GetViewProperty(IFolderView2* This,PCUITEMID_CHILD pidl,REFPROPERTYKEY propkey,PROPVARIANT *propvar) { return This->lpVtbl->GetViewProperty(This,pidl,propkey,propvar); } static inline HRESULT IFolderView2_SetTileViewProperties(IFolderView2* This,PCUITEMID_CHILD pidl,LPCWSTR prop_list) { return This->lpVtbl->SetTileViewProperties(This,pidl,prop_list); } static inline HRESULT IFolderView2_SetExtendedTileViewProperties(IFolderView2* This,PCUITEMID_CHILD pidl,LPCWSTR prop_list) { return This->lpVtbl->SetExtendedTileViewProperties(This,pidl,prop_list); } static inline HRESULT IFolderView2_SetText(IFolderView2* This,FVTEXTTYPE type,LPCWSTR text) { return This->lpVtbl->SetText(This,type,text); } static inline HRESULT IFolderView2_SetCurrentFolderFlags(IFolderView2* This,DWORD mask,DWORD flags) { return This->lpVtbl->SetCurrentFolderFlags(This,mask,flags); } static inline HRESULT IFolderView2_GetCurrentFolderFlags(IFolderView2* This,DWORD *flags) { return This->lpVtbl->GetCurrentFolderFlags(This,flags); } static inline HRESULT IFolderView2_GetSortColumnCount(IFolderView2* This,int *columns) { return This->lpVtbl->GetSortColumnCount(This,columns); } static inline HRESULT IFolderView2_SetSortColumns(IFolderView2* This,const SORTCOLUMN *columns,int count) { return This->lpVtbl->SetSortColumns(This,columns,count); } static inline HRESULT IFolderView2_GetSortColumns(IFolderView2* This,SORTCOLUMN *columns,int count) { return This->lpVtbl->GetSortColumns(This,columns,count); } static inline HRESULT IFolderView2_GetItem(IFolderView2* This,int ittem,REFIID riid,void **ppv) { return This->lpVtbl->GetItem(This,ittem,riid,ppv); } static inline HRESULT IFolderView2_GetVisibleItem(IFolderView2* This,int start,BOOL previous,int *item) { return This->lpVtbl->GetVisibleItem(This,start,previous,item); } static inline HRESULT IFolderView2_GetSelectedItem(IFolderView2* This,int start,int *item) { return This->lpVtbl->GetSelectedItem(This,start,item); } static inline HRESULT IFolderView2_GetSelection(IFolderView2* This,BOOL none_implies_folder,IShellItemArray **array) { return This->lpVtbl->GetSelection(This,none_implies_folder,array); } static inline HRESULT IFolderView2_GetSelectionState(IFolderView2* This,PCUITEMID_CHILD pidl,DWORD *flags) { return This->lpVtbl->GetSelectionState(This,pidl,flags); } static inline HRESULT IFolderView2_InvokeVerbOnSelection(IFolderView2* This,LPCSTR verb) { return This->lpVtbl->InvokeVerbOnSelection(This,verb); } static inline HRESULT IFolderView2_SetViewModeAndIconSize(IFolderView2* This,FOLDERVIEWMODE mode,int size) { return This->lpVtbl->SetViewModeAndIconSize(This,mode,size); } static inline HRESULT IFolderView2_GetViewModeAndIconSize(IFolderView2* This,FOLDERVIEWMODE *mode,int *size) { return This->lpVtbl->GetViewModeAndIconSize(This,mode,size); } static inline HRESULT IFolderView2_SetGroupSubsetCount(IFolderView2* This,UINT visible_rows) { return This->lpVtbl->SetGroupSubsetCount(This,visible_rows); } static inline HRESULT IFolderView2_GetGroupSubsetCount(IFolderView2* This,UINT *visible_rows) { return This->lpVtbl->GetGroupSubsetCount(This,visible_rows); } static inline HRESULT IFolderView2_SetRedraw(IFolderView2* This,BOOL redraw) { return This->lpVtbl->SetRedraw(This,redraw); } static inline HRESULT IFolderView2_IsMoveInSameFolder(IFolderView2* This) { return This->lpVtbl->IsMoveInSameFolder(This); } static inline HRESULT IFolderView2_DoRename(IFolderView2* This) { return This->lpVtbl->DoRename(This); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IFolderView2_RemoteGetGroupBy_Proxy( IFolderView2* This, PROPERTYKEY *pkey, BOOL *ascending); void __RPC_STUB IFolderView2_RemoteGetGroupBy_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IFolderView2_GetGroupBy_Proxy( IFolderView2* This, PROPERTYKEY *pkey, BOOL *ascending); HRESULT __RPC_STUB IFolderView2_GetGroupBy_Stub( IFolderView2* This, PROPERTYKEY *pkey, BOOL *ascending); #endif /* __IFolderView2_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellBrowser interface */ #ifndef __IShellBrowser_INTERFACE_DEFINED__ #define __IShellBrowser_INTERFACE_DEFINED__ typedef IShellBrowser *LPSHELLBROWSER; #define SBSP_DEFBROWSER 0x00000000 #define SBSP_SAMEBROWSER 0x00000001 #define SBSP_NEWBROWSER 0x00000002 #define SBSP_DEFMODE 0x00000000 #define SBSP_OPENMODE 0x00000010 #define SBSP_EXPLOREMODE 0x00000020 #define SBSP_HELPMODE 0x00000040 #define SBSP_NOTRANSFERHIST 0x00000080 #define SBSP_ABSOLUTE 0x00000000 #define SBSP_RELATIVE 0x00001000 #define SBSP_PARENT 0x00002000 #define SBSP_NAVIGATEBACK 0x00004000 #define SBSP_NAVIGATEFORWARD 0x00008000 #define SBSP_ALLOW_AUTONAVIGATE 0x00010000 #define SBSP_KEEPSAMETEMPLATE 0x00020000 #define SBSP_KEEPWORDWHEELTEXT 0x00040000 #define SBSP_ACTIVATE_NOFOCUS 0x00080000 #define SBSP_CREATENOHISTORY 0x00100000 #define SBSP_PLAYNOSOUND 0x00200000 #define SBSP_CALLERUNTURUSTED 0x00800000 #define SBSP_TRUSTFIRSTDOWNLOAD 0x01000000 #define SBSP_UNTRUSTEDFORDOWNLOAD 0x02000000 #define SBSP_NOAUTOSELECT 0x04000000 #define SBSP_WRITENOHISTORY 0x08000000 #define SBSP_TRUSTEDFORACTIVEX 0x10000000 #define SBSP_FEEDNAVIGATION 0x20000000 #define SBSP_REDIRECT 0x40000000 #define SBSP_INITIATEDBYHLINKFRAME 0x80000000 #define FCW_STATUS 0x0001 #define FCW_TOOLBAR 0x0002 #define FCW_TREE 0x0003 #define FCW_INTERNETBAR 0x0006 #define FCW_PROGRESS 0x0008 #define FCT_MERGE 0x0001 #define FCT_CONFIGABLE 0x0002 #define FCT_ADDTOEND 0x0004 #if 0 typedef LPARAM LPTBBUTTONSB; #else #include typedef LPTBBUTTON LPTBBUTTONSB; #endif DEFINE_GUID(IID_IShellBrowser, 0x000214e2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e2-0000-0000-c000-000000000046") IShellBrowser : public IOleWindow { virtual HRESULT STDMETHODCALLTYPE InsertMenusSB( HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths) = 0; virtual HRESULT STDMETHODCALLTYPE SetMenuSB( HMENU hmenuShared, HOLEMENU holemenuReserved, HWND hwndActiveObject) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveMenusSB( HMENU hmenuShared) = 0; virtual HRESULT STDMETHODCALLTYPE SetStatusTextSB( LPCOLESTR pszStatusText) = 0; virtual HRESULT STDMETHODCALLTYPE EnableModelessSB( BOOL fEnable) = 0; virtual HRESULT STDMETHODCALLTYPE TranslateAcceleratorSB( MSG *pmsg, WORD wID) = 0; virtual HRESULT STDMETHODCALLTYPE BrowseObject( LPCITEMIDLIST pidl, UINT wFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetViewStateStream( DWORD grfMode, IStream **ppStrm) = 0; virtual HRESULT STDMETHODCALLTYPE GetControlWindow( UINT id, HWND *phwnd) = 0; virtual HRESULT STDMETHODCALLTYPE SendControlMsg( UINT id, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *pret) = 0; virtual HRESULT STDMETHODCALLTYPE QueryActiveShellView( IShellView **ppshv) = 0; virtual HRESULT STDMETHODCALLTYPE OnViewWindowActive( IShellView *pshv) = 0; virtual HRESULT STDMETHODCALLTYPE SetToolbarItems( LPTBBUTTONSB lpButtons, UINT nButtons, UINT uFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellBrowser, 0x000214e2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellBrowserVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellBrowser *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellBrowser *This); ULONG (STDMETHODCALLTYPE *Release)( IShellBrowser *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IShellBrowser *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IShellBrowser *This, BOOL fEnterMode); /*** IShellBrowser methods ***/ HRESULT (STDMETHODCALLTYPE *InsertMenusSB)( IShellBrowser *This, HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths); HRESULT (STDMETHODCALLTYPE *SetMenuSB)( IShellBrowser *This, HMENU hmenuShared, HOLEMENU holemenuReserved, HWND hwndActiveObject); HRESULT (STDMETHODCALLTYPE *RemoveMenusSB)( IShellBrowser *This, HMENU hmenuShared); HRESULT (STDMETHODCALLTYPE *SetStatusTextSB)( IShellBrowser *This, LPCOLESTR pszStatusText); HRESULT (STDMETHODCALLTYPE *EnableModelessSB)( IShellBrowser *This, BOOL fEnable); HRESULT (STDMETHODCALLTYPE *TranslateAcceleratorSB)( IShellBrowser *This, MSG *pmsg, WORD wID); HRESULT (STDMETHODCALLTYPE *BrowseObject)( IShellBrowser *This, LPCITEMIDLIST pidl, UINT wFlags); HRESULT (STDMETHODCALLTYPE *GetViewStateStream)( IShellBrowser *This, DWORD grfMode, IStream **ppStrm); HRESULT (STDMETHODCALLTYPE *GetControlWindow)( IShellBrowser *This, UINT id, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *SendControlMsg)( IShellBrowser *This, UINT id, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *pret); HRESULT (STDMETHODCALLTYPE *QueryActiveShellView)( IShellBrowser *This, IShellView **ppshv); HRESULT (STDMETHODCALLTYPE *OnViewWindowActive)( IShellBrowser *This, IShellView *pshv); HRESULT (STDMETHODCALLTYPE *SetToolbarItems)( IShellBrowser *This, LPTBBUTTONSB lpButtons, UINT nButtons, UINT uFlags); END_INTERFACE } IShellBrowserVtbl; interface IShellBrowser { CONST_VTBL IShellBrowserVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellBrowser_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellBrowser_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IShellBrowser_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IShellBrowser_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IShellBrowser methods ***/ #define IShellBrowser_InsertMenusSB(This,hmenuShared,lpMenuWidths) (This)->lpVtbl->InsertMenusSB(This,hmenuShared,lpMenuWidths) #define IShellBrowser_SetMenuSB(This,hmenuShared,holemenuReserved,hwndActiveObject) (This)->lpVtbl->SetMenuSB(This,hmenuShared,holemenuReserved,hwndActiveObject) #define IShellBrowser_RemoveMenusSB(This,hmenuShared) (This)->lpVtbl->RemoveMenusSB(This,hmenuShared) #define IShellBrowser_SetStatusTextSB(This,pszStatusText) (This)->lpVtbl->SetStatusTextSB(This,pszStatusText) #define IShellBrowser_EnableModelessSB(This,fEnable) (This)->lpVtbl->EnableModelessSB(This,fEnable) #define IShellBrowser_TranslateAcceleratorSB(This,pmsg,wID) (This)->lpVtbl->TranslateAcceleratorSB(This,pmsg,wID) #define IShellBrowser_BrowseObject(This,pidl,wFlags) (This)->lpVtbl->BrowseObject(This,pidl,wFlags) #define IShellBrowser_GetViewStateStream(This,grfMode,ppStrm) (This)->lpVtbl->GetViewStateStream(This,grfMode,ppStrm) #define IShellBrowser_GetControlWindow(This,id,phwnd) (This)->lpVtbl->GetControlWindow(This,id,phwnd) #define IShellBrowser_SendControlMsg(This,id,uMsg,wParam,lParam,pret) (This)->lpVtbl->SendControlMsg(This,id,uMsg,wParam,lParam,pret) #define IShellBrowser_QueryActiveShellView(This,ppshv) (This)->lpVtbl->QueryActiveShellView(This,ppshv) #define IShellBrowser_OnViewWindowActive(This,pshv) (This)->lpVtbl->OnViewWindowActive(This,pshv) #define IShellBrowser_SetToolbarItems(This,lpButtons,nButtons,uFlags) (This)->lpVtbl->SetToolbarItems(This,lpButtons,nButtons,uFlags) #else /*** IUnknown methods ***/ static inline HRESULT IShellBrowser_QueryInterface(IShellBrowser* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellBrowser_AddRef(IShellBrowser* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellBrowser_Release(IShellBrowser* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static inline HRESULT IShellBrowser_GetWindow(IShellBrowser* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static inline HRESULT IShellBrowser_ContextSensitiveHelp(IShellBrowser* This,BOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IShellBrowser methods ***/ static inline HRESULT IShellBrowser_InsertMenusSB(IShellBrowser* This,HMENU hmenuShared,LPOLEMENUGROUPWIDTHS lpMenuWidths) { return This->lpVtbl->InsertMenusSB(This,hmenuShared,lpMenuWidths); } static inline HRESULT IShellBrowser_SetMenuSB(IShellBrowser* This,HMENU hmenuShared,HOLEMENU holemenuReserved,HWND hwndActiveObject) { return This->lpVtbl->SetMenuSB(This,hmenuShared,holemenuReserved,hwndActiveObject); } static inline HRESULT IShellBrowser_RemoveMenusSB(IShellBrowser* This,HMENU hmenuShared) { return This->lpVtbl->RemoveMenusSB(This,hmenuShared); } static inline HRESULT IShellBrowser_SetStatusTextSB(IShellBrowser* This,LPCOLESTR pszStatusText) { return This->lpVtbl->SetStatusTextSB(This,pszStatusText); } static inline HRESULT IShellBrowser_EnableModelessSB(IShellBrowser* This,BOOL fEnable) { return This->lpVtbl->EnableModelessSB(This,fEnable); } static inline HRESULT IShellBrowser_TranslateAcceleratorSB(IShellBrowser* This,MSG *pmsg,WORD wID) { return This->lpVtbl->TranslateAcceleratorSB(This,pmsg,wID); } static inline HRESULT IShellBrowser_BrowseObject(IShellBrowser* This,LPCITEMIDLIST pidl,UINT wFlags) { return This->lpVtbl->BrowseObject(This,pidl,wFlags); } static inline HRESULT IShellBrowser_GetViewStateStream(IShellBrowser* This,DWORD grfMode,IStream **ppStrm) { return This->lpVtbl->GetViewStateStream(This,grfMode,ppStrm); } static inline HRESULT IShellBrowser_GetControlWindow(IShellBrowser* This,UINT id,HWND *phwnd) { return This->lpVtbl->GetControlWindow(This,id,phwnd); } static inline HRESULT IShellBrowser_SendControlMsg(IShellBrowser* This,UINT id,UINT uMsg,WPARAM wParam,LPARAM lParam,LRESULT *pret) { return This->lpVtbl->SendControlMsg(This,id,uMsg,wParam,lParam,pret); } static inline HRESULT IShellBrowser_QueryActiveShellView(IShellBrowser* This,IShellView **ppshv) { return This->lpVtbl->QueryActiveShellView(This,ppshv); } static inline HRESULT IShellBrowser_OnViewWindowActive(IShellBrowser* This,IShellView *pshv) { return This->lpVtbl->OnViewWindowActive(This,pshv); } static inline HRESULT IShellBrowser_SetToolbarItems(IShellBrowser* This,LPTBBUTTONSB lpButtons,UINT nButtons,UINT uFlags) { return This->lpVtbl->SetToolbarItems(This,lpButtons,nButtons,uFlags); } #endif #endif #endif #endif /* __IShellBrowser_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellLinkA interface */ #ifndef __IShellLinkA_INTERFACE_DEFINED__ #define __IShellLinkA_INTERFACE_DEFINED__ typedef enum SLR_FLAGS { SLR_NO_UI = 0x1, SLR_ANY_MATCH = 0x2, SLR_UPDATE = 0x4, SLR_NOUPDATE = 0x8, SLR_NOSEARCH = 0x10, SLR_NOTRACK = 0x20, SLR_NOLINKINFO = 0x40, SLR_INVOKE_MSI = 0x80, SLR_NO_UI_WITH_MSG_PUMP = 0x101, SLR_OFFER_DELETE_WITHOUT_FILE = 0x200, SLR_KNOWNFOLDER = 0x400, SLR_MACHINE_IN_LOCAL_TARGET = 0x800, SLR_UPDATE_MACHINE_AND_SID = 0x1000, SLR_NO_OBJECT_ID = 0x2000 } SLR_FLAGS; typedef enum SLGP_FLAGS { SLGP_SHORTPATH = 0x1, SLGP_UNCPRIORITY = 0x2, SLGP_RAWPATH = 0x4, SLGP_RELATIVEPRIORITY = 0x8 } SLGP_FLAGS; DEFINE_GUID(IID_IShellLinkA, 0x000214ee, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214ee-0000-0000-c000-000000000046") IShellLinkA : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPath( LPSTR pszFile, int cch, WIN32_FIND_DATAA *pfd, DWORD fFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDList( LPITEMIDLIST *ppidl) = 0; virtual HRESULT STDMETHODCALLTYPE SetIDList( LPCITEMIDLIST pidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetDescription( LPSTR pszName, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetDescription( LPCSTR pszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetWorkingDirectory( LPSTR pszDir, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetWorkingDirectory( LPCSTR pszDir) = 0; virtual HRESULT STDMETHODCALLTYPE GetArguments( LPSTR pszArgs, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetArguments( LPCSTR pszArgs) = 0; virtual HRESULT STDMETHODCALLTYPE GetHotkey( WORD *pwHotkey) = 0; virtual HRESULT STDMETHODCALLTYPE SetHotkey( WORD wHotkey) = 0; virtual HRESULT STDMETHODCALLTYPE GetShowCmd( int *piShowCmd) = 0; virtual HRESULT STDMETHODCALLTYPE SetShowCmd( int iShowCmd) = 0; virtual HRESULT STDMETHODCALLTYPE GetIconLocation( LPSTR pszIconPath, int cch, int *piIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetIconLocation( LPCSTR pszIconPath, int iIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetRelativePath( LPCSTR pszPathRel, DWORD dwReserved) = 0; virtual HRESULT STDMETHODCALLTYPE Resolve( HWND hwnd, DWORD fFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetPath( LPCSTR pszFile) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellLinkA, 0x000214ee, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellLinkAVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellLinkA *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellLinkA *This); ULONG (STDMETHODCALLTYPE *Release)( IShellLinkA *This); /*** IShellLinkA methods ***/ HRESULT (STDMETHODCALLTYPE *GetPath)( IShellLinkA *This, LPSTR pszFile, int cch, WIN32_FIND_DATAA *pfd, DWORD fFlags); HRESULT (STDMETHODCALLTYPE *GetIDList)( IShellLinkA *This, LPITEMIDLIST *ppidl); HRESULT (STDMETHODCALLTYPE *SetIDList)( IShellLinkA *This, LPCITEMIDLIST pidl); HRESULT (STDMETHODCALLTYPE *GetDescription)( IShellLinkA *This, LPSTR pszName, int cch); HRESULT (STDMETHODCALLTYPE *SetDescription)( IShellLinkA *This, LPCSTR pszName); HRESULT (STDMETHODCALLTYPE *GetWorkingDirectory)( IShellLinkA *This, LPSTR pszDir, int cch); HRESULT (STDMETHODCALLTYPE *SetWorkingDirectory)( IShellLinkA *This, LPCSTR pszDir); HRESULT (STDMETHODCALLTYPE *GetArguments)( IShellLinkA *This, LPSTR pszArgs, int cch); HRESULT (STDMETHODCALLTYPE *SetArguments)( IShellLinkA *This, LPCSTR pszArgs); HRESULT (STDMETHODCALLTYPE *GetHotkey)( IShellLinkA *This, WORD *pwHotkey); HRESULT (STDMETHODCALLTYPE *SetHotkey)( IShellLinkA *This, WORD wHotkey); HRESULT (STDMETHODCALLTYPE *GetShowCmd)( IShellLinkA *This, int *piShowCmd); HRESULT (STDMETHODCALLTYPE *SetShowCmd)( IShellLinkA *This, int iShowCmd); HRESULT (STDMETHODCALLTYPE *GetIconLocation)( IShellLinkA *This, LPSTR pszIconPath, int cch, int *piIcon); HRESULT (STDMETHODCALLTYPE *SetIconLocation)( IShellLinkA *This, LPCSTR pszIconPath, int iIcon); HRESULT (STDMETHODCALLTYPE *SetRelativePath)( IShellLinkA *This, LPCSTR pszPathRel, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *Resolve)( IShellLinkA *This, HWND hwnd, DWORD fFlags); HRESULT (STDMETHODCALLTYPE *SetPath)( IShellLinkA *This, LPCSTR pszFile); END_INTERFACE } IShellLinkAVtbl; interface IShellLinkA { CONST_VTBL IShellLinkAVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellLinkA_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellLinkA_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellLinkA_Release(This) (This)->lpVtbl->Release(This) /*** IShellLinkA methods ***/ #define IShellLinkA_GetPath(This,pszFile,cch,pfd,fFlags) (This)->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags) #define IShellLinkA_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) #define IShellLinkA_SetIDList(This,pidl) (This)->lpVtbl->SetIDList(This,pidl) #define IShellLinkA_GetDescription(This,pszName,cch) (This)->lpVtbl->GetDescription(This,pszName,cch) #define IShellLinkA_SetDescription(This,pszName) (This)->lpVtbl->SetDescription(This,pszName) #define IShellLinkA_GetWorkingDirectory(This,pszDir,cch) (This)->lpVtbl->GetWorkingDirectory(This,pszDir,cch) #define IShellLinkA_SetWorkingDirectory(This,pszDir) (This)->lpVtbl->SetWorkingDirectory(This,pszDir) #define IShellLinkA_GetArguments(This,pszArgs,cch) (This)->lpVtbl->GetArguments(This,pszArgs,cch) #define IShellLinkA_SetArguments(This,pszArgs) (This)->lpVtbl->SetArguments(This,pszArgs) #define IShellLinkA_GetHotkey(This,pwHotkey) (This)->lpVtbl->GetHotkey(This,pwHotkey) #define IShellLinkA_SetHotkey(This,wHotkey) (This)->lpVtbl->SetHotkey(This,wHotkey) #define IShellLinkA_GetShowCmd(This,piShowCmd) (This)->lpVtbl->GetShowCmd(This,piShowCmd) #define IShellLinkA_SetShowCmd(This,iShowCmd) (This)->lpVtbl->SetShowCmd(This,iShowCmd) #define IShellLinkA_GetIconLocation(This,pszIconPath,cch,piIcon) (This)->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon) #define IShellLinkA_SetIconLocation(This,pszIconPath,iIcon) (This)->lpVtbl->SetIconLocation(This,pszIconPath,iIcon) #define IShellLinkA_SetRelativePath(This,pszPathRel,dwReserved) (This)->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved) #define IShellLinkA_Resolve(This,hwnd,fFlags) (This)->lpVtbl->Resolve(This,hwnd,fFlags) #define IShellLinkA_SetPath(This,pszFile) (This)->lpVtbl->SetPath(This,pszFile) #else /*** IUnknown methods ***/ static inline HRESULT IShellLinkA_QueryInterface(IShellLinkA* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellLinkA_AddRef(IShellLinkA* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellLinkA_Release(IShellLinkA* This) { return This->lpVtbl->Release(This); } /*** IShellLinkA methods ***/ static inline HRESULT IShellLinkA_GetPath(IShellLinkA* This,LPSTR pszFile,int cch,WIN32_FIND_DATAA *pfd,DWORD fFlags) { return This->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags); } static inline HRESULT IShellLinkA_GetIDList(IShellLinkA* This,LPITEMIDLIST *ppidl) { return This->lpVtbl->GetIDList(This,ppidl); } static inline HRESULT IShellLinkA_SetIDList(IShellLinkA* This,LPCITEMIDLIST pidl) { return This->lpVtbl->SetIDList(This,pidl); } static inline HRESULT IShellLinkA_GetDescription(IShellLinkA* This,LPSTR pszName,int cch) { return This->lpVtbl->GetDescription(This,pszName,cch); } static inline HRESULT IShellLinkA_SetDescription(IShellLinkA* This,LPCSTR pszName) { return This->lpVtbl->SetDescription(This,pszName); } static inline HRESULT IShellLinkA_GetWorkingDirectory(IShellLinkA* This,LPSTR pszDir,int cch) { return This->lpVtbl->GetWorkingDirectory(This,pszDir,cch); } static inline HRESULT IShellLinkA_SetWorkingDirectory(IShellLinkA* This,LPCSTR pszDir) { return This->lpVtbl->SetWorkingDirectory(This,pszDir); } static inline HRESULT IShellLinkA_GetArguments(IShellLinkA* This,LPSTR pszArgs,int cch) { return This->lpVtbl->GetArguments(This,pszArgs,cch); } static inline HRESULT IShellLinkA_SetArguments(IShellLinkA* This,LPCSTR pszArgs) { return This->lpVtbl->SetArguments(This,pszArgs); } static inline HRESULT IShellLinkA_GetHotkey(IShellLinkA* This,WORD *pwHotkey) { return This->lpVtbl->GetHotkey(This,pwHotkey); } static inline HRESULT IShellLinkA_SetHotkey(IShellLinkA* This,WORD wHotkey) { return This->lpVtbl->SetHotkey(This,wHotkey); } static inline HRESULT IShellLinkA_GetShowCmd(IShellLinkA* This,int *piShowCmd) { return This->lpVtbl->GetShowCmd(This,piShowCmd); } static inline HRESULT IShellLinkA_SetShowCmd(IShellLinkA* This,int iShowCmd) { return This->lpVtbl->SetShowCmd(This,iShowCmd); } static inline HRESULT IShellLinkA_GetIconLocation(IShellLinkA* This,LPSTR pszIconPath,int cch,int *piIcon) { return This->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon); } static inline HRESULT IShellLinkA_SetIconLocation(IShellLinkA* This,LPCSTR pszIconPath,int iIcon) { return This->lpVtbl->SetIconLocation(This,pszIconPath,iIcon); } static inline HRESULT IShellLinkA_SetRelativePath(IShellLinkA* This,LPCSTR pszPathRel,DWORD dwReserved) { return This->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved); } static inline HRESULT IShellLinkA_Resolve(IShellLinkA* This,HWND hwnd,DWORD fFlags) { return This->lpVtbl->Resolve(This,hwnd,fFlags); } static inline HRESULT IShellLinkA_SetPath(IShellLinkA* This,LPCSTR pszFile) { return This->lpVtbl->SetPath(This,pszFile); } #endif #endif #endif #endif /* __IShellLinkA_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellLinkW interface */ #ifndef __IShellLinkW_INTERFACE_DEFINED__ #define __IShellLinkW_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellLinkW, 0x000214f9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214f9-0000-0000-c000-000000000046") IShellLinkW : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPath( LPWSTR pszFile, int cch, WIN32_FIND_DATAW *pfd, DWORD fFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDList( LPITEMIDLIST *ppidl) = 0; virtual HRESULT STDMETHODCALLTYPE SetIDList( LPCITEMIDLIST pidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetDescription( LPWSTR pszName, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetDescription( LPCWSTR pszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetWorkingDirectory( LPWSTR pszDir, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetWorkingDirectory( LPCWSTR pszDir) = 0; virtual HRESULT STDMETHODCALLTYPE GetArguments( LPWSTR pszArgs, int cch) = 0; virtual HRESULT STDMETHODCALLTYPE SetArguments( LPCWSTR pszArgs) = 0; virtual HRESULT STDMETHODCALLTYPE GetHotkey( WORD *pwHotkey) = 0; virtual HRESULT STDMETHODCALLTYPE SetHotkey( WORD wHotkey) = 0; virtual HRESULT STDMETHODCALLTYPE GetShowCmd( int *piShowCmd) = 0; virtual HRESULT STDMETHODCALLTYPE SetShowCmd( int iShowCmd) = 0; virtual HRESULT STDMETHODCALLTYPE GetIconLocation( LPWSTR pszIconPath, int cch, int *piIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetIconLocation( LPCWSTR pszIconPath, int iIcon) = 0; virtual HRESULT STDMETHODCALLTYPE SetRelativePath( LPCWSTR pszPathRel, DWORD dwReserved) = 0; virtual HRESULT STDMETHODCALLTYPE Resolve( HWND hwnd, DWORD fFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetPath( LPCWSTR pszFile) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellLinkW, 0x000214f9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellLinkWVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellLinkW *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellLinkW *This); ULONG (STDMETHODCALLTYPE *Release)( IShellLinkW *This); /*** IShellLinkW methods ***/ HRESULT (STDMETHODCALLTYPE *GetPath)( IShellLinkW *This, LPWSTR pszFile, int cch, WIN32_FIND_DATAW *pfd, DWORD fFlags); HRESULT (STDMETHODCALLTYPE *GetIDList)( IShellLinkW *This, LPITEMIDLIST *ppidl); HRESULT (STDMETHODCALLTYPE *SetIDList)( IShellLinkW *This, LPCITEMIDLIST pidl); HRESULT (STDMETHODCALLTYPE *GetDescription)( IShellLinkW *This, LPWSTR pszName, int cch); HRESULT (STDMETHODCALLTYPE *SetDescription)( IShellLinkW *This, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *GetWorkingDirectory)( IShellLinkW *This, LPWSTR pszDir, int cch); HRESULT (STDMETHODCALLTYPE *SetWorkingDirectory)( IShellLinkW *This, LPCWSTR pszDir); HRESULT (STDMETHODCALLTYPE *GetArguments)( IShellLinkW *This, LPWSTR pszArgs, int cch); HRESULT (STDMETHODCALLTYPE *SetArguments)( IShellLinkW *This, LPCWSTR pszArgs); HRESULT (STDMETHODCALLTYPE *GetHotkey)( IShellLinkW *This, WORD *pwHotkey); HRESULT (STDMETHODCALLTYPE *SetHotkey)( IShellLinkW *This, WORD wHotkey); HRESULT (STDMETHODCALLTYPE *GetShowCmd)( IShellLinkW *This, int *piShowCmd); HRESULT (STDMETHODCALLTYPE *SetShowCmd)( IShellLinkW *This, int iShowCmd); HRESULT (STDMETHODCALLTYPE *GetIconLocation)( IShellLinkW *This, LPWSTR pszIconPath, int cch, int *piIcon); HRESULT (STDMETHODCALLTYPE *SetIconLocation)( IShellLinkW *This, LPCWSTR pszIconPath, int iIcon); HRESULT (STDMETHODCALLTYPE *SetRelativePath)( IShellLinkW *This, LPCWSTR pszPathRel, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *Resolve)( IShellLinkW *This, HWND hwnd, DWORD fFlags); HRESULT (STDMETHODCALLTYPE *SetPath)( IShellLinkW *This, LPCWSTR pszFile); END_INTERFACE } IShellLinkWVtbl; interface IShellLinkW { CONST_VTBL IShellLinkWVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellLinkW_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellLinkW_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellLinkW_Release(This) (This)->lpVtbl->Release(This) /*** IShellLinkW methods ***/ #define IShellLinkW_GetPath(This,pszFile,cch,pfd,fFlags) (This)->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags) #define IShellLinkW_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) #define IShellLinkW_SetIDList(This,pidl) (This)->lpVtbl->SetIDList(This,pidl) #define IShellLinkW_GetDescription(This,pszName,cch) (This)->lpVtbl->GetDescription(This,pszName,cch) #define IShellLinkW_SetDescription(This,pszName) (This)->lpVtbl->SetDescription(This,pszName) #define IShellLinkW_GetWorkingDirectory(This,pszDir,cch) (This)->lpVtbl->GetWorkingDirectory(This,pszDir,cch) #define IShellLinkW_SetWorkingDirectory(This,pszDir) (This)->lpVtbl->SetWorkingDirectory(This,pszDir) #define IShellLinkW_GetArguments(This,pszArgs,cch) (This)->lpVtbl->GetArguments(This,pszArgs,cch) #define IShellLinkW_SetArguments(This,pszArgs) (This)->lpVtbl->SetArguments(This,pszArgs) #define IShellLinkW_GetHotkey(This,pwHotkey) (This)->lpVtbl->GetHotkey(This,pwHotkey) #define IShellLinkW_SetHotkey(This,wHotkey) (This)->lpVtbl->SetHotkey(This,wHotkey) #define IShellLinkW_GetShowCmd(This,piShowCmd) (This)->lpVtbl->GetShowCmd(This,piShowCmd) #define IShellLinkW_SetShowCmd(This,iShowCmd) (This)->lpVtbl->SetShowCmd(This,iShowCmd) #define IShellLinkW_GetIconLocation(This,pszIconPath,cch,piIcon) (This)->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon) #define IShellLinkW_SetIconLocation(This,pszIconPath,iIcon) (This)->lpVtbl->SetIconLocation(This,pszIconPath,iIcon) #define IShellLinkW_SetRelativePath(This,pszPathRel,dwReserved) (This)->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved) #define IShellLinkW_Resolve(This,hwnd,fFlags) (This)->lpVtbl->Resolve(This,hwnd,fFlags) #define IShellLinkW_SetPath(This,pszFile) (This)->lpVtbl->SetPath(This,pszFile) #else /*** IUnknown methods ***/ static inline HRESULT IShellLinkW_QueryInterface(IShellLinkW* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellLinkW_AddRef(IShellLinkW* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellLinkW_Release(IShellLinkW* This) { return This->lpVtbl->Release(This); } /*** IShellLinkW methods ***/ static inline HRESULT IShellLinkW_GetPath(IShellLinkW* This,LPWSTR pszFile,int cch,WIN32_FIND_DATAW *pfd,DWORD fFlags) { return This->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags); } static inline HRESULT IShellLinkW_GetIDList(IShellLinkW* This,LPITEMIDLIST *ppidl) { return This->lpVtbl->GetIDList(This,ppidl); } static inline HRESULT IShellLinkW_SetIDList(IShellLinkW* This,LPCITEMIDLIST pidl) { return This->lpVtbl->SetIDList(This,pidl); } static inline HRESULT IShellLinkW_GetDescription(IShellLinkW* This,LPWSTR pszName,int cch) { return This->lpVtbl->GetDescription(This,pszName,cch); } static inline HRESULT IShellLinkW_SetDescription(IShellLinkW* This,LPCWSTR pszName) { return This->lpVtbl->SetDescription(This,pszName); } static inline HRESULT IShellLinkW_GetWorkingDirectory(IShellLinkW* This,LPWSTR pszDir,int cch) { return This->lpVtbl->GetWorkingDirectory(This,pszDir,cch); } static inline HRESULT IShellLinkW_SetWorkingDirectory(IShellLinkW* This,LPCWSTR pszDir) { return This->lpVtbl->SetWorkingDirectory(This,pszDir); } static inline HRESULT IShellLinkW_GetArguments(IShellLinkW* This,LPWSTR pszArgs,int cch) { return This->lpVtbl->GetArguments(This,pszArgs,cch); } static inline HRESULT IShellLinkW_SetArguments(IShellLinkW* This,LPCWSTR pszArgs) { return This->lpVtbl->SetArguments(This,pszArgs); } static inline HRESULT IShellLinkW_GetHotkey(IShellLinkW* This,WORD *pwHotkey) { return This->lpVtbl->GetHotkey(This,pwHotkey); } static inline HRESULT IShellLinkW_SetHotkey(IShellLinkW* This,WORD wHotkey) { return This->lpVtbl->SetHotkey(This,wHotkey); } static inline HRESULT IShellLinkW_GetShowCmd(IShellLinkW* This,int *piShowCmd) { return This->lpVtbl->GetShowCmd(This,piShowCmd); } static inline HRESULT IShellLinkW_SetShowCmd(IShellLinkW* This,int iShowCmd) { return This->lpVtbl->SetShowCmd(This,iShowCmd); } static inline HRESULT IShellLinkW_GetIconLocation(IShellLinkW* This,LPWSTR pszIconPath,int cch,int *piIcon) { return This->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon); } static inline HRESULT IShellLinkW_SetIconLocation(IShellLinkW* This,LPCWSTR pszIconPath,int iIcon) { return This->lpVtbl->SetIconLocation(This,pszIconPath,iIcon); } static inline HRESULT IShellLinkW_SetRelativePath(IShellLinkW* This,LPCWSTR pszPathRel,DWORD dwReserved) { return This->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved); } static inline HRESULT IShellLinkW_Resolve(IShellLinkW* This,HWND hwnd,DWORD fFlags) { return This->lpVtbl->Resolve(This,hwnd,fFlags); } static inline HRESULT IShellLinkW_SetPath(IShellLinkW* This,LPCWSTR pszFile) { return This->lpVtbl->SetPath(This,pszFile); } #endif #endif #endif #endif /* __IShellLinkW_INTERFACE_DEFINED__ */ #define IShellLink WINELIB_NAME_AW(IShellLink) /***************************************************************************** * IShellExtInit interface */ #ifndef __IShellExtInit_INTERFACE_DEFINED__ #define __IShellExtInit_INTERFACE_DEFINED__ typedef IShellExtInit *LPSHELLEXTINIT; DEFINE_GUID(IID_IShellExtInit, 0x000214e8, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e8-0000-0000-c000-000000000046") IShellExtInit : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( LPCITEMIDLIST pidlFolder, IDataObject *pdtobj, HKEY hkeyProgID) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellExtInit, 0x000214e8, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellExtInitVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellExtInit *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellExtInit *This); ULONG (STDMETHODCALLTYPE *Release)( IShellExtInit *This); /*** IShellExtInit methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IShellExtInit *This, LPCITEMIDLIST pidlFolder, IDataObject *pdtobj, HKEY hkeyProgID); END_INTERFACE } IShellExtInitVtbl; interface IShellExtInit { CONST_VTBL IShellExtInitVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellExtInit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellExtInit_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellExtInit_Release(This) (This)->lpVtbl->Release(This) /*** IShellExtInit methods ***/ #define IShellExtInit_Initialize(This,pidlFolder,pdtobj,hkeyProgID) (This)->lpVtbl->Initialize(This,pidlFolder,pdtobj,hkeyProgID) #else /*** IUnknown methods ***/ static inline HRESULT IShellExtInit_QueryInterface(IShellExtInit* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellExtInit_AddRef(IShellExtInit* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellExtInit_Release(IShellExtInit* This) { return This->lpVtbl->Release(This); } /*** IShellExtInit methods ***/ static inline HRESULT IShellExtInit_Initialize(IShellExtInit* This,LPCITEMIDLIST pidlFolder,IDataObject *pdtobj,HKEY hkeyProgID) { return This->lpVtbl->Initialize(This,pidlFolder,pdtobj,hkeyProgID); } #endif #endif #endif #endif /* __IShellExtInit_INTERFACE_DEFINED__ */ /***************************************************************************** * IPersistFolder3 interface */ #ifndef __IPersistFolder3_INTERFACE_DEFINED__ #define __IPersistFolder3_INTERFACE_DEFINED__ typedef struct __WIDL_shobjidl_generated_name_00000027 { LPITEMIDLIST pidlTargetFolder; WCHAR szTargetParsingName[260]; WCHAR szNetworkProvider[260]; DWORD dwAttributes; int csidl; } PERSIST_FOLDER_TARGET_INFO; DEFINE_GUID(IID_IPersistFolder3, 0xcef04fdf, 0xfe72, 0x11d2, 0x87,0xa5, 0x00,0xc0,0x4f,0x68,0x37,0xcf); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("cef04fdf-fe72-11d2-87a5-00c04f6837cf") IPersistFolder3 : public IPersistFolder2 { virtual HRESULT STDMETHODCALLTYPE InitializeEx( IBindCtx *pbc, LPCITEMIDLIST pidlRoot, const PERSIST_FOLDER_TARGET_INFO *ppfti) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderTargetInfo( PERSIST_FOLDER_TARGET_INFO *ppfti) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPersistFolder3, 0xcef04fdf, 0xfe72, 0x11d2, 0x87,0xa5, 0x00,0xc0,0x4f,0x68,0x37,0xcf) #endif #else typedef struct IPersistFolder3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPersistFolder3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPersistFolder3 *This); ULONG (STDMETHODCALLTYPE *Release)( IPersistFolder3 *This); /*** IPersist methods ***/ HRESULT (STDMETHODCALLTYPE *GetClassID)( IPersistFolder3 *This, CLSID *pClassID); /*** IPersistFolder methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IPersistFolder3 *This, LPCITEMIDLIST pidl); /*** IPersistFolder2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetCurFolder)( IPersistFolder3 *This, LPITEMIDLIST *ppidl); /*** IPersistFolder3 methods ***/ HRESULT (STDMETHODCALLTYPE *InitializeEx)( IPersistFolder3 *This, IBindCtx *pbc, LPCITEMIDLIST pidlRoot, const PERSIST_FOLDER_TARGET_INFO *ppfti); HRESULT (STDMETHODCALLTYPE *GetFolderTargetInfo)( IPersistFolder3 *This, PERSIST_FOLDER_TARGET_INFO *ppfti); END_INTERFACE } IPersistFolder3Vtbl; interface IPersistFolder3 { CONST_VTBL IPersistFolder3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPersistFolder3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPersistFolder3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPersistFolder3_Release(This) (This)->lpVtbl->Release(This) /*** IPersist methods ***/ #define IPersistFolder3_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) /*** IPersistFolder methods ***/ #define IPersistFolder3_Initialize(This,pidl) (This)->lpVtbl->Initialize(This,pidl) /*** IPersistFolder2 methods ***/ #define IPersistFolder3_GetCurFolder(This,ppidl) (This)->lpVtbl->GetCurFolder(This,ppidl) /*** IPersistFolder3 methods ***/ #define IPersistFolder3_InitializeEx(This,pbc,pidlRoot,ppfti) (This)->lpVtbl->InitializeEx(This,pbc,pidlRoot,ppfti) #define IPersistFolder3_GetFolderTargetInfo(This,ppfti) (This)->lpVtbl->GetFolderTargetInfo(This,ppfti) #else /*** IUnknown methods ***/ static inline HRESULT IPersistFolder3_QueryInterface(IPersistFolder3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IPersistFolder3_AddRef(IPersistFolder3* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IPersistFolder3_Release(IPersistFolder3* This) { return This->lpVtbl->Release(This); } /*** IPersist methods ***/ static inline HRESULT IPersistFolder3_GetClassID(IPersistFolder3* This,CLSID *pClassID) { return This->lpVtbl->GetClassID(This,pClassID); } /*** IPersistFolder methods ***/ static inline HRESULT IPersistFolder3_Initialize(IPersistFolder3* This,LPCITEMIDLIST pidl) { return This->lpVtbl->Initialize(This,pidl); } /*** IPersistFolder2 methods ***/ static inline HRESULT IPersistFolder3_GetCurFolder(IPersistFolder3* This,LPITEMIDLIST *ppidl) { return This->lpVtbl->GetCurFolder(This,ppidl); } /*** IPersistFolder3 methods ***/ static inline HRESULT IPersistFolder3_InitializeEx(IPersistFolder3* This,IBindCtx *pbc,LPCITEMIDLIST pidlRoot,const PERSIST_FOLDER_TARGET_INFO *ppfti) { return This->lpVtbl->InitializeEx(This,pbc,pidlRoot,ppfti); } static inline HRESULT IPersistFolder3_GetFolderTargetInfo(IPersistFolder3* This,PERSIST_FOLDER_TARGET_INFO *ppfti) { return This->lpVtbl->GetFolderTargetInfo(This,ppfti); } #endif #endif #endif #endif /* __IPersistFolder3_INTERFACE_DEFINED__ */ /***************************************************************************** * IExtractIconA interface */ #ifndef __IExtractIconA_INTERFACE_DEFINED__ #define __IExtractIconA_INTERFACE_DEFINED__ #define GIL_OPENICON 0x0001 #define GIL_FORSHELL 0x0002 #define GIL_ASYNC 0x0020 #define GIL_DEFAULTICON 0x0040 #define GIL_FORSHORTCUT 0x0080 #define GIL_SIMULATEDOC 0x0001 #define GIL_PERINSTANCE 0x0002 #define GIL_PERCLASS 0x0004 #define GIL_NOTFILENAME 0x0008 #define GIL_DONTCACHE 0x0010 typedef IExtractIconA *LPEXTRACTICONA; DEFINE_GUID(IID_IExtractIconA, 0x000214eb, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214eb-0000-0000-c000-000000000046") IExtractIconA : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetIconLocation( UINT uFlags, LPSTR szIconFile, UINT cchMax, INT *piIndex, UINT *pwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE Extract( LPCSTR pszFile, UINT nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExtractIconA, 0x000214eb, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IExtractIconAVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExtractIconA *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExtractIconA *This); ULONG (STDMETHODCALLTYPE *Release)( IExtractIconA *This); /*** IExtractIconA methods ***/ HRESULT (STDMETHODCALLTYPE *GetIconLocation)( IExtractIconA *This, UINT uFlags, LPSTR szIconFile, UINT cchMax, INT *piIndex, UINT *pwFlags); HRESULT (STDMETHODCALLTYPE *Extract)( IExtractIconA *This, LPCSTR pszFile, UINT nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize); END_INTERFACE } IExtractIconAVtbl; interface IExtractIconA { CONST_VTBL IExtractIconAVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExtractIconA_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExtractIconA_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExtractIconA_Release(This) (This)->lpVtbl->Release(This) /*** IExtractIconA methods ***/ #define IExtractIconA_GetIconLocation(This,uFlags,szIconFile,cchMax,piIndex,pwFlags) (This)->lpVtbl->GetIconLocation(This,uFlags,szIconFile,cchMax,piIndex,pwFlags) #define IExtractIconA_Extract(This,pszFile,nIconIndex,phiconLarge,phiconSmall,nIconSize) (This)->lpVtbl->Extract(This,pszFile,nIconIndex,phiconLarge,phiconSmall,nIconSize) #else /*** IUnknown methods ***/ static inline HRESULT IExtractIconA_QueryInterface(IExtractIconA* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IExtractIconA_AddRef(IExtractIconA* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IExtractIconA_Release(IExtractIconA* This) { return This->lpVtbl->Release(This); } /*** IExtractIconA methods ***/ static inline HRESULT IExtractIconA_GetIconLocation(IExtractIconA* This,UINT uFlags,LPSTR szIconFile,UINT cchMax,INT *piIndex,UINT *pwFlags) { return This->lpVtbl->GetIconLocation(This,uFlags,szIconFile,cchMax,piIndex,pwFlags); } static inline HRESULT IExtractIconA_Extract(IExtractIconA* This,LPCSTR pszFile,UINT nIconIndex,HICON *phiconLarge,HICON *phiconSmall,UINT nIconSize) { return This->lpVtbl->Extract(This,pszFile,nIconIndex,phiconLarge,phiconSmall,nIconSize); } #endif #endif #endif #endif /* __IExtractIconA_INTERFACE_DEFINED__ */ /***************************************************************************** * IExtractIconW interface */ #ifndef __IExtractIconW_INTERFACE_DEFINED__ #define __IExtractIconW_INTERFACE_DEFINED__ typedef IExtractIconW *LPEXTRACTICONW; DEFINE_GUID(IID_IExtractIconW, 0x000214fa, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214fa-0000-0000-c000-000000000046") IExtractIconW : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetIconLocation( UINT uFlags, LPWSTR szIconFile, UINT cchMax, INT *piIndex, UINT *pwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE Extract( LPCWSTR pszFile, UINT nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExtractIconW, 0x000214fa, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IExtractIconWVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExtractIconW *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExtractIconW *This); ULONG (STDMETHODCALLTYPE *Release)( IExtractIconW *This); /*** IExtractIconW methods ***/ HRESULT (STDMETHODCALLTYPE *GetIconLocation)( IExtractIconW *This, UINT uFlags, LPWSTR szIconFile, UINT cchMax, INT *piIndex, UINT *pwFlags); HRESULT (STDMETHODCALLTYPE *Extract)( IExtractIconW *This, LPCWSTR pszFile, UINT nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize); END_INTERFACE } IExtractIconWVtbl; interface IExtractIconW { CONST_VTBL IExtractIconWVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExtractIconW_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExtractIconW_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExtractIconW_Release(This) (This)->lpVtbl->Release(This) /*** IExtractIconW methods ***/ #define IExtractIconW_GetIconLocation(This,uFlags,szIconFile,cchMax,piIndex,pwFlags) (This)->lpVtbl->GetIconLocation(This,uFlags,szIconFile,cchMax,piIndex,pwFlags) #define IExtractIconW_Extract(This,pszFile,nIconIndex,phiconLarge,phiconSmall,nIconSize) (This)->lpVtbl->Extract(This,pszFile,nIconIndex,phiconLarge,phiconSmall,nIconSize) #else /*** IUnknown methods ***/ static inline HRESULT IExtractIconW_QueryInterface(IExtractIconW* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IExtractIconW_AddRef(IExtractIconW* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IExtractIconW_Release(IExtractIconW* This) { return This->lpVtbl->Release(This); } /*** IExtractIconW methods ***/ static inline HRESULT IExtractIconW_GetIconLocation(IExtractIconW* This,UINT uFlags,LPWSTR szIconFile,UINT cchMax,INT *piIndex,UINT *pwFlags) { return This->lpVtbl->GetIconLocation(This,uFlags,szIconFile,cchMax,piIndex,pwFlags); } static inline HRESULT IExtractIconW_Extract(IExtractIconW* This,LPCWSTR pszFile,UINT nIconIndex,HICON *phiconLarge,HICON *phiconSmall,UINT nIconSize) { return This->lpVtbl->Extract(This,pszFile,nIconIndex,phiconLarge,phiconSmall,nIconSize); } #endif #endif #endif #endif /* __IExtractIconW_INTERFACE_DEFINED__ */ #define LPEXTRACTICON WINELIB_NAME_AW(LPEXTRACTICON) #define IExtractIcon WINELIB_NAME_AW(IExtractIcon) /***************************************************************************** * ICommDlgBrowser interface */ #ifndef __ICommDlgBrowser_INTERFACE_DEFINED__ #define __ICommDlgBrowser_INTERFACE_DEFINED__ #define CDBOSC_SETFOCUS 0x00000000 #define CDBOSC_KILLFOCUS 0x00000001 #define CDBOSC_SELCHANGE 0x00000002 #define CDBOSC_RENAME 0x00000003 #define CDBOSC_STATECHANGE 0x00000004 typedef ICommDlgBrowser *LPCOMMDLGBROWSER; DEFINE_GUID(IID_ICommDlgBrowser, 0x000214f1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214f1-0000-0000-c000-000000000046") ICommDlgBrowser : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnDefaultCommand( IShellView *shv) = 0; virtual HRESULT STDMETHODCALLTYPE OnStateChange( IShellView *shv, ULONG uChange) = 0; virtual HRESULT STDMETHODCALLTYPE IncludeObject( IShellView *shv, LPCITEMIDLIST pidl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICommDlgBrowser, 0x000214f1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ICommDlgBrowserVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICommDlgBrowser *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICommDlgBrowser *This); ULONG (STDMETHODCALLTYPE *Release)( ICommDlgBrowser *This); /*** ICommDlgBrowser methods ***/ HRESULT (STDMETHODCALLTYPE *OnDefaultCommand)( ICommDlgBrowser *This, IShellView *shv); HRESULT (STDMETHODCALLTYPE *OnStateChange)( ICommDlgBrowser *This, IShellView *shv, ULONG uChange); HRESULT (STDMETHODCALLTYPE *IncludeObject)( ICommDlgBrowser *This, IShellView *shv, LPCITEMIDLIST pidl); END_INTERFACE } ICommDlgBrowserVtbl; interface ICommDlgBrowser { CONST_VTBL ICommDlgBrowserVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICommDlgBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICommDlgBrowser_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICommDlgBrowser_Release(This) (This)->lpVtbl->Release(This) /*** ICommDlgBrowser methods ***/ #define ICommDlgBrowser_OnDefaultCommand(This,shv) (This)->lpVtbl->OnDefaultCommand(This,shv) #define ICommDlgBrowser_OnStateChange(This,shv,uChange) (This)->lpVtbl->OnStateChange(This,shv,uChange) #define ICommDlgBrowser_IncludeObject(This,shv,pidl) (This)->lpVtbl->IncludeObject(This,shv,pidl) #else /*** IUnknown methods ***/ static inline HRESULT ICommDlgBrowser_QueryInterface(ICommDlgBrowser* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ICommDlgBrowser_AddRef(ICommDlgBrowser* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ICommDlgBrowser_Release(ICommDlgBrowser* This) { return This->lpVtbl->Release(This); } /*** ICommDlgBrowser methods ***/ static inline HRESULT ICommDlgBrowser_OnDefaultCommand(ICommDlgBrowser* This,IShellView *shv) { return This->lpVtbl->OnDefaultCommand(This,shv); } static inline HRESULT ICommDlgBrowser_OnStateChange(ICommDlgBrowser* This,IShellView *shv,ULONG uChange) { return This->lpVtbl->OnStateChange(This,shv,uChange); } static inline HRESULT ICommDlgBrowser_IncludeObject(ICommDlgBrowser* This,IShellView *shv,LPCITEMIDLIST pidl) { return This->lpVtbl->IncludeObject(This,shv,pidl); } #endif #endif #endif #endif /* __ICommDlgBrowser_INTERFACE_DEFINED__ */ /***************************************************************************** * ICommDlgBrowser2 interface */ #ifndef __ICommDlgBrowser2_INTERFACE_DEFINED__ #define __ICommDlgBrowser2_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICommDlgBrowser2, 0x10339516, 0x2894, 0x11d2, 0x90,0x39, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("10339516-2894-11d2-9039-00c04f8eeb3e") ICommDlgBrowser2 : public ICommDlgBrowser { virtual HRESULT STDMETHODCALLTYPE Notify( IShellView *ppshv, DWORD dwNotifyType) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultMenuText( IShellView *ppshv, LPWSTR pszText, int cchMax) = 0; virtual HRESULT STDMETHODCALLTYPE GetViewFlags( DWORD *pdwFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICommDlgBrowser2, 0x10339516, 0x2894, 0x11d2, 0x90,0x39, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e) #endif #else typedef struct ICommDlgBrowser2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICommDlgBrowser2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICommDlgBrowser2 *This); ULONG (STDMETHODCALLTYPE *Release)( ICommDlgBrowser2 *This); /*** ICommDlgBrowser methods ***/ HRESULT (STDMETHODCALLTYPE *OnDefaultCommand)( ICommDlgBrowser2 *This, IShellView *shv); HRESULT (STDMETHODCALLTYPE *OnStateChange)( ICommDlgBrowser2 *This, IShellView *shv, ULONG uChange); HRESULT (STDMETHODCALLTYPE *IncludeObject)( ICommDlgBrowser2 *This, IShellView *shv, LPCITEMIDLIST pidl); /*** ICommDlgBrowser2 methods ***/ HRESULT (STDMETHODCALLTYPE *Notify)( ICommDlgBrowser2 *This, IShellView *ppshv, DWORD dwNotifyType); HRESULT (STDMETHODCALLTYPE *GetDefaultMenuText)( ICommDlgBrowser2 *This, IShellView *ppshv, LPWSTR pszText, int cchMax); HRESULT (STDMETHODCALLTYPE *GetViewFlags)( ICommDlgBrowser2 *This, DWORD *pdwFlags); END_INTERFACE } ICommDlgBrowser2Vtbl; interface ICommDlgBrowser2 { CONST_VTBL ICommDlgBrowser2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICommDlgBrowser2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICommDlgBrowser2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICommDlgBrowser2_Release(This) (This)->lpVtbl->Release(This) /*** ICommDlgBrowser methods ***/ #define ICommDlgBrowser2_OnDefaultCommand(This,shv) (This)->lpVtbl->OnDefaultCommand(This,shv) #define ICommDlgBrowser2_OnStateChange(This,shv,uChange) (This)->lpVtbl->OnStateChange(This,shv,uChange) #define ICommDlgBrowser2_IncludeObject(This,shv,pidl) (This)->lpVtbl->IncludeObject(This,shv,pidl) /*** ICommDlgBrowser2 methods ***/ #define ICommDlgBrowser2_Notify(This,ppshv,dwNotifyType) (This)->lpVtbl->Notify(This,ppshv,dwNotifyType) #define ICommDlgBrowser2_GetDefaultMenuText(This,ppshv,pszText,cchMax) (This)->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax) #define ICommDlgBrowser2_GetViewFlags(This,pdwFlags) (This)->lpVtbl->GetViewFlags(This,pdwFlags) #else /*** IUnknown methods ***/ static inline HRESULT ICommDlgBrowser2_QueryInterface(ICommDlgBrowser2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ICommDlgBrowser2_AddRef(ICommDlgBrowser2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ICommDlgBrowser2_Release(ICommDlgBrowser2* This) { return This->lpVtbl->Release(This); } /*** ICommDlgBrowser methods ***/ static inline HRESULT ICommDlgBrowser2_OnDefaultCommand(ICommDlgBrowser2* This,IShellView *shv) { return This->lpVtbl->OnDefaultCommand(This,shv); } static inline HRESULT ICommDlgBrowser2_OnStateChange(ICommDlgBrowser2* This,IShellView *shv,ULONG uChange) { return This->lpVtbl->OnStateChange(This,shv,uChange); } static inline HRESULT ICommDlgBrowser2_IncludeObject(ICommDlgBrowser2* This,IShellView *shv,LPCITEMIDLIST pidl) { return This->lpVtbl->IncludeObject(This,shv,pidl); } /*** ICommDlgBrowser2 methods ***/ static inline HRESULT ICommDlgBrowser2_Notify(ICommDlgBrowser2* This,IShellView *ppshv,DWORD dwNotifyType) { return This->lpVtbl->Notify(This,ppshv,dwNotifyType); } static inline HRESULT ICommDlgBrowser2_GetDefaultMenuText(ICommDlgBrowser2* This,IShellView *ppshv,LPWSTR pszText,int cchMax) { return This->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax); } static inline HRESULT ICommDlgBrowser2_GetViewFlags(ICommDlgBrowser2* This,DWORD *pdwFlags) { return This->lpVtbl->GetViewFlags(This,pdwFlags); } #endif #endif #endif #endif /* __ICommDlgBrowser2_INTERFACE_DEFINED__ */ /***************************************************************************** * ICommDlgBrowser3 interface */ #ifndef __ICommDlgBrowser3_INTERFACE_DEFINED__ #define __ICommDlgBrowser3_INTERFACE_DEFINED__ DEFINE_GUID(IID_ICommDlgBrowser3, 0xc8ad25a1, 0x3294, 0x41ee, 0x81,0x65, 0x71,0x17,0x4b,0xd0,0x1c,0x57); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c8ad25a1-3294-41ee-8165-71174bd01c57") ICommDlgBrowser3 : public ICommDlgBrowser2 { virtual HRESULT STDMETHODCALLTYPE OnColumnClicked( IShellView *ppshv, int iColumn) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentFilter( LPWSTR pszFileSpec, int cchFileSpec) = 0; virtual HRESULT STDMETHODCALLTYPE OnPreViewCreated( IShellView *ppshv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICommDlgBrowser3, 0xc8ad25a1, 0x3294, 0x41ee, 0x81,0x65, 0x71,0x17,0x4b,0xd0,0x1c,0x57) #endif #else typedef struct ICommDlgBrowser3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICommDlgBrowser3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICommDlgBrowser3 *This); ULONG (STDMETHODCALLTYPE *Release)( ICommDlgBrowser3 *This); /*** ICommDlgBrowser methods ***/ HRESULT (STDMETHODCALLTYPE *OnDefaultCommand)( ICommDlgBrowser3 *This, IShellView *shv); HRESULT (STDMETHODCALLTYPE *OnStateChange)( ICommDlgBrowser3 *This, IShellView *shv, ULONG uChange); HRESULT (STDMETHODCALLTYPE *IncludeObject)( ICommDlgBrowser3 *This, IShellView *shv, LPCITEMIDLIST pidl); /*** ICommDlgBrowser2 methods ***/ HRESULT (STDMETHODCALLTYPE *Notify)( ICommDlgBrowser3 *This, IShellView *ppshv, DWORD dwNotifyType); HRESULT (STDMETHODCALLTYPE *GetDefaultMenuText)( ICommDlgBrowser3 *This, IShellView *ppshv, LPWSTR pszText, int cchMax); HRESULT (STDMETHODCALLTYPE *GetViewFlags)( ICommDlgBrowser3 *This, DWORD *pdwFlags); /*** ICommDlgBrowser3 methods ***/ HRESULT (STDMETHODCALLTYPE *OnColumnClicked)( ICommDlgBrowser3 *This, IShellView *ppshv, int iColumn); HRESULT (STDMETHODCALLTYPE *GetCurrentFilter)( ICommDlgBrowser3 *This, LPWSTR pszFileSpec, int cchFileSpec); HRESULT (STDMETHODCALLTYPE *OnPreViewCreated)( ICommDlgBrowser3 *This, IShellView *ppshv); END_INTERFACE } ICommDlgBrowser3Vtbl; interface ICommDlgBrowser3 { CONST_VTBL ICommDlgBrowser3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICommDlgBrowser3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICommDlgBrowser3_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICommDlgBrowser3_Release(This) (This)->lpVtbl->Release(This) /*** ICommDlgBrowser methods ***/ #define ICommDlgBrowser3_OnDefaultCommand(This,shv) (This)->lpVtbl->OnDefaultCommand(This,shv) #define ICommDlgBrowser3_OnStateChange(This,shv,uChange) (This)->lpVtbl->OnStateChange(This,shv,uChange) #define ICommDlgBrowser3_IncludeObject(This,shv,pidl) (This)->lpVtbl->IncludeObject(This,shv,pidl) /*** ICommDlgBrowser2 methods ***/ #define ICommDlgBrowser3_Notify(This,ppshv,dwNotifyType) (This)->lpVtbl->Notify(This,ppshv,dwNotifyType) #define ICommDlgBrowser3_GetDefaultMenuText(This,ppshv,pszText,cchMax) (This)->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax) #define ICommDlgBrowser3_GetViewFlags(This,pdwFlags) (This)->lpVtbl->GetViewFlags(This,pdwFlags) /*** ICommDlgBrowser3 methods ***/ #define ICommDlgBrowser3_OnColumnClicked(This,ppshv,iColumn) (This)->lpVtbl->OnColumnClicked(This,ppshv,iColumn) #define ICommDlgBrowser3_GetCurrentFilter(This,pszFileSpec,cchFileSpec) (This)->lpVtbl->GetCurrentFilter(This,pszFileSpec,cchFileSpec) #define ICommDlgBrowser3_OnPreViewCreated(This,ppshv) (This)->lpVtbl->OnPreViewCreated(This,ppshv) #else /*** IUnknown methods ***/ static inline HRESULT ICommDlgBrowser3_QueryInterface(ICommDlgBrowser3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ICommDlgBrowser3_AddRef(ICommDlgBrowser3* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ICommDlgBrowser3_Release(ICommDlgBrowser3* This) { return This->lpVtbl->Release(This); } /*** ICommDlgBrowser methods ***/ static inline HRESULT ICommDlgBrowser3_OnDefaultCommand(ICommDlgBrowser3* This,IShellView *shv) { return This->lpVtbl->OnDefaultCommand(This,shv); } static inline HRESULT ICommDlgBrowser3_OnStateChange(ICommDlgBrowser3* This,IShellView *shv,ULONG uChange) { return This->lpVtbl->OnStateChange(This,shv,uChange); } static inline HRESULT ICommDlgBrowser3_IncludeObject(ICommDlgBrowser3* This,IShellView *shv,LPCITEMIDLIST pidl) { return This->lpVtbl->IncludeObject(This,shv,pidl); } /*** ICommDlgBrowser2 methods ***/ static inline HRESULT ICommDlgBrowser3_Notify(ICommDlgBrowser3* This,IShellView *ppshv,DWORD dwNotifyType) { return This->lpVtbl->Notify(This,ppshv,dwNotifyType); } static inline HRESULT ICommDlgBrowser3_GetDefaultMenuText(ICommDlgBrowser3* This,IShellView *ppshv,LPWSTR pszText,int cchMax) { return This->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax); } static inline HRESULT ICommDlgBrowser3_GetViewFlags(ICommDlgBrowser3* This,DWORD *pdwFlags) { return This->lpVtbl->GetViewFlags(This,pdwFlags); } /*** ICommDlgBrowser3 methods ***/ static inline HRESULT ICommDlgBrowser3_OnColumnClicked(ICommDlgBrowser3* This,IShellView *ppshv,int iColumn) { return This->lpVtbl->OnColumnClicked(This,ppshv,iColumn); } static inline HRESULT ICommDlgBrowser3_GetCurrentFilter(ICommDlgBrowser3* This,LPWSTR pszFileSpec,int cchFileSpec) { return This->lpVtbl->GetCurrentFilter(This,pszFileSpec,cchFileSpec); } static inline HRESULT ICommDlgBrowser3_OnPreViewCreated(ICommDlgBrowser3* This,IShellView *ppshv) { return This->lpVtbl->OnPreViewCreated(This,ppshv); } #endif #endif #endif #endif /* __ICommDlgBrowser3_INTERFACE_DEFINED__ */ /***************************************************************************** * IDockingWindow interface */ #ifndef __IDockingWindow_INTERFACE_DEFINED__ #define __IDockingWindow_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDockingWindow, 0x012dd920, 0x7b26, 0x11d0, 0x8c,0xa9, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("012dd920-7b26-11d0-8ca9-00a0c92dbfe8") IDockingWindow : public IOleWindow { virtual HRESULT STDMETHODCALLTYPE ShowDW( BOOL fShow) = 0; virtual HRESULT STDMETHODCALLTYPE CloseDW( DWORD dwReserved) = 0; virtual HRESULT STDMETHODCALLTYPE ResizeBorderDW( LPCRECT prcBorder, IUnknown *punkToolbarSite, BOOL fReserved) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDockingWindow, 0x012dd920, 0x7b26, 0x11d0, 0x8c,0xa9, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8) #endif #else typedef struct IDockingWindowVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDockingWindow *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDockingWindow *This); ULONG (STDMETHODCALLTYPE *Release)( IDockingWindow *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IDockingWindow *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IDockingWindow *This, BOOL fEnterMode); /*** IDockingWindow methods ***/ HRESULT (STDMETHODCALLTYPE *ShowDW)( IDockingWindow *This, BOOL fShow); HRESULT (STDMETHODCALLTYPE *CloseDW)( IDockingWindow *This, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *ResizeBorderDW)( IDockingWindow *This, LPCRECT prcBorder, IUnknown *punkToolbarSite, BOOL fReserved); END_INTERFACE } IDockingWindowVtbl; interface IDockingWindow { CONST_VTBL IDockingWindowVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDockingWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDockingWindow_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDockingWindow_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IDockingWindow_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IDockingWindow_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IDockingWindow methods ***/ #define IDockingWindow_ShowDW(This,fShow) (This)->lpVtbl->ShowDW(This,fShow) #define IDockingWindow_CloseDW(This,dwReserved) (This)->lpVtbl->CloseDW(This,dwReserved) #define IDockingWindow_ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) (This)->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) #else /*** IUnknown methods ***/ static inline HRESULT IDockingWindow_QueryInterface(IDockingWindow* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IDockingWindow_AddRef(IDockingWindow* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IDockingWindow_Release(IDockingWindow* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static inline HRESULT IDockingWindow_GetWindow(IDockingWindow* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static inline HRESULT IDockingWindow_ContextSensitiveHelp(IDockingWindow* This,BOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IDockingWindow methods ***/ static inline HRESULT IDockingWindow_ShowDW(IDockingWindow* This,BOOL fShow) { return This->lpVtbl->ShowDW(This,fShow); } static inline HRESULT IDockingWindow_CloseDW(IDockingWindow* This,DWORD dwReserved) { return This->lpVtbl->CloseDW(This,dwReserved); } static inline HRESULT IDockingWindow_ResizeBorderDW(IDockingWindow* This,LPCRECT prcBorder,IUnknown *punkToolbarSite,BOOL fReserved) { return This->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved); } #endif #endif #endif #endif /* __IDockingWindow_INTERFACE_DEFINED__ */ /***************************************************************************** * IDockingWindowFrame interface */ #ifndef __IDockingWindowFrame_INTERFACE_DEFINED__ #define __IDockingWindowFrame_INTERFACE_DEFINED__ #define DWFRF_NORMAL 0x0000 #define DWFRF_DELETECONFIGDATA 0x0001 #define DWFAF_HIDDEN 0x0001 DEFINE_GUID(IID_IDockingWindowFrame, 0x47d2657a, 0x7b27, 0x11d0, 0x8c,0xa9, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("47d2657a-7b27-11d0-8ca9-00a0c92dbfe8") IDockingWindowFrame : public IOleWindow { virtual HRESULT STDMETHODCALLTYPE AddToolbar( IUnknown *punkSrc, LPCWSTR pwszItem, DWORD dwAddFlags) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveToolbar( IUnknown *punkSrc, DWORD dwRemoveFlags) = 0; virtual HRESULT STDMETHODCALLTYPE FindToolbar( LPCWSTR pwszItem, REFIID riid, LPVOID *ppvObj) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDockingWindowFrame, 0x47d2657a, 0x7b27, 0x11d0, 0x8c,0xa9, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8) #endif #else typedef struct IDockingWindowFrameVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDockingWindowFrame *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDockingWindowFrame *This); ULONG (STDMETHODCALLTYPE *Release)( IDockingWindowFrame *This); /*** IOleWindow methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindow)( IDockingWindowFrame *This, HWND *phwnd); HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( IDockingWindowFrame *This, BOOL fEnterMode); /*** IDockingWindowFrame methods ***/ HRESULT (STDMETHODCALLTYPE *AddToolbar)( IDockingWindowFrame *This, IUnknown *punkSrc, LPCWSTR pwszItem, DWORD dwAddFlags); HRESULT (STDMETHODCALLTYPE *RemoveToolbar)( IDockingWindowFrame *This, IUnknown *punkSrc, DWORD dwRemoveFlags); HRESULT (STDMETHODCALLTYPE *FindToolbar)( IDockingWindowFrame *This, LPCWSTR pwszItem, REFIID riid, LPVOID *ppvObj); END_INTERFACE } IDockingWindowFrameVtbl; interface IDockingWindowFrame { CONST_VTBL IDockingWindowFrameVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDockingWindowFrame_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDockingWindowFrame_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDockingWindowFrame_Release(This) (This)->lpVtbl->Release(This) /*** IOleWindow methods ***/ #define IDockingWindowFrame_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) #define IDockingWindowFrame_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) /*** IDockingWindowFrame methods ***/ #define IDockingWindowFrame_AddToolbar(This,punkSrc,pwszItem,dwAddFlags) (This)->lpVtbl->AddToolbar(This,punkSrc,pwszItem,dwAddFlags) #define IDockingWindowFrame_RemoveToolbar(This,punkSrc,dwRemoveFlags) (This)->lpVtbl->RemoveToolbar(This,punkSrc,dwRemoveFlags) #define IDockingWindowFrame_FindToolbar(This,pwszItem,riid,ppvObj) (This)->lpVtbl->FindToolbar(This,pwszItem,riid,ppvObj) #else /*** IUnknown methods ***/ static inline HRESULT IDockingWindowFrame_QueryInterface(IDockingWindowFrame* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IDockingWindowFrame_AddRef(IDockingWindowFrame* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IDockingWindowFrame_Release(IDockingWindowFrame* This) { return This->lpVtbl->Release(This); } /*** IOleWindow methods ***/ static inline HRESULT IDockingWindowFrame_GetWindow(IDockingWindowFrame* This,HWND *phwnd) { return This->lpVtbl->GetWindow(This,phwnd); } static inline HRESULT IDockingWindowFrame_ContextSensitiveHelp(IDockingWindowFrame* This,BOOL fEnterMode) { return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); } /*** IDockingWindowFrame methods ***/ static inline HRESULT IDockingWindowFrame_AddToolbar(IDockingWindowFrame* This,IUnknown *punkSrc,LPCWSTR pwszItem,DWORD dwAddFlags) { return This->lpVtbl->AddToolbar(This,punkSrc,pwszItem,dwAddFlags); } static inline HRESULT IDockingWindowFrame_RemoveToolbar(IDockingWindowFrame* This,IUnknown *punkSrc,DWORD dwRemoveFlags) { return This->lpVtbl->RemoveToolbar(This,punkSrc,dwRemoveFlags); } static inline HRESULT IDockingWindowFrame_FindToolbar(IDockingWindowFrame* This,LPCWSTR pwszItem,REFIID riid,LPVOID *ppvObj) { return This->lpVtbl->FindToolbar(This,pwszItem,riid,ppvObj); } #endif #endif #endif #endif /* __IDockingWindowFrame_INTERFACE_DEFINED__ */ #pragma pack(push,8) typedef struct __WIDL_shobjidl_generated_name_00000028 { SIZE sizeDragImage; POINT ptOffset; HBITMAP hbmpDragImage; COLORREF crColorKey; } SHDRAGIMAGE; typedef struct __WIDL_shobjidl_generated_name_00000028 *LPSHDRAGIMAGE; #pragma pack(pop) #define DI_GETDRAGIMAGE TEXT("ShellGetDragImage") /***************************************************************************** * IDragSourceHelper interface */ #ifndef __IDragSourceHelper_INTERFACE_DEFINED__ #define __IDragSourceHelper_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDragSourceHelper, 0xde5bf786, 0x477a, 0x11d2, 0x83,0x9d, 0x00,0xc0,0x4f,0xd9,0x18,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("de5bf786-477a-11d2-839d-00c04fd918d0") IDragSourceHelper : public IUnknown { virtual HRESULT STDMETHODCALLTYPE InitializeFromBitmap( LPSHDRAGIMAGE pshdi, IDataObject *pDataObject) = 0; virtual HRESULT STDMETHODCALLTYPE InitializeFromWindow( HWND hwnd, POINT *ppt, IDataObject *pDataObject) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDragSourceHelper, 0xde5bf786, 0x477a, 0x11d2, 0x83,0x9d, 0x00,0xc0,0x4f,0xd9,0x18,0xd0) #endif #else typedef struct IDragSourceHelperVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDragSourceHelper *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDragSourceHelper *This); ULONG (STDMETHODCALLTYPE *Release)( IDragSourceHelper *This); /*** IDragSourceHelper methods ***/ HRESULT (STDMETHODCALLTYPE *InitializeFromBitmap)( IDragSourceHelper *This, LPSHDRAGIMAGE pshdi, IDataObject *pDataObject); HRESULT (STDMETHODCALLTYPE *InitializeFromWindow)( IDragSourceHelper *This, HWND hwnd, POINT *ppt, IDataObject *pDataObject); END_INTERFACE } IDragSourceHelperVtbl; interface IDragSourceHelper { CONST_VTBL IDragSourceHelperVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDragSourceHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDragSourceHelper_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDragSourceHelper_Release(This) (This)->lpVtbl->Release(This) /*** IDragSourceHelper methods ***/ #define IDragSourceHelper_InitializeFromBitmap(This,pshdi,pDataObject) (This)->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject) #define IDragSourceHelper_InitializeFromWindow(This,hwnd,ppt,pDataObject) (This)->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject) #else /*** IUnknown methods ***/ static inline HRESULT IDragSourceHelper_QueryInterface(IDragSourceHelper* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IDragSourceHelper_AddRef(IDragSourceHelper* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IDragSourceHelper_Release(IDragSourceHelper* This) { return This->lpVtbl->Release(This); } /*** IDragSourceHelper methods ***/ static inline HRESULT IDragSourceHelper_InitializeFromBitmap(IDragSourceHelper* This,LPSHDRAGIMAGE pshdi,IDataObject *pDataObject) { return This->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject); } static inline HRESULT IDragSourceHelper_InitializeFromWindow(IDragSourceHelper* This,HWND hwnd,POINT *ppt,IDataObject *pDataObject) { return This->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject); } #endif #endif #endif #endif /* __IDragSourceHelper_INTERFACE_DEFINED__ */ typedef enum DSH_FLAGS { DSH_ALLOWDROPDESCRIPTIONTEXT = 0x1 } DSH_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(DSH_FLAGS) /***************************************************************************** * IDragSourceHelper2 interface */ #ifndef __IDragSourceHelper2_INTERFACE_DEFINED__ #define __IDragSourceHelper2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDragSourceHelper2, 0x83e07d0d, 0x0c5f, 0x4163, 0xbf,0x1a, 0x60,0xb2,0x74,0x05,0x1e,0x40); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("83e07d0d-0c5f-4163-bf1a-60b274051e40") IDragSourceHelper2 : public IDragSourceHelper { virtual HRESULT STDMETHODCALLTYPE SetFlags( DWORD dwFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDragSourceHelper2, 0x83e07d0d, 0x0c5f, 0x4163, 0xbf,0x1a, 0x60,0xb2,0x74,0x05,0x1e,0x40) #endif #else typedef struct IDragSourceHelper2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDragSourceHelper2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDragSourceHelper2 *This); ULONG (STDMETHODCALLTYPE *Release)( IDragSourceHelper2 *This); /*** IDragSourceHelper methods ***/ HRESULT (STDMETHODCALLTYPE *InitializeFromBitmap)( IDragSourceHelper2 *This, LPSHDRAGIMAGE pshdi, IDataObject *pDataObject); HRESULT (STDMETHODCALLTYPE *InitializeFromWindow)( IDragSourceHelper2 *This, HWND hwnd, POINT *ppt, IDataObject *pDataObject); /*** IDragSourceHelper2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetFlags)( IDragSourceHelper2 *This, DWORD dwFlags); END_INTERFACE } IDragSourceHelper2Vtbl; interface IDragSourceHelper2 { CONST_VTBL IDragSourceHelper2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDragSourceHelper2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDragSourceHelper2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDragSourceHelper2_Release(This) (This)->lpVtbl->Release(This) /*** IDragSourceHelper methods ***/ #define IDragSourceHelper2_InitializeFromBitmap(This,pshdi,pDataObject) (This)->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject) #define IDragSourceHelper2_InitializeFromWindow(This,hwnd,ppt,pDataObject) (This)->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject) /*** IDragSourceHelper2 methods ***/ #define IDragSourceHelper2_SetFlags(This,dwFlags) (This)->lpVtbl->SetFlags(This,dwFlags) #else /*** IUnknown methods ***/ static inline HRESULT IDragSourceHelper2_QueryInterface(IDragSourceHelper2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IDragSourceHelper2_AddRef(IDragSourceHelper2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IDragSourceHelper2_Release(IDragSourceHelper2* This) { return This->lpVtbl->Release(This); } /*** IDragSourceHelper methods ***/ static inline HRESULT IDragSourceHelper2_InitializeFromBitmap(IDragSourceHelper2* This,LPSHDRAGIMAGE pshdi,IDataObject *pDataObject) { return This->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject); } static inline HRESULT IDragSourceHelper2_InitializeFromWindow(IDragSourceHelper2* This,HWND hwnd,POINT *ppt,IDataObject *pDataObject) { return This->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject); } /*** IDragSourceHelper2 methods ***/ static inline HRESULT IDragSourceHelper2_SetFlags(IDragSourceHelper2* This,DWORD dwFlags) { return This->lpVtbl->SetFlags(This,dwFlags); } #endif #endif #endif #endif /* __IDragSourceHelper2_INTERFACE_DEFINED__ */ /***************************************************************************** * IDropTargetHelper interface */ #ifndef __IDropTargetHelper_INTERFACE_DEFINED__ #define __IDropTargetHelper_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDropTargetHelper, 0x4657278b, 0x411b, 0x11d2, 0x83,0x9a, 0x00,0xc0,0x4f,0xd9,0x18,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4657278b-411b-11d2-839a-00c04fd918d0") IDropTargetHelper : public IUnknown { virtual HRESULT STDMETHODCALLTYPE DragEnter( HWND hwndTarget, IDataObject *pDataObject, POINT *ppt, DWORD dwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE DragLeave( ) = 0; virtual HRESULT STDMETHODCALLTYPE DragOver( POINT *ppt, DWORD dwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE Drop( IDataObject *pDataObject, POINT *ppt, DWORD dwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE Show( BOOL fShow) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDropTargetHelper, 0x4657278b, 0x411b, 0x11d2, 0x83,0x9a, 0x00,0xc0,0x4f,0xd9,0x18,0xd0) #endif #else typedef struct IDropTargetHelperVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDropTargetHelper *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDropTargetHelper *This); ULONG (STDMETHODCALLTYPE *Release)( IDropTargetHelper *This); /*** IDropTargetHelper methods ***/ HRESULT (STDMETHODCALLTYPE *DragEnter)( IDropTargetHelper *This, HWND hwndTarget, IDataObject *pDataObject, POINT *ppt, DWORD dwEffect); HRESULT (STDMETHODCALLTYPE *DragLeave)( IDropTargetHelper *This); HRESULT (STDMETHODCALLTYPE *DragOver)( IDropTargetHelper *This, POINT *ppt, DWORD dwEffect); HRESULT (STDMETHODCALLTYPE *Drop)( IDropTargetHelper *This, IDataObject *pDataObject, POINT *ppt, DWORD dwEffect); HRESULT (STDMETHODCALLTYPE *Show)( IDropTargetHelper *This, BOOL fShow); END_INTERFACE } IDropTargetHelperVtbl; interface IDropTargetHelper { CONST_VTBL IDropTargetHelperVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDropTargetHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDropTargetHelper_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDropTargetHelper_Release(This) (This)->lpVtbl->Release(This) /*** IDropTargetHelper methods ***/ #define IDropTargetHelper_DragEnter(This,hwndTarget,pDataObject,ppt,dwEffect) (This)->lpVtbl->DragEnter(This,hwndTarget,pDataObject,ppt,dwEffect) #define IDropTargetHelper_DragLeave(This) (This)->lpVtbl->DragLeave(This) #define IDropTargetHelper_DragOver(This,ppt,dwEffect) (This)->lpVtbl->DragOver(This,ppt,dwEffect) #define IDropTargetHelper_Drop(This,pDataObject,ppt,dwEffect) (This)->lpVtbl->Drop(This,pDataObject,ppt,dwEffect) #define IDropTargetHelper_Show(This,fShow) (This)->lpVtbl->Show(This,fShow) #else /*** IUnknown methods ***/ static inline HRESULT IDropTargetHelper_QueryInterface(IDropTargetHelper* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IDropTargetHelper_AddRef(IDropTargetHelper* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IDropTargetHelper_Release(IDropTargetHelper* This) { return This->lpVtbl->Release(This); } /*** IDropTargetHelper methods ***/ static inline HRESULT IDropTargetHelper_DragEnter(IDropTargetHelper* This,HWND hwndTarget,IDataObject *pDataObject,POINT *ppt,DWORD dwEffect) { return This->lpVtbl->DragEnter(This,hwndTarget,pDataObject,ppt,dwEffect); } static inline HRESULT IDropTargetHelper_DragLeave(IDropTargetHelper* This) { return This->lpVtbl->DragLeave(This); } static inline HRESULT IDropTargetHelper_DragOver(IDropTargetHelper* This,POINT *ppt,DWORD dwEffect) { return This->lpVtbl->DragOver(This,ppt,dwEffect); } static inline HRESULT IDropTargetHelper_Drop(IDropTargetHelper* This,IDataObject *pDataObject,POINT *ppt,DWORD dwEffect) { return This->lpVtbl->Drop(This,pDataObject,ppt,dwEffect); } static inline HRESULT IDropTargetHelper_Show(IDropTargetHelper* This,BOOL fShow) { return This->lpVtbl->Show(This,fShow); } #endif #endif #endif #endif /* __IDropTargetHelper_INTERFACE_DEFINED__ */ /***************************************************************************** * IContextMenu interface */ #ifndef __IContextMenu_INTERFACE_DEFINED__ #define __IContextMenu_INTERFACE_DEFINED__ #define CMF_NORMAL 0x00000000 #define CMF_DEFAULTONLY 0x00000001 #define CMF_VERBSONLY 0x00000002 #define CMF_EXPLORE 0x00000004 #define CMF_NOVERBS 0x00000008 #define CMF_CANRENAME 0x00000010 #define CMF_NODEFAULT 0x00000020 #define CMF_INCLUDESTATIC 0x00000040 #define CMF_ITEMMENU 0x00000080 #define CMF_EXTENDEDVERBS 0x00000100 #define CMF_DISABLEDVERBS 0x00000200 #define CMF_ASYNCVERBSTATE 0x00000400 #define CMF_OPTIMIZEFORINVOKE 0x00000800 #define CMF_SYNCCASCADEMENU 0x00001000 #define CMF_DONOTPICKDEFAULT 0x00002000 #define CMF_RESERVED 0xffff0000 #define GCS_VERBA 0x00000000 #define GCS_HELPTEXTA 0x00000001 #define GCS_VALIDATEA 0x00000002 #define GCS_VERBW 0x00000004 #define GCS_HELPTEXTW 0x00000005 #define GCS_VALIDATEW 0x00000006 #define GCS_UNICODE 0x00000004 #define GCS_VERB WINELIB_NAME_AW(GCS_VERB) #define GCS_HELPTEXT WINELIB_NAME_AW(GCS_HELPTEXT) #define GCS_VALIDATE WINELIB_NAME_AW(GCS_VALIDATE) #define CMDSTR_NEWFOLDERA "NewFolder" #define CMDSTR_VIEWLISTA "ViewList" #define CMDSTR_VIEWDETAILSA "ViewDetails" #if defined(_MSC_VER) || defined(__MINGW32__) # define CMDSTR_NEWFOLDERW L"NewFolder" # define CMDSTR_VIEWLISTW L"ViewList" # define CMDSTR_VIEWDETAILSW L"ViewDetails" #else static const WCHAR CMDSTR_NEWFOLDERW[] = {'N','e','w','F','o','l','d','e','r',0}; static const WCHAR CMDSTR_VIEWLISTW [] = {'V','i','e','w','L','i','s','t',0}; static const WCHAR CMDSTR_VIEWDETAILSW[] = {'V','i','e','w','D','e','t','a','i','l','s',0}; #endif #define CMDSTR_NEWFOLDER WINELIB_NAME_AW(CMDSTR_NEWFOLDER) #define CMDSTR_VIEWLIST WINELIB_NAME_AW(CMDSTR_VIEWLIST) #define CMDSTR_VIEWDETAILS WINELIB_NAME_AW(CMDSTR_VIEWDETAILS) #define CMIC_MASK_HOTKEY SEE_MASK_HOTKEY #define CMIC_MASK_ICON SEE_MASK_ICON #define CMIC_MASK_FLAG_NO_UI SEE_MASK_FLAG_NO_UI #define CMIC_MASK_UNICODE SEE_MASK_UNICODE #define CMIC_MASK_NO_CONSOLE SEE_MASK_NO_CONSOLE #define CMIC_MASK_HASLINKNAME SEE_MASK_HASLINKNAME #define CMIC_MASK_FLAG_SEP_VDM SEE_MASK_FLAG_SEPVDM #define CMIC_MASK_HASTITLE SEE_MASK_HASTITLE #define CMIC_MASK_ASYNCOK SEE_MASK_ASYNCOK #define CMIC_MASK_NOASYNC SEE_MASK_NOASYNC #define CMIC_MASK_SHIFT_DOWN 0x10000000 #define CMIC_MASK_PTINVOKE 0x20000000 #define CMIC_MASK_CONTROL_DOWN 0x40000000 #define CMIC_MASK_FLAG_LOG_USAGE SEE_MASK_FLAG_LOG_USAGE #define CMIC_MASK_NOZONECHECKS SEE_MASK_NOZONECHECKS typedef IContextMenu *LPCONTEXTMENU; typedef struct tagCMINVOKECOMMANDINFO { DWORD cbSize; DWORD fMask; HWND hwnd; LPCSTR lpVerb; LPCSTR lpParameters; LPCSTR lpDirectory; INT nShow; DWORD dwHotKey; HANDLE hIcon; } CMINVOKECOMMANDINFO; typedef struct tagCMINVOKECOMMANDINFO *LPCMINVOKECOMMANDINFO; typedef struct tagCMInvokeCommandInfoEx { DWORD cbSize; DWORD fMask; HWND hwnd; LPCSTR lpVerb; LPCSTR lpParameters; LPCSTR lpDirectory; INT nShow; DWORD dwHotKey; HANDLE hIcon; LPCSTR lpTitle; LPCWSTR lpVerbW; LPCWSTR lpParametersW; LPCWSTR lpDirectoryW; LPCWSTR lpTitleW; POINT ptInvoke; } CMINVOKECOMMANDINFOEX; typedef struct tagCMInvokeCommandInfoEx *LPCMINVOKECOMMANDINFOEX; DEFINE_GUID(IID_IContextMenu, 0x000214e4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e4-0000-0000-c000-000000000046") IContextMenu : public IUnknown { virtual HRESULT STDMETHODCALLTYPE QueryContextMenu( HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags) = 0; virtual HRESULT STDMETHODCALLTYPE InvokeCommand( LPCMINVOKECOMMANDINFO lpici) = 0; virtual HRESULT STDMETHODCALLTYPE GetCommandString( UINT_PTR idCmd, UINT uType, UINT *pwReserved, LPSTR pszName, UINT cchMax) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IContextMenu, 0x000214e4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IContextMenuVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IContextMenu *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IContextMenu *This); ULONG (STDMETHODCALLTYPE *Release)( IContextMenu *This); /*** IContextMenu methods ***/ HRESULT (STDMETHODCALLTYPE *QueryContextMenu)( IContextMenu *This, HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags); HRESULT (STDMETHODCALLTYPE *InvokeCommand)( IContextMenu *This, LPCMINVOKECOMMANDINFO lpici); HRESULT (STDMETHODCALLTYPE *GetCommandString)( IContextMenu *This, UINT_PTR idCmd, UINT uType, UINT *pwReserved, LPSTR pszName, UINT cchMax); END_INTERFACE } IContextMenuVtbl; interface IContextMenu { CONST_VTBL IContextMenuVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IContextMenu_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IContextMenu_AddRef(This) (This)->lpVtbl->AddRef(This) #define IContextMenu_Release(This) (This)->lpVtbl->Release(This) /*** IContextMenu methods ***/ #define IContextMenu_QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) (This)->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) #define IContextMenu_InvokeCommand(This,lpici) (This)->lpVtbl->InvokeCommand(This,lpici) #define IContextMenu_GetCommandString(This,idCmd,uType,pwReserved,pszName,cchMax) (This)->lpVtbl->GetCommandString(This,idCmd,uType,pwReserved,pszName,cchMax) #else /*** IUnknown methods ***/ static inline HRESULT IContextMenu_QueryInterface(IContextMenu* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IContextMenu_AddRef(IContextMenu* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IContextMenu_Release(IContextMenu* This) { return This->lpVtbl->Release(This); } /*** IContextMenu methods ***/ static inline HRESULT IContextMenu_QueryContextMenu(IContextMenu* This,HMENU hmenu,UINT indexMenu,UINT idCmdFirst,UINT idCmdLast,UINT uFlags) { return This->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags); } static inline HRESULT IContextMenu_InvokeCommand(IContextMenu* This,LPCMINVOKECOMMANDINFO lpici) { return This->lpVtbl->InvokeCommand(This,lpici); } static inline HRESULT IContextMenu_GetCommandString(IContextMenu* This,UINT_PTR idCmd,UINT uType,UINT *pwReserved,LPSTR pszName,UINT cchMax) { return This->lpVtbl->GetCommandString(This,idCmd,uType,pwReserved,pszName,cchMax); } #endif #endif #endif #endif /* __IContextMenu_INTERFACE_DEFINED__ */ /***************************************************************************** * IContextMenu2 interface */ #ifndef __IContextMenu2_INTERFACE_DEFINED__ #define __IContextMenu2_INTERFACE_DEFINED__ typedef IContextMenu2 *LPCONTEXTMENU2; DEFINE_GUID(IID_IContextMenu2, 0x000214f4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214f4-0000-0000-c000-000000000046") IContextMenu2 : public IContextMenu { virtual HRESULT STDMETHODCALLTYPE HandleMenuMsg( UINT uMsg, WPARAM wParam, LPARAM lParam) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IContextMenu2, 0x000214f4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IContextMenu2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IContextMenu2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IContextMenu2 *This); ULONG (STDMETHODCALLTYPE *Release)( IContextMenu2 *This); /*** IContextMenu methods ***/ HRESULT (STDMETHODCALLTYPE *QueryContextMenu)( IContextMenu2 *This, HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags); HRESULT (STDMETHODCALLTYPE *InvokeCommand)( IContextMenu2 *This, LPCMINVOKECOMMANDINFO lpici); HRESULT (STDMETHODCALLTYPE *GetCommandString)( IContextMenu2 *This, UINT_PTR idCmd, UINT uType, UINT *pwReserved, LPSTR pszName, UINT cchMax); /*** IContextMenu2 methods ***/ HRESULT (STDMETHODCALLTYPE *HandleMenuMsg)( IContextMenu2 *This, UINT uMsg, WPARAM wParam, LPARAM lParam); END_INTERFACE } IContextMenu2Vtbl; interface IContextMenu2 { CONST_VTBL IContextMenu2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IContextMenu2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IContextMenu2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IContextMenu2_Release(This) (This)->lpVtbl->Release(This) /*** IContextMenu methods ***/ #define IContextMenu2_QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) (This)->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) #define IContextMenu2_InvokeCommand(This,lpici) (This)->lpVtbl->InvokeCommand(This,lpici) #define IContextMenu2_GetCommandString(This,idCmd,uType,pwReserved,pszName,cchMax) (This)->lpVtbl->GetCommandString(This,idCmd,uType,pwReserved,pszName,cchMax) /*** IContextMenu2 methods ***/ #define IContextMenu2_HandleMenuMsg(This,uMsg,wParam,lParam) (This)->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam) #else /*** IUnknown methods ***/ static inline HRESULT IContextMenu2_QueryInterface(IContextMenu2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IContextMenu2_AddRef(IContextMenu2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IContextMenu2_Release(IContextMenu2* This) { return This->lpVtbl->Release(This); } /*** IContextMenu methods ***/ static inline HRESULT IContextMenu2_QueryContextMenu(IContextMenu2* This,HMENU hmenu,UINT indexMenu,UINT idCmdFirst,UINT idCmdLast,UINT uFlags) { return This->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags); } static inline HRESULT IContextMenu2_InvokeCommand(IContextMenu2* This,LPCMINVOKECOMMANDINFO lpici) { return This->lpVtbl->InvokeCommand(This,lpici); } static inline HRESULT IContextMenu2_GetCommandString(IContextMenu2* This,UINT_PTR idCmd,UINT uType,UINT *pwReserved,LPSTR pszName,UINT cchMax) { return This->lpVtbl->GetCommandString(This,idCmd,uType,pwReserved,pszName,cchMax); } /*** IContextMenu2 methods ***/ static inline HRESULT IContextMenu2_HandleMenuMsg(IContextMenu2* This,UINT uMsg,WPARAM wParam,LPARAM lParam) { return This->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam); } #endif #endif #endif #endif /* __IContextMenu2_INTERFACE_DEFINED__ */ /***************************************************************************** * IContextMenu3 interface */ #ifndef __IContextMenu3_INTERFACE_DEFINED__ #define __IContextMenu3_INTERFACE_DEFINED__ typedef IContextMenu3 *LPCONTEXTMENU3; DEFINE_GUID(IID_IContextMenu3, 0xbcfce0a0, 0xec17, 0x11d0, 0x8d,0x10, 0x00,0xa0,0xc9,0x0f,0x27,0x19); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("bcfce0a0-ec17-11d0-8d10-00a0c90f2719") IContextMenu3 : public IContextMenu2 { virtual HRESULT STDMETHODCALLTYPE HandleMenuMsg2( UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *plResult) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IContextMenu3, 0xbcfce0a0, 0xec17, 0x11d0, 0x8d,0x10, 0x00,0xa0,0xc9,0x0f,0x27,0x19) #endif #else typedef struct IContextMenu3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IContextMenu3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IContextMenu3 *This); ULONG (STDMETHODCALLTYPE *Release)( IContextMenu3 *This); /*** IContextMenu methods ***/ HRESULT (STDMETHODCALLTYPE *QueryContextMenu)( IContextMenu3 *This, HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags); HRESULT (STDMETHODCALLTYPE *InvokeCommand)( IContextMenu3 *This, LPCMINVOKECOMMANDINFO lpici); HRESULT (STDMETHODCALLTYPE *GetCommandString)( IContextMenu3 *This, UINT_PTR idCmd, UINT uType, UINT *pwReserved, LPSTR pszName, UINT cchMax); /*** IContextMenu2 methods ***/ HRESULT (STDMETHODCALLTYPE *HandleMenuMsg)( IContextMenu3 *This, UINT uMsg, WPARAM wParam, LPARAM lParam); /*** IContextMenu3 methods ***/ HRESULT (STDMETHODCALLTYPE *HandleMenuMsg2)( IContextMenu3 *This, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *plResult); END_INTERFACE } IContextMenu3Vtbl; interface IContextMenu3 { CONST_VTBL IContextMenu3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IContextMenu3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IContextMenu3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IContextMenu3_Release(This) (This)->lpVtbl->Release(This) /*** IContextMenu methods ***/ #define IContextMenu3_QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) (This)->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) #define IContextMenu3_InvokeCommand(This,lpici) (This)->lpVtbl->InvokeCommand(This,lpici) #define IContextMenu3_GetCommandString(This,idCmd,uType,pwReserved,pszName,cchMax) (This)->lpVtbl->GetCommandString(This,idCmd,uType,pwReserved,pszName,cchMax) /*** IContextMenu2 methods ***/ #define IContextMenu3_HandleMenuMsg(This,uMsg,wParam,lParam) (This)->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam) /*** IContextMenu3 methods ***/ #define IContextMenu3_HandleMenuMsg2(This,uMsg,wParam,lParam,plResult) (This)->lpVtbl->HandleMenuMsg2(This,uMsg,wParam,lParam,plResult) #else /*** IUnknown methods ***/ static inline HRESULT IContextMenu3_QueryInterface(IContextMenu3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IContextMenu3_AddRef(IContextMenu3* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IContextMenu3_Release(IContextMenu3* This) { return This->lpVtbl->Release(This); } /*** IContextMenu methods ***/ static inline HRESULT IContextMenu3_QueryContextMenu(IContextMenu3* This,HMENU hmenu,UINT indexMenu,UINT idCmdFirst,UINT idCmdLast,UINT uFlags) { return This->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags); } static inline HRESULT IContextMenu3_InvokeCommand(IContextMenu3* This,LPCMINVOKECOMMANDINFO lpici) { return This->lpVtbl->InvokeCommand(This,lpici); } static inline HRESULT IContextMenu3_GetCommandString(IContextMenu3* This,UINT_PTR idCmd,UINT uType,UINT *pwReserved,LPSTR pszName,UINT cchMax) { return This->lpVtbl->GetCommandString(This,idCmd,uType,pwReserved,pszName,cchMax); } /*** IContextMenu2 methods ***/ static inline HRESULT IContextMenu3_HandleMenuMsg(IContextMenu3* This,UINT uMsg,WPARAM wParam,LPARAM lParam) { return This->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam); } /*** IContextMenu3 methods ***/ static inline HRESULT IContextMenu3_HandleMenuMsg2(IContextMenu3* This,UINT uMsg,WPARAM wParam,LPARAM lParam,LRESULT *plResult) { return This->lpVtbl->HandleMenuMsg2(This,uMsg,wParam,lParam,plResult); } #endif #endif #endif #endif /* __IContextMenu3_INTERFACE_DEFINED__ */ /***************************************************************************** * IContextMenuCB interface */ #ifndef __IContextMenuCB_INTERFACE_DEFINED__ #define __IContextMenuCB_INTERFACE_DEFINED__ DEFINE_GUID(IID_IContextMenuCB, 0x3409e930, 0x5a39, 0x11d1, 0x83,0xfa, 0x00,0xa0,0xc9,0x0d,0xc8,0x49); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3409e930-5a39-11d1-83fa-00a0c90dc849") IContextMenuCB : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CallBack( IShellFolder *psf, HWND hwndOwner, IDataObject *pdtobj, UINT uMsg, WPARAM wParam, LPARAM lParam) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IContextMenuCB, 0x3409e930, 0x5a39, 0x11d1, 0x83,0xfa, 0x00,0xa0,0xc9,0x0d,0xc8,0x49) #endif #else typedef struct IContextMenuCBVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IContextMenuCB *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IContextMenuCB *This); ULONG (STDMETHODCALLTYPE *Release)( IContextMenuCB *This); /*** IContextMenuCB methods ***/ HRESULT (STDMETHODCALLTYPE *CallBack)( IContextMenuCB *This, IShellFolder *psf, HWND hwndOwner, IDataObject *pdtobj, UINT uMsg, WPARAM wParam, LPARAM lParam); END_INTERFACE } IContextMenuCBVtbl; interface IContextMenuCB { CONST_VTBL IContextMenuCBVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IContextMenuCB_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IContextMenuCB_AddRef(This) (This)->lpVtbl->AddRef(This) #define IContextMenuCB_Release(This) (This)->lpVtbl->Release(This) /*** IContextMenuCB methods ***/ #define IContextMenuCB_CallBack(This,psf,hwndOwner,pdtobj,uMsg,wParam,lParam) (This)->lpVtbl->CallBack(This,psf,hwndOwner,pdtobj,uMsg,wParam,lParam) #else /*** IUnknown methods ***/ static inline HRESULT IContextMenuCB_QueryInterface(IContextMenuCB* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IContextMenuCB_AddRef(IContextMenuCB* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IContextMenuCB_Release(IContextMenuCB* This) { return This->lpVtbl->Release(This); } /*** IContextMenuCB methods ***/ static inline HRESULT IContextMenuCB_CallBack(IContextMenuCB* This,IShellFolder *psf,HWND hwndOwner,IDataObject *pdtobj,UINT uMsg,WPARAM wParam,LPARAM lParam) { return This->lpVtbl->CallBack(This,psf,hwndOwner,pdtobj,uMsg,wParam,lParam); } #endif #endif #endif #endif /* __IContextMenuCB_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellExecuteHookA interface */ #ifndef __IShellExecuteHookA_INTERFACE_DEFINED__ #define __IShellExecuteHookA_INTERFACE_DEFINED__ struct _SHELLEXECUTEINFOA; DEFINE_GUID(IID_IShellExecuteHookA, 0x000214f5, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214f5-0000-0000-c000-000000000046") IShellExecuteHookA : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Execute( struct _SHELLEXECUTEINFOA *pei) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellExecuteHookA, 0x000214f5, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellExecuteHookAVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellExecuteHookA *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellExecuteHookA *This); ULONG (STDMETHODCALLTYPE *Release)( IShellExecuteHookA *This); /*** IShellExecuteHookA methods ***/ HRESULT (STDMETHODCALLTYPE *Execute)( IShellExecuteHookA *This, struct _SHELLEXECUTEINFOA *pei); END_INTERFACE } IShellExecuteHookAVtbl; interface IShellExecuteHookA { CONST_VTBL IShellExecuteHookAVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellExecuteHookA_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellExecuteHookA_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellExecuteHookA_Release(This) (This)->lpVtbl->Release(This) /*** IShellExecuteHookA methods ***/ #define IShellExecuteHookA_Execute(This,pei) (This)->lpVtbl->Execute(This,pei) #else /*** IUnknown methods ***/ static inline HRESULT IShellExecuteHookA_QueryInterface(IShellExecuteHookA* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellExecuteHookA_AddRef(IShellExecuteHookA* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellExecuteHookA_Release(IShellExecuteHookA* This) { return This->lpVtbl->Release(This); } /*** IShellExecuteHookA methods ***/ static inline HRESULT IShellExecuteHookA_Execute(IShellExecuteHookA* This,struct _SHELLEXECUTEINFOA *pei) { return This->lpVtbl->Execute(This,pei); } #endif #endif #endif #endif /* __IShellExecuteHookA_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellExecuteHookW interface */ #ifndef __IShellExecuteHookW_INTERFACE_DEFINED__ #define __IShellExecuteHookW_INTERFACE_DEFINED__ struct _SHELLEXECUTEINFOW; DEFINE_GUID(IID_IShellExecuteHookW, 0x000214fb, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214fb-0000-0000-c000-000000000046") IShellExecuteHookW : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Execute( struct _SHELLEXECUTEINFOW *pei) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellExecuteHookW, 0x000214fb, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IShellExecuteHookWVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellExecuteHookW *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellExecuteHookW *This); ULONG (STDMETHODCALLTYPE *Release)( IShellExecuteHookW *This); /*** IShellExecuteHookW methods ***/ HRESULT (STDMETHODCALLTYPE *Execute)( IShellExecuteHookW *This, struct _SHELLEXECUTEINFOW *pei); END_INTERFACE } IShellExecuteHookWVtbl; interface IShellExecuteHookW { CONST_VTBL IShellExecuteHookWVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellExecuteHookW_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellExecuteHookW_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellExecuteHookW_Release(This) (This)->lpVtbl->Release(This) /*** IShellExecuteHookW methods ***/ #define IShellExecuteHookW_Execute(This,pei) (This)->lpVtbl->Execute(This,pei) #else /*** IUnknown methods ***/ static inline HRESULT IShellExecuteHookW_QueryInterface(IShellExecuteHookW* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellExecuteHookW_AddRef(IShellExecuteHookW* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellExecuteHookW_Release(IShellExecuteHookW* This) { return This->lpVtbl->Release(This); } /*** IShellExecuteHookW methods ***/ static inline HRESULT IShellExecuteHookW_Execute(IShellExecuteHookW* This,struct _SHELLEXECUTEINFOW *pei) { return This->lpVtbl->Execute(This,pei); } #endif #endif #endif #endif /* __IShellExecuteHookW_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellLinkDataList interface */ #ifndef __IShellLinkDataList_INTERFACE_DEFINED__ #define __IShellLinkDataList_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellLinkDataList, 0x45e2b4ae, 0xb1c3, 0x11d0, 0xb9,0x2f, 0x00,0xa0,0xc9,0x03,0x12,0xe1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("45e2b4ae-b1c3-11d0-b92f-00a0c90312e1") IShellLinkDataList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AddDataBlock( void *pDataBlock) = 0; virtual HRESULT STDMETHODCALLTYPE CopyDataBlock( DWORD dwSig, void **ppDataBlock) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveDataBlock( DWORD dwSig) = 0; virtual HRESULT STDMETHODCALLTYPE GetFlags( DWORD *pdwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetFlags( DWORD dwFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellLinkDataList, 0x45e2b4ae, 0xb1c3, 0x11d0, 0xb9,0x2f, 0x00,0xa0,0xc9,0x03,0x12,0xe1) #endif #else typedef struct IShellLinkDataListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellLinkDataList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellLinkDataList *This); ULONG (STDMETHODCALLTYPE *Release)( IShellLinkDataList *This); /*** IShellLinkDataList methods ***/ HRESULT (STDMETHODCALLTYPE *AddDataBlock)( IShellLinkDataList *This, void *pDataBlock); HRESULT (STDMETHODCALLTYPE *CopyDataBlock)( IShellLinkDataList *This, DWORD dwSig, void **ppDataBlock); HRESULT (STDMETHODCALLTYPE *RemoveDataBlock)( IShellLinkDataList *This, DWORD dwSig); HRESULT (STDMETHODCALLTYPE *GetFlags)( IShellLinkDataList *This, DWORD *pdwFlags); HRESULT (STDMETHODCALLTYPE *SetFlags)( IShellLinkDataList *This, DWORD dwFlags); END_INTERFACE } IShellLinkDataListVtbl; interface IShellLinkDataList { CONST_VTBL IShellLinkDataListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellLinkDataList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellLinkDataList_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellLinkDataList_Release(This) (This)->lpVtbl->Release(This) /*** IShellLinkDataList methods ***/ #define IShellLinkDataList_AddDataBlock(This,pDataBlock) (This)->lpVtbl->AddDataBlock(This,pDataBlock) #define IShellLinkDataList_CopyDataBlock(This,dwSig,ppDataBlock) (This)->lpVtbl->CopyDataBlock(This,dwSig,ppDataBlock) #define IShellLinkDataList_RemoveDataBlock(This,dwSig) (This)->lpVtbl->RemoveDataBlock(This,dwSig) #define IShellLinkDataList_GetFlags(This,pdwFlags) (This)->lpVtbl->GetFlags(This,pdwFlags) #define IShellLinkDataList_SetFlags(This,dwFlags) (This)->lpVtbl->SetFlags(This,dwFlags) #else /*** IUnknown methods ***/ static inline HRESULT IShellLinkDataList_QueryInterface(IShellLinkDataList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellLinkDataList_AddRef(IShellLinkDataList* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellLinkDataList_Release(IShellLinkDataList* This) { return This->lpVtbl->Release(This); } /*** IShellLinkDataList methods ***/ static inline HRESULT IShellLinkDataList_AddDataBlock(IShellLinkDataList* This,void *pDataBlock) { return This->lpVtbl->AddDataBlock(This,pDataBlock); } static inline HRESULT IShellLinkDataList_CopyDataBlock(IShellLinkDataList* This,DWORD dwSig,void **ppDataBlock) { return This->lpVtbl->CopyDataBlock(This,dwSig,ppDataBlock); } static inline HRESULT IShellLinkDataList_RemoveDataBlock(IShellLinkDataList* This,DWORD dwSig) { return This->lpVtbl->RemoveDataBlock(This,dwSig); } static inline HRESULT IShellLinkDataList_GetFlags(IShellLinkDataList* This,DWORD *pdwFlags) { return This->lpVtbl->GetFlags(This,pdwFlags); } static inline HRESULT IShellLinkDataList_SetFlags(IShellLinkDataList* This,DWORD dwFlags) { return This->lpVtbl->SetFlags(This,dwFlags); } #endif #endif #endif #endif /* __IShellLinkDataList_INTERFACE_DEFINED__ */ /***************************************************************************** * IResolveShellLink interface */ #ifndef __IResolveShellLink_INTERFACE_DEFINED__ #define __IResolveShellLink_INTERFACE_DEFINED__ DEFINE_GUID(IID_IResolveShellLink, 0x5cd52983, 0x9449, 0x11d2, 0x96,0x3a, 0x00,0xc0,0x4f,0x79,0xad,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("5cd52983-9449-11d2-963a-00c04f79adf0") IResolveShellLink : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ResolveShellLink( IUnknown *punk, HWND hwnd, DWORD fFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IResolveShellLink, 0x5cd52983, 0x9449, 0x11d2, 0x96,0x3a, 0x00,0xc0,0x4f,0x79,0xad,0xf0) #endif #else typedef struct IResolveShellLinkVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IResolveShellLink *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IResolveShellLink *This); ULONG (STDMETHODCALLTYPE *Release)( IResolveShellLink *This); /*** IResolveShellLink methods ***/ HRESULT (STDMETHODCALLTYPE *ResolveShellLink)( IResolveShellLink *This, IUnknown *punk, HWND hwnd, DWORD fFlags); END_INTERFACE } IResolveShellLinkVtbl; interface IResolveShellLink { CONST_VTBL IResolveShellLinkVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IResolveShellLink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IResolveShellLink_AddRef(This) (This)->lpVtbl->AddRef(This) #define IResolveShellLink_Release(This) (This)->lpVtbl->Release(This) /*** IResolveShellLink methods ***/ #define IResolveShellLink_ResolveShellLink(This,punk,hwnd,fFlags) (This)->lpVtbl->ResolveShellLink(This,punk,hwnd,fFlags) #else /*** IUnknown methods ***/ static inline HRESULT IResolveShellLink_QueryInterface(IResolveShellLink* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IResolveShellLink_AddRef(IResolveShellLink* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IResolveShellLink_Release(IResolveShellLink* This) { return This->lpVtbl->Release(This); } /*** IResolveShellLink methods ***/ static inline HRESULT IResolveShellLink_ResolveShellLink(IResolveShellLink* This,IUnknown *punk,HWND hwnd,DWORD fFlags) { return This->lpVtbl->ResolveShellLink(This,punk,hwnd,fFlags); } #endif #endif #endif #endif /* __IResolveShellLink_INTERFACE_DEFINED__ */ /***************************************************************************** * IURLSearchHook interface */ #ifndef __IURLSearchHook_INTERFACE_DEFINED__ #define __IURLSearchHook_INTERFACE_DEFINED__ DEFINE_GUID(IID_IURLSearchHook, 0xac60f6a0, 0x0fd9, 0x11d0, 0x99,0xcb, 0x00,0xc0,0x4f,0xd6,0x44,0x97); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ac60f6a0-0fd9-11d0-99cb-00c04fd64497") IURLSearchHook : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Translate( LPWSTR lpwszSearchURL, DWORD cchBufferSize) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IURLSearchHook, 0xac60f6a0, 0x0fd9, 0x11d0, 0x99,0xcb, 0x00,0xc0,0x4f,0xd6,0x44,0x97) #endif #else typedef struct IURLSearchHookVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IURLSearchHook *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IURLSearchHook *This); ULONG (STDMETHODCALLTYPE *Release)( IURLSearchHook *This); /*** IURLSearchHook methods ***/ HRESULT (STDMETHODCALLTYPE *Translate)( IURLSearchHook *This, LPWSTR lpwszSearchURL, DWORD cchBufferSize); END_INTERFACE } IURLSearchHookVtbl; interface IURLSearchHook { CONST_VTBL IURLSearchHookVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IURLSearchHook_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IURLSearchHook_AddRef(This) (This)->lpVtbl->AddRef(This) #define IURLSearchHook_Release(This) (This)->lpVtbl->Release(This) /*** IURLSearchHook methods ***/ #define IURLSearchHook_Translate(This,lpwszSearchURL,cchBufferSize) (This)->lpVtbl->Translate(This,lpwszSearchURL,cchBufferSize) #else /*** IUnknown methods ***/ static inline HRESULT IURLSearchHook_QueryInterface(IURLSearchHook* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IURLSearchHook_AddRef(IURLSearchHook* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IURLSearchHook_Release(IURLSearchHook* This) { return This->lpVtbl->Release(This); } /*** IURLSearchHook methods ***/ static inline HRESULT IURLSearchHook_Translate(IURLSearchHook* This,LPWSTR lpwszSearchURL,DWORD cchBufferSize) { return This->lpVtbl->Translate(This,lpwszSearchURL,cchBufferSize); } #endif #endif #endif #endif /* __IURLSearchHook_INTERFACE_DEFINED__ */ /***************************************************************************** * ISearchContext interface */ #ifndef __ISearchContext_INTERFACE_DEFINED__ #define __ISearchContext_INTERFACE_DEFINED__ DEFINE_GUID(IID_ISearchContext, 0x09f656a2, 0x41af, 0x480c, 0x88,0xf7, 0x16,0xcc,0x0d,0x16,0x46,0x15); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("09f656a2-41af-480c-88f7-16cc0d164615") ISearchContext : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetSearchUrl( BSTR *pbstrSearchUrl) = 0; virtual HRESULT STDMETHODCALLTYPE GetSearchText( BSTR *pbstrSearchText) = 0; virtual HRESULT STDMETHODCALLTYPE GetSearchStyle( DWORD *pdwSearchStyle) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ISearchContext, 0x09f656a2, 0x41af, 0x480c, 0x88,0xf7, 0x16,0xcc,0x0d,0x16,0x46,0x15) #endif #else typedef struct ISearchContextVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ISearchContext *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ISearchContext *This); ULONG (STDMETHODCALLTYPE *Release)( ISearchContext *This); /*** ISearchContext methods ***/ HRESULT (STDMETHODCALLTYPE *GetSearchUrl)( ISearchContext *This, BSTR *pbstrSearchUrl); HRESULT (STDMETHODCALLTYPE *GetSearchText)( ISearchContext *This, BSTR *pbstrSearchText); HRESULT (STDMETHODCALLTYPE *GetSearchStyle)( ISearchContext *This, DWORD *pdwSearchStyle); END_INTERFACE } ISearchContextVtbl; interface ISearchContext { CONST_VTBL ISearchContextVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ISearchContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ISearchContext_AddRef(This) (This)->lpVtbl->AddRef(This) #define ISearchContext_Release(This) (This)->lpVtbl->Release(This) /*** ISearchContext methods ***/ #define ISearchContext_GetSearchUrl(This,pbstrSearchUrl) (This)->lpVtbl->GetSearchUrl(This,pbstrSearchUrl) #define ISearchContext_GetSearchText(This,pbstrSearchText) (This)->lpVtbl->GetSearchText(This,pbstrSearchText) #define ISearchContext_GetSearchStyle(This,pdwSearchStyle) (This)->lpVtbl->GetSearchStyle(This,pdwSearchStyle) #else /*** IUnknown methods ***/ static inline HRESULT ISearchContext_QueryInterface(ISearchContext* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ISearchContext_AddRef(ISearchContext* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ISearchContext_Release(ISearchContext* This) { return This->lpVtbl->Release(This); } /*** ISearchContext methods ***/ static inline HRESULT ISearchContext_GetSearchUrl(ISearchContext* This,BSTR *pbstrSearchUrl) { return This->lpVtbl->GetSearchUrl(This,pbstrSearchUrl); } static inline HRESULT ISearchContext_GetSearchText(ISearchContext* This,BSTR *pbstrSearchText) { return This->lpVtbl->GetSearchText(This,pbstrSearchText); } static inline HRESULT ISearchContext_GetSearchStyle(ISearchContext* This,DWORD *pdwSearchStyle) { return This->lpVtbl->GetSearchStyle(This,pdwSearchStyle); } #endif #endif #endif #endif /* __ISearchContext_INTERFACE_DEFINED__ */ /***************************************************************************** * IURLSearchHook2 interface */ #ifndef __IURLSearchHook2_INTERFACE_DEFINED__ #define __IURLSearchHook2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IURLSearchHook2, 0x5ee44da4, 0x6d32, 0x46e3, 0x86,0xbc, 0x07,0x54,0x0d,0xed,0xd0,0xe0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("5ee44da4-6d32-46e3-86bc-07540dedd0e0") IURLSearchHook2 : public IURLSearchHook { virtual HRESULT STDMETHODCALLTYPE TranslateWithSearchContext( LPWSTR lpwszSearchURL, DWORD cchBufferSize, ISearchContext *pSearchContext) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IURLSearchHook2, 0x5ee44da4, 0x6d32, 0x46e3, 0x86,0xbc, 0x07,0x54,0x0d,0xed,0xd0,0xe0) #endif #else typedef struct IURLSearchHook2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IURLSearchHook2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IURLSearchHook2 *This); ULONG (STDMETHODCALLTYPE *Release)( IURLSearchHook2 *This); /*** IURLSearchHook methods ***/ HRESULT (STDMETHODCALLTYPE *Translate)( IURLSearchHook2 *This, LPWSTR lpwszSearchURL, DWORD cchBufferSize); /*** IURLSearchHook2 methods ***/ HRESULT (STDMETHODCALLTYPE *TranslateWithSearchContext)( IURLSearchHook2 *This, LPWSTR lpwszSearchURL, DWORD cchBufferSize, ISearchContext *pSearchContext); END_INTERFACE } IURLSearchHook2Vtbl; interface IURLSearchHook2 { CONST_VTBL IURLSearchHook2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IURLSearchHook2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IURLSearchHook2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IURLSearchHook2_Release(This) (This)->lpVtbl->Release(This) /*** IURLSearchHook methods ***/ #define IURLSearchHook2_Translate(This,lpwszSearchURL,cchBufferSize) (This)->lpVtbl->Translate(This,lpwszSearchURL,cchBufferSize) /*** IURLSearchHook2 methods ***/ #define IURLSearchHook2_TranslateWithSearchContext(This,lpwszSearchURL,cchBufferSize,pSearchContext) (This)->lpVtbl->TranslateWithSearchContext(This,lpwszSearchURL,cchBufferSize,pSearchContext) #else /*** IUnknown methods ***/ static inline HRESULT IURLSearchHook2_QueryInterface(IURLSearchHook2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IURLSearchHook2_AddRef(IURLSearchHook2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IURLSearchHook2_Release(IURLSearchHook2* This) { return This->lpVtbl->Release(This); } /*** IURLSearchHook methods ***/ static inline HRESULT IURLSearchHook2_Translate(IURLSearchHook2* This,LPWSTR lpwszSearchURL,DWORD cchBufferSize) { return This->lpVtbl->Translate(This,lpwszSearchURL,cchBufferSize); } /*** IURLSearchHook2 methods ***/ static inline HRESULT IURLSearchHook2_TranslateWithSearchContext(IURLSearchHook2* This,LPWSTR lpwszSearchURL,DWORD cchBufferSize,ISearchContext *pSearchContext) { return This->lpVtbl->TranslateWithSearchContext(This,lpwszSearchURL,cchBufferSize,pSearchContext); } #endif #endif #endif #endif /* __IURLSearchHook2_INTERFACE_DEFINED__ */ #define INewShortcutHook WINELIB_NAME_AW(INewShortcutHook) /***************************************************************************** * INewShortcutHookA interface */ #ifndef __INewShortcutHookA_INTERFACE_DEFINED__ #define __INewShortcutHookA_INTERFACE_DEFINED__ DEFINE_GUID(IID_INewShortcutHookA, 0x000214e1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214e1-0000-0000-c000-000000000046") INewShortcutHookA : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetReferent( LPCSTR pcszReferent, HWND hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE GetReferent( LPSTR pcszReferent, int cchReferent) = 0; virtual HRESULT STDMETHODCALLTYPE SetFolder( LPCSTR pcszReferent) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolder( LPSTR pcszReferent, int cchFolder) = 0; virtual HRESULT STDMETHODCALLTYPE GetName( LPSTR pszName, int cchName) = 0; virtual HRESULT STDMETHODCALLTYPE GetExtension( LPSTR pszExtension, int cchExtension) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INewShortcutHookA, 0x000214e1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct INewShortcutHookAVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INewShortcutHookA *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INewShortcutHookA *This); ULONG (STDMETHODCALLTYPE *Release)( INewShortcutHookA *This); /*** INewShortcutHookA methods ***/ HRESULT (STDMETHODCALLTYPE *SetReferent)( INewShortcutHookA *This, LPCSTR pcszReferent, HWND hwnd); HRESULT (STDMETHODCALLTYPE *GetReferent)( INewShortcutHookA *This, LPSTR pcszReferent, int cchReferent); HRESULT (STDMETHODCALLTYPE *SetFolder)( INewShortcutHookA *This, LPCSTR pcszReferent); HRESULT (STDMETHODCALLTYPE *GetFolder)( INewShortcutHookA *This, LPSTR pcszReferent, int cchFolder); HRESULT (STDMETHODCALLTYPE *GetName)( INewShortcutHookA *This, LPSTR pszName, int cchName); HRESULT (STDMETHODCALLTYPE *GetExtension)( INewShortcutHookA *This, LPSTR pszExtension, int cchExtension); END_INTERFACE } INewShortcutHookAVtbl; interface INewShortcutHookA { CONST_VTBL INewShortcutHookAVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INewShortcutHookA_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INewShortcutHookA_AddRef(This) (This)->lpVtbl->AddRef(This) #define INewShortcutHookA_Release(This) (This)->lpVtbl->Release(This) /*** INewShortcutHookA methods ***/ #define INewShortcutHookA_SetReferent(This,pcszReferent,hwnd) (This)->lpVtbl->SetReferent(This,pcszReferent,hwnd) #define INewShortcutHookA_GetReferent(This,pcszReferent,cchReferent) (This)->lpVtbl->GetReferent(This,pcszReferent,cchReferent) #define INewShortcutHookA_SetFolder(This,pcszReferent) (This)->lpVtbl->SetFolder(This,pcszReferent) #define INewShortcutHookA_GetFolder(This,pcszReferent,cchFolder) (This)->lpVtbl->GetFolder(This,pcszReferent,cchFolder) #define INewShortcutHookA_GetName(This,pszName,cchName) (This)->lpVtbl->GetName(This,pszName,cchName) #define INewShortcutHookA_GetExtension(This,pszExtension,cchExtension) (This)->lpVtbl->GetExtension(This,pszExtension,cchExtension) #else /*** IUnknown methods ***/ static inline HRESULT INewShortcutHookA_QueryInterface(INewShortcutHookA* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG INewShortcutHookA_AddRef(INewShortcutHookA* This) { return This->lpVtbl->AddRef(This); } static inline ULONG INewShortcutHookA_Release(INewShortcutHookA* This) { return This->lpVtbl->Release(This); } /*** INewShortcutHookA methods ***/ static inline HRESULT INewShortcutHookA_SetReferent(INewShortcutHookA* This,LPCSTR pcszReferent,HWND hwnd) { return This->lpVtbl->SetReferent(This,pcszReferent,hwnd); } static inline HRESULT INewShortcutHookA_GetReferent(INewShortcutHookA* This,LPSTR pcszReferent,int cchReferent) { return This->lpVtbl->GetReferent(This,pcszReferent,cchReferent); } static inline HRESULT INewShortcutHookA_SetFolder(INewShortcutHookA* This,LPCSTR pcszReferent) { return This->lpVtbl->SetFolder(This,pcszReferent); } static inline HRESULT INewShortcutHookA_GetFolder(INewShortcutHookA* This,LPSTR pcszReferent,int cchFolder) { return This->lpVtbl->GetFolder(This,pcszReferent,cchFolder); } static inline HRESULT INewShortcutHookA_GetName(INewShortcutHookA* This,LPSTR pszName,int cchName) { return This->lpVtbl->GetName(This,pszName,cchName); } static inline HRESULT INewShortcutHookA_GetExtension(INewShortcutHookA* This,LPSTR pszExtension,int cchExtension) { return This->lpVtbl->GetExtension(This,pszExtension,cchExtension); } #endif #endif #endif #endif /* __INewShortcutHookA_INTERFACE_DEFINED__ */ /***************************************************************************** * INewShortcutHookW interface */ #ifndef __INewShortcutHookW_INTERFACE_DEFINED__ #define __INewShortcutHookW_INTERFACE_DEFINED__ DEFINE_GUID(IID_INewShortcutHookW, 0x000214f7, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("000214f7-0000-0000-c000-000000000046") INewShortcutHookW : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetReferent( LPCWSTR pcszReferent, HWND hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE GetReferent( LPWSTR pcszReferent, int cchReferent) = 0; virtual HRESULT STDMETHODCALLTYPE SetFolder( LPCWSTR pcszReferent) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolder( LPWSTR pcszReferent, int cchFolder) = 0; virtual HRESULT STDMETHODCALLTYPE GetName( LPWSTR pszName, int cchName) = 0; virtual HRESULT STDMETHODCALLTYPE GetExtension( LPWSTR pszExtension, int cchExtension) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INewShortcutHookW, 0x000214f7, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct INewShortcutHookWVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INewShortcutHookW *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INewShortcutHookW *This); ULONG (STDMETHODCALLTYPE *Release)( INewShortcutHookW *This); /*** INewShortcutHookW methods ***/ HRESULT (STDMETHODCALLTYPE *SetReferent)( INewShortcutHookW *This, LPCWSTR pcszReferent, HWND hwnd); HRESULT (STDMETHODCALLTYPE *GetReferent)( INewShortcutHookW *This, LPWSTR pcszReferent, int cchReferent); HRESULT (STDMETHODCALLTYPE *SetFolder)( INewShortcutHookW *This, LPCWSTR pcszReferent); HRESULT (STDMETHODCALLTYPE *GetFolder)( INewShortcutHookW *This, LPWSTR pcszReferent, int cchFolder); HRESULT (STDMETHODCALLTYPE *GetName)( INewShortcutHookW *This, LPWSTR pszName, int cchName); HRESULT (STDMETHODCALLTYPE *GetExtension)( INewShortcutHookW *This, LPWSTR pszExtension, int cchExtension); END_INTERFACE } INewShortcutHookWVtbl; interface INewShortcutHookW { CONST_VTBL INewShortcutHookWVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INewShortcutHookW_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INewShortcutHookW_AddRef(This) (This)->lpVtbl->AddRef(This) #define INewShortcutHookW_Release(This) (This)->lpVtbl->Release(This) /*** INewShortcutHookW methods ***/ #define INewShortcutHookW_SetReferent(This,pcszReferent,hwnd) (This)->lpVtbl->SetReferent(This,pcszReferent,hwnd) #define INewShortcutHookW_GetReferent(This,pcszReferent,cchReferent) (This)->lpVtbl->GetReferent(This,pcszReferent,cchReferent) #define INewShortcutHookW_SetFolder(This,pcszReferent) (This)->lpVtbl->SetFolder(This,pcszReferent) #define INewShortcutHookW_GetFolder(This,pcszReferent,cchFolder) (This)->lpVtbl->GetFolder(This,pcszReferent,cchFolder) #define INewShortcutHookW_GetName(This,pszName,cchName) (This)->lpVtbl->GetName(This,pszName,cchName) #define INewShortcutHookW_GetExtension(This,pszExtension,cchExtension) (This)->lpVtbl->GetExtension(This,pszExtension,cchExtension) #else /*** IUnknown methods ***/ static inline HRESULT INewShortcutHookW_QueryInterface(INewShortcutHookW* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG INewShortcutHookW_AddRef(INewShortcutHookW* This) { return This->lpVtbl->AddRef(This); } static inline ULONG INewShortcutHookW_Release(INewShortcutHookW* This) { return This->lpVtbl->Release(This); } /*** INewShortcutHookW methods ***/ static inline HRESULT INewShortcutHookW_SetReferent(INewShortcutHookW* This,LPCWSTR pcszReferent,HWND hwnd) { return This->lpVtbl->SetReferent(This,pcszReferent,hwnd); } static inline HRESULT INewShortcutHookW_GetReferent(INewShortcutHookW* This,LPWSTR pcszReferent,int cchReferent) { return This->lpVtbl->GetReferent(This,pcszReferent,cchReferent); } static inline HRESULT INewShortcutHookW_SetFolder(INewShortcutHookW* This,LPCWSTR pcszReferent) { return This->lpVtbl->SetFolder(This,pcszReferent); } static inline HRESULT INewShortcutHookW_GetFolder(INewShortcutHookW* This,LPWSTR pcszReferent,int cchFolder) { return This->lpVtbl->GetFolder(This,pcszReferent,cchFolder); } static inline HRESULT INewShortcutHookW_GetName(INewShortcutHookW* This,LPWSTR pszName,int cchName) { return This->lpVtbl->GetName(This,pszName,cchName); } static inline HRESULT INewShortcutHookW_GetExtension(INewShortcutHookW* This,LPWSTR pszExtension,int cchExtension) { return This->lpVtbl->GetExtension(This,pszExtension,cchExtension); } #endif #endif #endif #endif /* __INewShortcutHookW_INTERFACE_DEFINED__ */ /***************************************************************************** * IRunnableTask interface */ #ifndef __IRunnableTask_INTERFACE_DEFINED__ #define __IRunnableTask_INTERFACE_DEFINED__ DEFINE_GUID(IID_IRunnableTask, 0x85788d00, 0x6807, 0x11d0, 0xb8,0x10, 0x00,0xc0,0x4f,0xd7,0x06,0xec); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("85788d00-6807-11d0-b810-00c04fd706ec") IRunnableTask : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Run( ) = 0; virtual HRESULT STDMETHODCALLTYPE Kill( BOOL fWait) = 0; virtual HRESULT STDMETHODCALLTYPE Suspend( ) = 0; virtual HRESULT STDMETHODCALLTYPE Resume( ) = 0; virtual ULONG STDMETHODCALLTYPE IsRunning( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IRunnableTask, 0x85788d00, 0x6807, 0x11d0, 0xb8,0x10, 0x00,0xc0,0x4f,0xd7,0x06,0xec) #endif #else typedef struct IRunnableTaskVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IRunnableTask *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IRunnableTask *This); ULONG (STDMETHODCALLTYPE *Release)( IRunnableTask *This); /*** IRunnableTask methods ***/ HRESULT (STDMETHODCALLTYPE *Run)( IRunnableTask *This); HRESULT (STDMETHODCALLTYPE *Kill)( IRunnableTask *This, BOOL fWait); HRESULT (STDMETHODCALLTYPE *Suspend)( IRunnableTask *This); HRESULT (STDMETHODCALLTYPE *Resume)( IRunnableTask *This); ULONG (STDMETHODCALLTYPE *IsRunning)( IRunnableTask *This); END_INTERFACE } IRunnableTaskVtbl; interface IRunnableTask { CONST_VTBL IRunnableTaskVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IRunnableTask_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IRunnableTask_AddRef(This) (This)->lpVtbl->AddRef(This) #define IRunnableTask_Release(This) (This)->lpVtbl->Release(This) /*** IRunnableTask methods ***/ #define IRunnableTask_Run(This) (This)->lpVtbl->Run(This) #define IRunnableTask_Kill(This,fWait) (This)->lpVtbl->Kill(This,fWait) #define IRunnableTask_Suspend(This) (This)->lpVtbl->Suspend(This) #define IRunnableTask_Resume(This) (This)->lpVtbl->Resume(This) #define IRunnableTask_IsRunning(This) (This)->lpVtbl->IsRunning(This) #else /*** IUnknown methods ***/ static inline HRESULT IRunnableTask_QueryInterface(IRunnableTask* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IRunnableTask_AddRef(IRunnableTask* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IRunnableTask_Release(IRunnableTask* This) { return This->lpVtbl->Release(This); } /*** IRunnableTask methods ***/ static inline HRESULT IRunnableTask_Run(IRunnableTask* This) { return This->lpVtbl->Run(This); } static inline HRESULT IRunnableTask_Kill(IRunnableTask* This,BOOL fWait) { return This->lpVtbl->Kill(This,fWait); } static inline HRESULT IRunnableTask_Suspend(IRunnableTask* This) { return This->lpVtbl->Suspend(This); } static inline HRESULT IRunnableTask_Resume(IRunnableTask* This) { return This->lpVtbl->Resume(This); } static inline ULONG IRunnableTask_IsRunning(IRunnableTask* This) { return This->lpVtbl->IsRunning(This); } #endif #endif #endif #endif /* __IRunnableTask_INTERFACE_DEFINED__ */ /***************************************************************************** * IShellChangeNotify interface */ #ifndef __IShellChangeNotify_INTERFACE_DEFINED__ #define __IShellChangeNotify_INTERFACE_DEFINED__ DEFINE_GUID(IID_IShellChangeNotify, 0xd82be2b1, 0x5764, 0x11d0, 0xa9,0x6e, 0x00,0xc0,0x4f,0xd7,0x05,0xa2); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d82be2b1-5764-11d0-a96e-00c04fd705a2") IShellChangeNotify : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnChange( LONG lEvent, LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IShellChangeNotify, 0xd82be2b1, 0x5764, 0x11d0, 0xa9,0x6e, 0x00,0xc0,0x4f,0xd7,0x05,0xa2) #endif #else typedef struct IShellChangeNotifyVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IShellChangeNotify *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IShellChangeNotify *This); ULONG (STDMETHODCALLTYPE *Release)( IShellChangeNotify *This); /*** IShellChangeNotify methods ***/ HRESULT (STDMETHODCALLTYPE *OnChange)( IShellChangeNotify *This, LONG lEvent, LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2); END_INTERFACE } IShellChangeNotifyVtbl; interface IShellChangeNotify { CONST_VTBL IShellChangeNotifyVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IShellChangeNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IShellChangeNotify_AddRef(This) (This)->lpVtbl->AddRef(This) #define IShellChangeNotify_Release(This) (This)->lpVtbl->Release(This) /*** IShellChangeNotify methods ***/ #define IShellChangeNotify_OnChange(This,lEvent,pidl1,pidl2) (This)->lpVtbl->OnChange(This,lEvent,pidl1,pidl2) #else /*** IUnknown methods ***/ static inline HRESULT IShellChangeNotify_QueryInterface(IShellChangeNotify* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IShellChangeNotify_AddRef(IShellChangeNotify* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IShellChangeNotify_Release(IShellChangeNotify* This) { return This->lpVtbl->Release(This); } /*** IShellChangeNotify methods ***/ static inline HRESULT IShellChangeNotify_OnChange(IShellChangeNotify* This,LONG lEvent,LPCITEMIDLIST pidl1,LPCITEMIDLIST pidl2) { return This->lpVtbl->OnChange(This,lEvent,pidl1,pidl2); } #endif #endif #endif #endif /* __IShellChangeNotify_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileSystemBindData interface */ #ifndef __IFileSystemBindData_INTERFACE_DEFINED__ #define __IFileSystemBindData_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileSystemBindData, 0x01e18d10, 0x4d8b, 0x11d2, 0x85,0x5d, 0x00,0x60,0x08,0x05,0x93,0x67); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("01e18d10-4d8b-11d2-855d-006008059367") IFileSystemBindData : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetFindData( const WIN32_FIND_DATAW *pfd) = 0; virtual HRESULT STDMETHODCALLTYPE GetFindData( WIN32_FIND_DATAW *pfd) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileSystemBindData, 0x01e18d10, 0x4d8b, 0x11d2, 0x85,0x5d, 0x00,0x60,0x08,0x05,0x93,0x67) #endif #else typedef struct IFileSystemBindDataVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileSystemBindData *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileSystemBindData *This); ULONG (STDMETHODCALLTYPE *Release)( IFileSystemBindData *This); /*** IFileSystemBindData methods ***/ HRESULT (STDMETHODCALLTYPE *SetFindData)( IFileSystemBindData *This, const WIN32_FIND_DATAW *pfd); HRESULT (STDMETHODCALLTYPE *GetFindData)( IFileSystemBindData *This, WIN32_FIND_DATAW *pfd); END_INTERFACE } IFileSystemBindDataVtbl; interface IFileSystemBindData { CONST_VTBL IFileSystemBindDataVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileSystemBindData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileSystemBindData_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileSystemBindData_Release(This) (This)->lpVtbl->Release(This) /*** IFileSystemBindData methods ***/ #define IFileSystemBindData_SetFindData(This,pfd) (This)->lpVtbl->SetFindData(This,pfd) #define IFileSystemBindData_GetFindData(This,pfd) (This)->lpVtbl->GetFindData(This,pfd) #else /*** IUnknown methods ***/ static inline HRESULT IFileSystemBindData_QueryInterface(IFileSystemBindData* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFileSystemBindData_AddRef(IFileSystemBindData* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFileSystemBindData_Release(IFileSystemBindData* This) { return This->lpVtbl->Release(This); } /*** IFileSystemBindData methods ***/ static inline HRESULT IFileSystemBindData_SetFindData(IFileSystemBindData* This,const WIN32_FIND_DATAW *pfd) { return This->lpVtbl->SetFindData(This,pfd); } static inline HRESULT IFileSystemBindData_GetFindData(IFileSystemBindData* This,WIN32_FIND_DATAW *pfd) { return This->lpVtbl->GetFindData(This,pfd); } #endif #endif #endif #endif /* __IFileSystemBindData_INTERFACE_DEFINED__ */ /***************************************************************************** * ITaskbarList interface */ #ifndef __ITaskbarList_INTERFACE_DEFINED__ #define __ITaskbarList_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITaskbarList, 0x56fdf342, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("56fdf342-fd6d-11d0-958a-006097c9a090") ITaskbarList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE HrInit( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddTab( HWND hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteTab( HWND hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE ActivateTab( HWND hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE SetActiveAlt( HWND hwnd) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITaskbarList, 0x56fdf342, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90) #endif #else typedef struct ITaskbarListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITaskbarList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITaskbarList *This); ULONG (STDMETHODCALLTYPE *Release)( ITaskbarList *This); /*** ITaskbarList methods ***/ HRESULT (STDMETHODCALLTYPE *HrInit)( ITaskbarList *This); HRESULT (STDMETHODCALLTYPE *AddTab)( ITaskbarList *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *DeleteTab)( ITaskbarList *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *ActivateTab)( ITaskbarList *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( ITaskbarList *This, HWND hwnd); END_INTERFACE } ITaskbarListVtbl; interface ITaskbarList { CONST_VTBL ITaskbarListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITaskbarList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITaskbarList_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITaskbarList_Release(This) (This)->lpVtbl->Release(This) /*** ITaskbarList methods ***/ #define ITaskbarList_HrInit(This) (This)->lpVtbl->HrInit(This) #define ITaskbarList_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) #define ITaskbarList_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) #define ITaskbarList_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) #define ITaskbarList_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) #else /*** IUnknown methods ***/ static inline HRESULT ITaskbarList_QueryInterface(ITaskbarList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ITaskbarList_AddRef(ITaskbarList* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ITaskbarList_Release(ITaskbarList* This) { return This->lpVtbl->Release(This); } /*** ITaskbarList methods ***/ static inline HRESULT ITaskbarList_HrInit(ITaskbarList* This) { return This->lpVtbl->HrInit(This); } static inline HRESULT ITaskbarList_AddTab(ITaskbarList* This,HWND hwnd) { return This->lpVtbl->AddTab(This,hwnd); } static inline HRESULT ITaskbarList_DeleteTab(ITaskbarList* This,HWND hwnd) { return This->lpVtbl->DeleteTab(This,hwnd); } static inline HRESULT ITaskbarList_ActivateTab(ITaskbarList* This,HWND hwnd) { return This->lpVtbl->ActivateTab(This,hwnd); } static inline HRESULT ITaskbarList_SetActiveAlt(ITaskbarList* This,HWND hwnd) { return This->lpVtbl->SetActiveAlt(This,hwnd); } #endif #endif #endif #endif /* __ITaskbarList_INTERFACE_DEFINED__ */ /***************************************************************************** * ITaskbarList2 interface */ #ifndef __ITaskbarList2_INTERFACE_DEFINED__ #define __ITaskbarList2_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITaskbarList2, 0x602d4995, 0xb13a, 0x429b, 0xa6,0x6e, 0x19,0x35,0xe4,0x4f,0x43,0x17); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("602d4995-b13a-429b-a66e-1935e44f4317") ITaskbarList2 : public ITaskbarList { virtual HRESULT STDMETHODCALLTYPE MarkFullscreenWindow( HWND hwnd, BOOL fullscreen) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITaskbarList2, 0x602d4995, 0xb13a, 0x429b, 0xa6,0x6e, 0x19,0x35,0xe4,0x4f,0x43,0x17) #endif #else typedef struct ITaskbarList2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITaskbarList2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITaskbarList2 *This); ULONG (STDMETHODCALLTYPE *Release)( ITaskbarList2 *This); /*** ITaskbarList methods ***/ HRESULT (STDMETHODCALLTYPE *HrInit)( ITaskbarList2 *This); HRESULT (STDMETHODCALLTYPE *AddTab)( ITaskbarList2 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *DeleteTab)( ITaskbarList2 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *ActivateTab)( ITaskbarList2 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( ITaskbarList2 *This, HWND hwnd); /*** ITaskbarList2 methods ***/ HRESULT (STDMETHODCALLTYPE *MarkFullscreenWindow)( ITaskbarList2 *This, HWND hwnd, BOOL fullscreen); END_INTERFACE } ITaskbarList2Vtbl; interface ITaskbarList2 { CONST_VTBL ITaskbarList2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITaskbarList2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITaskbarList2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITaskbarList2_Release(This) (This)->lpVtbl->Release(This) /*** ITaskbarList methods ***/ #define ITaskbarList2_HrInit(This) (This)->lpVtbl->HrInit(This) #define ITaskbarList2_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) #define ITaskbarList2_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) #define ITaskbarList2_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) #define ITaskbarList2_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) /*** ITaskbarList2 methods ***/ #define ITaskbarList2_MarkFullscreenWindow(This,hwnd,fullscreen) (This)->lpVtbl->MarkFullscreenWindow(This,hwnd,fullscreen) #else /*** IUnknown methods ***/ static inline HRESULT ITaskbarList2_QueryInterface(ITaskbarList2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ITaskbarList2_AddRef(ITaskbarList2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ITaskbarList2_Release(ITaskbarList2* This) { return This->lpVtbl->Release(This); } /*** ITaskbarList methods ***/ static inline HRESULT ITaskbarList2_HrInit(ITaskbarList2* This) { return This->lpVtbl->HrInit(This); } static inline HRESULT ITaskbarList2_AddTab(ITaskbarList2* This,HWND hwnd) { return This->lpVtbl->AddTab(This,hwnd); } static inline HRESULT ITaskbarList2_DeleteTab(ITaskbarList2* This,HWND hwnd) { return This->lpVtbl->DeleteTab(This,hwnd); } static inline HRESULT ITaskbarList2_ActivateTab(ITaskbarList2* This,HWND hwnd) { return This->lpVtbl->ActivateTab(This,hwnd); } static inline HRESULT ITaskbarList2_SetActiveAlt(ITaskbarList2* This,HWND hwnd) { return This->lpVtbl->SetActiveAlt(This,hwnd); } /*** ITaskbarList2 methods ***/ static inline HRESULT ITaskbarList2_MarkFullscreenWindow(ITaskbarList2* This,HWND hwnd,BOOL fullscreen) { return This->lpVtbl->MarkFullscreenWindow(This,hwnd,fullscreen); } #endif #endif #endif #endif /* __ITaskbarList2_INTERFACE_DEFINED__ */ #ifdef MIDL_PASS typedef IUnknown *HIMAGELIST; #endif typedef enum THUMBBUTTONFLAGS { THBF_ENABLED = 0x0, THBF_DISABLED = 0x1, THBF_DISMISSONCLICK = 0x2, THBF_NOBACKGROUND = 0x4, THBF_HIDDEN = 0x8, THBF_NONINTERACTIVE = 0x10 } THUMBBUTTONFLAGS; DEFINE_ENUM_FLAG_OPERATORS(THUMBBUTTONFLAGS) typedef enum THUMBBUTTONMASK { THB_BITMAP = 0x1, THB_ICON = 0x2, THB_TOOLTIP = 0x4, THB_FLAGS = 0x8 } THUMBBUTTONMASK; DEFINE_ENUM_FLAG_OPERATORS(THUMBBUTTONMASK) #pragma pack(push,8) typedef struct THUMBBUTTON { THUMBBUTTONMASK dwMask; UINT iId; UINT iBitmap; HICON hIcon; WCHAR szTip[260]; THUMBBUTTONFLAGS dwFlags; } THUMBBUTTON; typedef struct THUMBBUTTON *LPTHUMBBUTTON; #pragma pack(pop) /***************************************************************************** * ITaskbarList3 interface */ #ifndef __ITaskbarList3_INTERFACE_DEFINED__ #define __ITaskbarList3_INTERFACE_DEFINED__ typedef enum TBPFLAG { TBPF_NOPROGRESS = 0x0, TBPF_INDETERMINATE = 0x1, TBPF_NORMAL = 0x2, TBPF_ERROR = 0x4, TBPF_PAUSED = 0x8 } TBPFLAG; DEFINE_ENUM_FLAG_OPERATORS(TBPFLAG) DEFINE_GUID(IID_ITaskbarList3, 0xea1afb91, 0x9e28, 0x4b86, 0x90,0xe9, 0x9e,0x9f,0x8a,0x5e,0xef,0xaf); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf") ITaskbarList3 : public ITaskbarList2 { virtual HRESULT STDMETHODCALLTYPE SetProgressValue( HWND hwnd, ULONGLONG ullCompleted, ULONGLONG ullTotal) = 0; virtual HRESULT STDMETHODCALLTYPE SetProgressState( HWND hwnd, TBPFLAG tbpFlags) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterTab( HWND hwndTab, HWND hwndMDI) = 0; virtual HRESULT STDMETHODCALLTYPE UnregisterTab( HWND hwndTab) = 0; virtual HRESULT STDMETHODCALLTYPE SetTabOrder( HWND hwndTab, HWND hwndInsertBefore) = 0; virtual HRESULT STDMETHODCALLTYPE SetTabActive( HWND hwndTab, HWND hwndMDI, DWORD dwReserved) = 0; virtual HRESULT STDMETHODCALLTYPE ThumbBarAddButtons( HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton) = 0; virtual HRESULT STDMETHODCALLTYPE ThumbBarUpdateButtons( HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton) = 0; virtual HRESULT STDMETHODCALLTYPE ThumbBarSetImageList( HWND hwnd, HIMAGELIST himl) = 0; virtual HRESULT STDMETHODCALLTYPE SetOverlayIcon( HWND hwnd, HICON hIcon, LPCWSTR pszDescription) = 0; virtual HRESULT STDMETHODCALLTYPE SetThumbnailTooltip( HWND hwnd, LPCWSTR pszTip) = 0; virtual HRESULT STDMETHODCALLTYPE SetThumbnailClip( HWND hwnd, RECT *prcClip) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITaskbarList3, 0xea1afb91, 0x9e28, 0x4b86, 0x90,0xe9, 0x9e,0x9f,0x8a,0x5e,0xef,0xaf) #endif #else typedef struct ITaskbarList3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITaskbarList3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITaskbarList3 *This); ULONG (STDMETHODCALLTYPE *Release)( ITaskbarList3 *This); /*** ITaskbarList methods ***/ HRESULT (STDMETHODCALLTYPE *HrInit)( ITaskbarList3 *This); HRESULT (STDMETHODCALLTYPE *AddTab)( ITaskbarList3 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *DeleteTab)( ITaskbarList3 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *ActivateTab)( ITaskbarList3 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( ITaskbarList3 *This, HWND hwnd); /*** ITaskbarList2 methods ***/ HRESULT (STDMETHODCALLTYPE *MarkFullscreenWindow)( ITaskbarList3 *This, HWND hwnd, BOOL fullscreen); /*** ITaskbarList3 methods ***/ HRESULT (STDMETHODCALLTYPE *SetProgressValue)( ITaskbarList3 *This, HWND hwnd, ULONGLONG ullCompleted, ULONGLONG ullTotal); HRESULT (STDMETHODCALLTYPE *SetProgressState)( ITaskbarList3 *This, HWND hwnd, TBPFLAG tbpFlags); HRESULT (STDMETHODCALLTYPE *RegisterTab)( ITaskbarList3 *This, HWND hwndTab, HWND hwndMDI); HRESULT (STDMETHODCALLTYPE *UnregisterTab)( ITaskbarList3 *This, HWND hwndTab); HRESULT (STDMETHODCALLTYPE *SetTabOrder)( ITaskbarList3 *This, HWND hwndTab, HWND hwndInsertBefore); HRESULT (STDMETHODCALLTYPE *SetTabActive)( ITaskbarList3 *This, HWND hwndTab, HWND hwndMDI, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *ThumbBarAddButtons)( ITaskbarList3 *This, HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton); HRESULT (STDMETHODCALLTYPE *ThumbBarUpdateButtons)( ITaskbarList3 *This, HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton); HRESULT (STDMETHODCALLTYPE *ThumbBarSetImageList)( ITaskbarList3 *This, HWND hwnd, HIMAGELIST himl); HRESULT (STDMETHODCALLTYPE *SetOverlayIcon)( ITaskbarList3 *This, HWND hwnd, HICON hIcon, LPCWSTR pszDescription); HRESULT (STDMETHODCALLTYPE *SetThumbnailTooltip)( ITaskbarList3 *This, HWND hwnd, LPCWSTR pszTip); HRESULT (STDMETHODCALLTYPE *SetThumbnailClip)( ITaskbarList3 *This, HWND hwnd, RECT *prcClip); END_INTERFACE } ITaskbarList3Vtbl; interface ITaskbarList3 { CONST_VTBL ITaskbarList3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITaskbarList3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITaskbarList3_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITaskbarList3_Release(This) (This)->lpVtbl->Release(This) /*** ITaskbarList methods ***/ #define ITaskbarList3_HrInit(This) (This)->lpVtbl->HrInit(This) #define ITaskbarList3_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) #define ITaskbarList3_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) #define ITaskbarList3_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) #define ITaskbarList3_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) /*** ITaskbarList2 methods ***/ #define ITaskbarList3_MarkFullscreenWindow(This,hwnd,fullscreen) (This)->lpVtbl->MarkFullscreenWindow(This,hwnd,fullscreen) /*** ITaskbarList3 methods ***/ #define ITaskbarList3_SetProgressValue(This,hwnd,ullCompleted,ullTotal) (This)->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal) #define ITaskbarList3_SetProgressState(This,hwnd,tbpFlags) (This)->lpVtbl->SetProgressState(This,hwnd,tbpFlags) #define ITaskbarList3_RegisterTab(This,hwndTab,hwndMDI) (This)->lpVtbl->RegisterTab(This,hwndTab,hwndMDI) #define ITaskbarList3_UnregisterTab(This,hwndTab) (This)->lpVtbl->UnregisterTab(This,hwndTab) #define ITaskbarList3_SetTabOrder(This,hwndTab,hwndInsertBefore) (This)->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore) #define ITaskbarList3_SetTabActive(This,hwndTab,hwndMDI,dwReserved) (This)->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved) #define ITaskbarList3_ThumbBarAddButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton) #define ITaskbarList3_ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) #define ITaskbarList3_ThumbBarSetImageList(This,hwnd,himl) (This)->lpVtbl->ThumbBarSetImageList(This,hwnd,himl) #define ITaskbarList3_SetOverlayIcon(This,hwnd,hIcon,pszDescription) (This)->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription) #define ITaskbarList3_SetThumbnailTooltip(This,hwnd,pszTip) (This)->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip) #define ITaskbarList3_SetThumbnailClip(This,hwnd,prcClip) (This)->lpVtbl->SetThumbnailClip(This,hwnd,prcClip) #else /*** IUnknown methods ***/ static inline HRESULT ITaskbarList3_QueryInterface(ITaskbarList3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ITaskbarList3_AddRef(ITaskbarList3* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ITaskbarList3_Release(ITaskbarList3* This) { return This->lpVtbl->Release(This); } /*** ITaskbarList methods ***/ static inline HRESULT ITaskbarList3_HrInit(ITaskbarList3* This) { return This->lpVtbl->HrInit(This); } static inline HRESULT ITaskbarList3_AddTab(ITaskbarList3* This,HWND hwnd) { return This->lpVtbl->AddTab(This,hwnd); } static inline HRESULT ITaskbarList3_DeleteTab(ITaskbarList3* This,HWND hwnd) { return This->lpVtbl->DeleteTab(This,hwnd); } static inline HRESULT ITaskbarList3_ActivateTab(ITaskbarList3* This,HWND hwnd) { return This->lpVtbl->ActivateTab(This,hwnd); } static inline HRESULT ITaskbarList3_SetActiveAlt(ITaskbarList3* This,HWND hwnd) { return This->lpVtbl->SetActiveAlt(This,hwnd); } /*** ITaskbarList2 methods ***/ static inline HRESULT ITaskbarList3_MarkFullscreenWindow(ITaskbarList3* This,HWND hwnd,BOOL fullscreen) { return This->lpVtbl->MarkFullscreenWindow(This,hwnd,fullscreen); } /*** ITaskbarList3 methods ***/ static inline HRESULT ITaskbarList3_SetProgressValue(ITaskbarList3* This,HWND hwnd,ULONGLONG ullCompleted,ULONGLONG ullTotal) { return This->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal); } static inline HRESULT ITaskbarList3_SetProgressState(ITaskbarList3* This,HWND hwnd,TBPFLAG tbpFlags) { return This->lpVtbl->SetProgressState(This,hwnd,tbpFlags); } static inline HRESULT ITaskbarList3_RegisterTab(ITaskbarList3* This,HWND hwndTab,HWND hwndMDI) { return This->lpVtbl->RegisterTab(This,hwndTab,hwndMDI); } static inline HRESULT ITaskbarList3_UnregisterTab(ITaskbarList3* This,HWND hwndTab) { return This->lpVtbl->UnregisterTab(This,hwndTab); } static inline HRESULT ITaskbarList3_SetTabOrder(ITaskbarList3* This,HWND hwndTab,HWND hwndInsertBefore) { return This->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore); } static inline HRESULT ITaskbarList3_SetTabActive(ITaskbarList3* This,HWND hwndTab,HWND hwndMDI,DWORD dwReserved) { return This->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved); } static inline HRESULT ITaskbarList3_ThumbBarAddButtons(ITaskbarList3* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { return This->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton); } static inline HRESULT ITaskbarList3_ThumbBarUpdateButtons(ITaskbarList3* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { return This->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton); } static inline HRESULT ITaskbarList3_ThumbBarSetImageList(ITaskbarList3* This,HWND hwnd,HIMAGELIST himl) { return This->lpVtbl->ThumbBarSetImageList(This,hwnd,himl); } static inline HRESULT ITaskbarList3_SetOverlayIcon(ITaskbarList3* This,HWND hwnd,HICON hIcon,LPCWSTR pszDescription) { return This->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription); } static inline HRESULT ITaskbarList3_SetThumbnailTooltip(ITaskbarList3* This,HWND hwnd,LPCWSTR pszTip) { return This->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip); } static inline HRESULT ITaskbarList3_SetThumbnailClip(ITaskbarList3* This,HWND hwnd,RECT *prcClip) { return This->lpVtbl->SetThumbnailClip(This,hwnd,prcClip); } #endif #endif #endif #endif /* __ITaskbarList3_INTERFACE_DEFINED__ */ /***************************************************************************** * ITaskbarList4 interface */ #ifndef __ITaskbarList4_INTERFACE_DEFINED__ #define __ITaskbarList4_INTERFACE_DEFINED__ typedef enum STPFLAG { STPF_NONE = 0x0, STPF_USEAPPTHUMBNAILALWAYS = 0x1, STPF_USEAPPTHUMBNAILWHENACTIVE = 0x2, STPF_USEAPPPEEKALWAYS = 0x4, STPF_USEAPPPEEKWHENACTIVE = 0x8 } STPFLAG; DEFINE_ENUM_FLAG_OPERATORS(STPFLAG) DEFINE_GUID(IID_ITaskbarList4, 0xc43dc798, 0x95d1, 0x4bea, 0x90,0x30, 0xbb,0x99,0xe2,0x98,0x3a,0x1a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c43dc798-95d1-4bea-9030-bb99e2983a1a") ITaskbarList4 : public ITaskbarList3 { virtual HRESULT STDMETHODCALLTYPE SetTabProperties( HWND hwndTab, STPFLAG stpFlags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITaskbarList4, 0xc43dc798, 0x95d1, 0x4bea, 0x90,0x30, 0xbb,0x99,0xe2,0x98,0x3a,0x1a) #endif #else typedef struct ITaskbarList4Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITaskbarList4 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITaskbarList4 *This); ULONG (STDMETHODCALLTYPE *Release)( ITaskbarList4 *This); /*** ITaskbarList methods ***/ HRESULT (STDMETHODCALLTYPE *HrInit)( ITaskbarList4 *This); HRESULT (STDMETHODCALLTYPE *AddTab)( ITaskbarList4 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *DeleteTab)( ITaskbarList4 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *ActivateTab)( ITaskbarList4 *This, HWND hwnd); HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( ITaskbarList4 *This, HWND hwnd); /*** ITaskbarList2 methods ***/ HRESULT (STDMETHODCALLTYPE *MarkFullscreenWindow)( ITaskbarList4 *This, HWND hwnd, BOOL fullscreen); /*** ITaskbarList3 methods ***/ HRESULT (STDMETHODCALLTYPE *SetProgressValue)( ITaskbarList4 *This, HWND hwnd, ULONGLONG ullCompleted, ULONGLONG ullTotal); HRESULT (STDMETHODCALLTYPE *SetProgressState)( ITaskbarList4 *This, HWND hwnd, TBPFLAG tbpFlags); HRESULT (STDMETHODCALLTYPE *RegisterTab)( ITaskbarList4 *This, HWND hwndTab, HWND hwndMDI); HRESULT (STDMETHODCALLTYPE *UnregisterTab)( ITaskbarList4 *This, HWND hwndTab); HRESULT (STDMETHODCALLTYPE *SetTabOrder)( ITaskbarList4 *This, HWND hwndTab, HWND hwndInsertBefore); HRESULT (STDMETHODCALLTYPE *SetTabActive)( ITaskbarList4 *This, HWND hwndTab, HWND hwndMDI, DWORD dwReserved); HRESULT (STDMETHODCALLTYPE *ThumbBarAddButtons)( ITaskbarList4 *This, HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton); HRESULT (STDMETHODCALLTYPE *ThumbBarUpdateButtons)( ITaskbarList4 *This, HWND hwnd, UINT cButtons, LPTHUMBBUTTON pButton); HRESULT (STDMETHODCALLTYPE *ThumbBarSetImageList)( ITaskbarList4 *This, HWND hwnd, HIMAGELIST himl); HRESULT (STDMETHODCALLTYPE *SetOverlayIcon)( ITaskbarList4 *This, HWND hwnd, HICON hIcon, LPCWSTR pszDescription); HRESULT (STDMETHODCALLTYPE *SetThumbnailTooltip)( ITaskbarList4 *This, HWND hwnd, LPCWSTR pszTip); HRESULT (STDMETHODCALLTYPE *SetThumbnailClip)( ITaskbarList4 *This, HWND hwnd, RECT *prcClip); /*** ITaskbarList4 methods ***/ HRESULT (STDMETHODCALLTYPE *SetTabProperties)( ITaskbarList4 *This, HWND hwndTab, STPFLAG stpFlags); END_INTERFACE } ITaskbarList4Vtbl; interface ITaskbarList4 { CONST_VTBL ITaskbarList4Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITaskbarList4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITaskbarList4_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITaskbarList4_Release(This) (This)->lpVtbl->Release(This) /*** ITaskbarList methods ***/ #define ITaskbarList4_HrInit(This) (This)->lpVtbl->HrInit(This) #define ITaskbarList4_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) #define ITaskbarList4_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) #define ITaskbarList4_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) #define ITaskbarList4_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) /*** ITaskbarList2 methods ***/ #define ITaskbarList4_MarkFullscreenWindow(This,hwnd,fullscreen) (This)->lpVtbl->MarkFullscreenWindow(This,hwnd,fullscreen) /*** ITaskbarList3 methods ***/ #define ITaskbarList4_SetProgressValue(This,hwnd,ullCompleted,ullTotal) (This)->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal) #define ITaskbarList4_SetProgressState(This,hwnd,tbpFlags) (This)->lpVtbl->SetProgressState(This,hwnd,tbpFlags) #define ITaskbarList4_RegisterTab(This,hwndTab,hwndMDI) (This)->lpVtbl->RegisterTab(This,hwndTab,hwndMDI) #define ITaskbarList4_UnregisterTab(This,hwndTab) (This)->lpVtbl->UnregisterTab(This,hwndTab) #define ITaskbarList4_SetTabOrder(This,hwndTab,hwndInsertBefore) (This)->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore) #define ITaskbarList4_SetTabActive(This,hwndTab,hwndMDI,dwReserved) (This)->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved) #define ITaskbarList4_ThumbBarAddButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton) #define ITaskbarList4_ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) #define ITaskbarList4_ThumbBarSetImageList(This,hwnd,himl) (This)->lpVtbl->ThumbBarSetImageList(This,hwnd,himl) #define ITaskbarList4_SetOverlayIcon(This,hwnd,hIcon,pszDescription) (This)->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription) #define ITaskbarList4_SetThumbnailTooltip(This,hwnd,pszTip) (This)->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip) #define ITaskbarList4_SetThumbnailClip(This,hwnd,prcClip) (This)->lpVtbl->SetThumbnailClip(This,hwnd,prcClip) /*** ITaskbarList4 methods ***/ #define ITaskbarList4_SetTabProperties(This,hwndTab,stpFlags) (This)->lpVtbl->SetTabProperties(This,hwndTab,stpFlags) #else /*** IUnknown methods ***/ static inline HRESULT ITaskbarList4_QueryInterface(ITaskbarList4* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ITaskbarList4_AddRef(ITaskbarList4* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ITaskbarList4_Release(ITaskbarList4* This) { return This->lpVtbl->Release(This); } /*** ITaskbarList methods ***/ static inline HRESULT ITaskbarList4_HrInit(ITaskbarList4* This) { return This->lpVtbl->HrInit(This); } static inline HRESULT ITaskbarList4_AddTab(ITaskbarList4* This,HWND hwnd) { return This->lpVtbl->AddTab(This,hwnd); } static inline HRESULT ITaskbarList4_DeleteTab(ITaskbarList4* This,HWND hwnd) { return This->lpVtbl->DeleteTab(This,hwnd); } static inline HRESULT ITaskbarList4_ActivateTab(ITaskbarList4* This,HWND hwnd) { return This->lpVtbl->ActivateTab(This,hwnd); } static inline HRESULT ITaskbarList4_SetActiveAlt(ITaskbarList4* This,HWND hwnd) { return This->lpVtbl->SetActiveAlt(This,hwnd); } /*** ITaskbarList2 methods ***/ static inline HRESULT ITaskbarList4_MarkFullscreenWindow(ITaskbarList4* This,HWND hwnd,BOOL fullscreen) { return This->lpVtbl->MarkFullscreenWindow(This,hwnd,fullscreen); } /*** ITaskbarList3 methods ***/ static inline HRESULT ITaskbarList4_SetProgressValue(ITaskbarList4* This,HWND hwnd,ULONGLONG ullCompleted,ULONGLONG ullTotal) { return This->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal); } static inline HRESULT ITaskbarList4_SetProgressState(ITaskbarList4* This,HWND hwnd,TBPFLAG tbpFlags) { return This->lpVtbl->SetProgressState(This,hwnd,tbpFlags); } static inline HRESULT ITaskbarList4_RegisterTab(ITaskbarList4* This,HWND hwndTab,HWND hwndMDI) { return This->lpVtbl->RegisterTab(This,hwndTab,hwndMDI); } static inline HRESULT ITaskbarList4_UnregisterTab(ITaskbarList4* This,HWND hwndTab) { return This->lpVtbl->UnregisterTab(This,hwndTab); } static inline HRESULT ITaskbarList4_SetTabOrder(ITaskbarList4* This,HWND hwndTab,HWND hwndInsertBefore) { return This->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore); } static inline HRESULT ITaskbarList4_SetTabActive(ITaskbarList4* This,HWND hwndTab,HWND hwndMDI,DWORD dwReserved) { return This->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved); } static inline HRESULT ITaskbarList4_ThumbBarAddButtons(ITaskbarList4* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { return This->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton); } static inline HRESULT ITaskbarList4_ThumbBarUpdateButtons(ITaskbarList4* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { return This->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton); } static inline HRESULT ITaskbarList4_ThumbBarSetImageList(ITaskbarList4* This,HWND hwnd,HIMAGELIST himl) { return This->lpVtbl->ThumbBarSetImageList(This,hwnd,himl); } static inline HRESULT ITaskbarList4_SetOverlayIcon(ITaskbarList4* This,HWND hwnd,HICON hIcon,LPCWSTR pszDescription) { return This->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription); } static inline HRESULT ITaskbarList4_SetThumbnailTooltip(ITaskbarList4* This,HWND hwnd,LPCWSTR pszTip) { return This->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip); } static inline HRESULT ITaskbarList4_SetThumbnailClip(ITaskbarList4* This,HWND hwnd,RECT *prcClip) { return This->lpVtbl->SetThumbnailClip(This,hwnd,prcClip); } /*** ITaskbarList4 methods ***/ static inline HRESULT ITaskbarList4_SetTabProperties(ITaskbarList4* This,HWND hwndTab,STPFLAG stpFlags) { return This->lpVtbl->SetTabProperties(This,hwndTab,stpFlags); } #endif #endif #endif #endif /* __ITaskbarList4_INTERFACE_DEFINED__ */ /***************************************************************************** * IAutoCompleteDropDown interface */ #ifndef __IAutoCompleteDropDown_INTERFACE_DEFINED__ #define __IAutoCompleteDropDown_INTERFACE_DEFINED__ #define ACDD_VISIBLE 0x0001 DEFINE_GUID(IID_IAutoCompleteDropDown, 0x3cd141f4, 0x3c6a, 0x11d2, 0xbc,0xaa, 0x00,0xc0,0x4f,0xd9,0x29,0xdb); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3cd141f4-3c6a-11d2-bcaa-00c04fd929db") IAutoCompleteDropDown : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetDropDownStatus( DWORD *pdwFlags, LPWSTR *ppwszString) = 0; virtual HRESULT STDMETHODCALLTYPE ResetEnumerator( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAutoCompleteDropDown, 0x3cd141f4, 0x3c6a, 0x11d2, 0xbc,0xaa, 0x00,0xc0,0x4f,0xd9,0x29,0xdb) #endif #else typedef struct IAutoCompleteDropDownVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAutoCompleteDropDown *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAutoCompleteDropDown *This); ULONG (STDMETHODCALLTYPE *Release)( IAutoCompleteDropDown *This); /*** IAutoCompleteDropDown methods ***/ HRESULT (STDMETHODCALLTYPE *GetDropDownStatus)( IAutoCompleteDropDown *This, DWORD *pdwFlags, LPWSTR *ppwszString); HRESULT (STDMETHODCALLTYPE *ResetEnumerator)( IAutoCompleteDropDown *This); END_INTERFACE } IAutoCompleteDropDownVtbl; interface IAutoCompleteDropDown { CONST_VTBL IAutoCompleteDropDownVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAutoCompleteDropDown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAutoCompleteDropDown_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAutoCompleteDropDown_Release(This) (This)->lpVtbl->Release(This) /*** IAutoCompleteDropDown methods ***/ #define IAutoCompleteDropDown_GetDropDownStatus(This,pdwFlags,ppwszString) (This)->lpVtbl->GetDropDownStatus(This,pdwFlags,ppwszString) #define IAutoCompleteDropDown_ResetEnumerator(This) (This)->lpVtbl->ResetEnumerator(This) #else /*** IUnknown methods ***/ static inline HRESULT IAutoCompleteDropDown_QueryInterface(IAutoCompleteDropDown* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IAutoCompleteDropDown_AddRef(IAutoCompleteDropDown* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IAutoCompleteDropDown_Release(IAutoCompleteDropDown* This) { return This->lpVtbl->Release(This); } /*** IAutoCompleteDropDown methods ***/ static inline HRESULT IAutoCompleteDropDown_GetDropDownStatus(IAutoCompleteDropDown* This,DWORD *pdwFlags,LPWSTR *ppwszString) { return This->lpVtbl->GetDropDownStatus(This,pdwFlags,ppwszString); } static inline HRESULT IAutoCompleteDropDown_ResetEnumerator(IAutoCompleteDropDown* This) { return This->lpVtbl->ResetEnumerator(This); } #endif #endif #endif #endif /* __IAutoCompleteDropDown_INTERFACE_DEFINED__ */ /***************************************************************************** * IProfferService interface */ #ifndef __IProfferService_INTERFACE_DEFINED__ #define __IProfferService_INTERFACE_DEFINED__ DEFINE_GUID(IID_IProfferService, 0xcb728b20, 0xf786, 0x11ce, 0x92,0xad, 0x00,0xaa,0x00,0xa7,0x4c,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("cb728b20-f786-11ce-92ad-00aa00a74cd0") IProfferService : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ProfferService( REFGUID service, IServiceProvider *pService, DWORD *pCookie) = 0; virtual HRESULT STDMETHODCALLTYPE RevokeService( DWORD cookie) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IProfferService, 0xcb728b20, 0xf786, 0x11ce, 0x92,0xad, 0x00,0xaa,0x00,0xa7,0x4c,0xd0) #endif #else typedef struct IProfferServiceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IProfferService *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IProfferService *This); ULONG (STDMETHODCALLTYPE *Release)( IProfferService *This); /*** IProfferService methods ***/ HRESULT (STDMETHODCALLTYPE *ProfferService)( IProfferService *This, REFGUID service, IServiceProvider *pService, DWORD *pCookie); HRESULT (STDMETHODCALLTYPE *RevokeService)( IProfferService *This, DWORD cookie); END_INTERFACE } IProfferServiceVtbl; interface IProfferService { CONST_VTBL IProfferServiceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IProfferService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IProfferService_AddRef(This) (This)->lpVtbl->AddRef(This) #define IProfferService_Release(This) (This)->lpVtbl->Release(This) /*** IProfferService methods ***/ #define IProfferService_ProfferService(This,service,pService,pCookie) (This)->lpVtbl->ProfferService(This,service,pService,pCookie) #define IProfferService_RevokeService(This,cookie) (This)->lpVtbl->RevokeService(This,cookie) #else /*** IUnknown methods ***/ static inline HRESULT IProfferService_QueryInterface(IProfferService* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IProfferService_AddRef(IProfferService* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IProfferService_Release(IProfferService* This) { return This->lpVtbl->Release(This); } /*** IProfferService methods ***/ static inline HRESULT IProfferService_ProfferService(IProfferService* This,REFGUID service,IServiceProvider *pService,DWORD *pCookie) { return This->lpVtbl->ProfferService(This,service,pService,pCookie); } static inline HRESULT IProfferService_RevokeService(IProfferService* This,DWORD cookie) { return This->lpVtbl->RevokeService(This,cookie); } #endif #endif #endif #endif /* __IProfferService_INTERFACE_DEFINED__ */ /***************************************************************************** * IExplorerBrowserEvents interface */ #ifndef __IExplorerBrowserEvents_INTERFACE_DEFINED__ #define __IExplorerBrowserEvents_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExplorerBrowserEvents, 0x361bbdc7, 0xe6ee, 0x4e13, 0xbe,0x58, 0x58,0xe2,0x24,0x0c,0x81,0x0f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("361bbdc7-e6ee-4e13-be58-58e2240c810f") IExplorerBrowserEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnNavigationPending( PCIDLIST_ABSOLUTE pidlFolder) = 0; virtual HRESULT STDMETHODCALLTYPE OnViewCreated( IShellView *psv) = 0; virtual HRESULT STDMETHODCALLTYPE OnNavigationComplete( PCIDLIST_ABSOLUTE pidlFolder) = 0; virtual HRESULT STDMETHODCALLTYPE OnNavigationFailed( PCIDLIST_ABSOLUTE pidlFolder) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExplorerBrowserEvents, 0x361bbdc7, 0xe6ee, 0x4e13, 0xbe,0x58, 0x58,0xe2,0x24,0x0c,0x81,0x0f) #endif #else typedef struct IExplorerBrowserEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExplorerBrowserEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExplorerBrowserEvents *This); ULONG (STDMETHODCALLTYPE *Release)( IExplorerBrowserEvents *This); /*** IExplorerBrowserEvents methods ***/ HRESULT (STDMETHODCALLTYPE *OnNavigationPending)( IExplorerBrowserEvents *This, PCIDLIST_ABSOLUTE pidlFolder); HRESULT (STDMETHODCALLTYPE *OnViewCreated)( IExplorerBrowserEvents *This, IShellView *psv); HRESULT (STDMETHODCALLTYPE *OnNavigationComplete)( IExplorerBrowserEvents *This, PCIDLIST_ABSOLUTE pidlFolder); HRESULT (STDMETHODCALLTYPE *OnNavigationFailed)( IExplorerBrowserEvents *This, PCIDLIST_ABSOLUTE pidlFolder); END_INTERFACE } IExplorerBrowserEventsVtbl; interface IExplorerBrowserEvents { CONST_VTBL IExplorerBrowserEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExplorerBrowserEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExplorerBrowserEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExplorerBrowserEvents_Release(This) (This)->lpVtbl->Release(This) /*** IExplorerBrowserEvents methods ***/ #define IExplorerBrowserEvents_OnNavigationPending(This,pidlFolder) (This)->lpVtbl->OnNavigationPending(This,pidlFolder) #define IExplorerBrowserEvents_OnViewCreated(This,psv) (This)->lpVtbl->OnViewCreated(This,psv) #define IExplorerBrowserEvents_OnNavigationComplete(This,pidlFolder) (This)->lpVtbl->OnNavigationComplete(This,pidlFolder) #define IExplorerBrowserEvents_OnNavigationFailed(This,pidlFolder) (This)->lpVtbl->OnNavigationFailed(This,pidlFolder) #else /*** IUnknown methods ***/ static inline HRESULT IExplorerBrowserEvents_QueryInterface(IExplorerBrowserEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IExplorerBrowserEvents_AddRef(IExplorerBrowserEvents* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IExplorerBrowserEvents_Release(IExplorerBrowserEvents* This) { return This->lpVtbl->Release(This); } /*** IExplorerBrowserEvents methods ***/ static inline HRESULT IExplorerBrowserEvents_OnNavigationPending(IExplorerBrowserEvents* This,PCIDLIST_ABSOLUTE pidlFolder) { return This->lpVtbl->OnNavigationPending(This,pidlFolder); } static inline HRESULT IExplorerBrowserEvents_OnViewCreated(IExplorerBrowserEvents* This,IShellView *psv) { return This->lpVtbl->OnViewCreated(This,psv); } static inline HRESULT IExplorerBrowserEvents_OnNavigationComplete(IExplorerBrowserEvents* This,PCIDLIST_ABSOLUTE pidlFolder) { return This->lpVtbl->OnNavigationComplete(This,pidlFolder); } static inline HRESULT IExplorerBrowserEvents_OnNavigationFailed(IExplorerBrowserEvents* This,PCIDLIST_ABSOLUTE pidlFolder) { return This->lpVtbl->OnNavigationFailed(This,pidlFolder); } #endif #endif #endif #endif /* __IExplorerBrowserEvents_INTERFACE_DEFINED__ */ typedef GUID EXPLORERPANE; typedef EXPLORERPANE *REFEXPLORERPANE; #define SID_ExplorerPaneVisibility IID_IExplorerPaneVisibility /***************************************************************************** * IExplorerPaneVisibility interface */ #ifndef __IExplorerPaneVisibility_INTERFACE_DEFINED__ #define __IExplorerPaneVisibility_INTERFACE_DEFINED__ enum _EXPLORERPANESTATE { EPS_DONTCARE = 0x0, EPS_DEFAULT_ON = 0x1, EPS_DEFAULT_OFF = 0x2, EPS_STATE_MASK = 0xffff, EPS_INITIALSTATE = 0x10000, EPS_FORCE = 0x20000 }; typedef DWORD EXPLORERPANESTATE; DEFINE_GUID(IID_IExplorerPaneVisibility, 0xe07010ec, 0xbc17, 0x44c0, 0x97,0xb0, 0x46,0xc7,0xc9,0x5b,0x9e,0xdc); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e07010ec-bc17-44c0-97b0-46c7c95b9edc") IExplorerPaneVisibility : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPaneState( REFEXPLORERPANE ep, EXPLORERPANESTATE *peps) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExplorerPaneVisibility, 0xe07010ec, 0xbc17, 0x44c0, 0x97,0xb0, 0x46,0xc7,0xc9,0x5b,0x9e,0xdc) #endif #else typedef struct IExplorerPaneVisibilityVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExplorerPaneVisibility *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExplorerPaneVisibility *This); ULONG (STDMETHODCALLTYPE *Release)( IExplorerPaneVisibility *This); /*** IExplorerPaneVisibility methods ***/ HRESULT (STDMETHODCALLTYPE *GetPaneState)( IExplorerPaneVisibility *This, REFEXPLORERPANE ep, EXPLORERPANESTATE *peps); END_INTERFACE } IExplorerPaneVisibilityVtbl; interface IExplorerPaneVisibility { CONST_VTBL IExplorerPaneVisibilityVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExplorerPaneVisibility_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExplorerPaneVisibility_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExplorerPaneVisibility_Release(This) (This)->lpVtbl->Release(This) /*** IExplorerPaneVisibility methods ***/ #define IExplorerPaneVisibility_GetPaneState(This,ep,peps) (This)->lpVtbl->GetPaneState(This,ep,peps) #else /*** IUnknown methods ***/ static inline HRESULT IExplorerPaneVisibility_QueryInterface(IExplorerPaneVisibility* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IExplorerPaneVisibility_AddRef(IExplorerPaneVisibility* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IExplorerPaneVisibility_Release(IExplorerPaneVisibility* This) { return This->lpVtbl->Release(This); } /*** IExplorerPaneVisibility methods ***/ static inline HRESULT IExplorerPaneVisibility_GetPaneState(IExplorerPaneVisibility* This,REFEXPLORERPANE ep,EXPLORERPANESTATE *peps) { return This->lpVtbl->GetPaneState(This,ep,peps); } #endif #endif #endif #endif /* __IExplorerPaneVisibility_INTERFACE_DEFINED__ */ typedef enum tagEXPLORER_BROWSER_FILL_FLAGS { EBF_NONE = 0, EBF_SELECTFROMDATAOBJECT = 0x100, EBF_NODROPTARGET = 0x200 } EXPLORER_BROWSER_FILL_FLAGS; typedef enum tagEXPLORER_BROWSER_OPTIONS { EBO_NONE = 0x0, EBO_NAVIGATEONCE = 0x1, EBO_SHOWFRAMES = 0x2, EBO_ALWAYSNAVIGATE = 0x4, EBO_NOTRAVELLOG = 0x8, EBO_NOWRAPPERWINDOW = 0x10, EBO_HTMLSHAREPOINTVIEW = 0x20, EBO_NOBORDER = 0x40, EBO_NOPERSISTVIEWSTATE = 0x80 } EXPLORER_BROWSER_OPTIONS; #define SID_SExplorerBrowserFrame IID_ICommDlgBrowser /***************************************************************************** * IExplorerBrowser interface */ #ifndef __IExplorerBrowser_INTERFACE_DEFINED__ #define __IExplorerBrowser_INTERFACE_DEFINED__ DEFINE_GUID(IID_IExplorerBrowser, 0xdfd3b6b5, 0xc10c, 0x4be9, 0x85,0xf6, 0xa6,0x69,0x69,0xf4,0x02,0xf6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("dfd3b6b5-c10c-4be9-85f6-a66969f402f6") IExplorerBrowser : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( HWND hwndParent, const RECT *prc, const FOLDERSETTINGS *pfs) = 0; virtual HRESULT STDMETHODCALLTYPE Destroy( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetRect( HDWP *phdwp, RECT rcBrowser) = 0; virtual HRESULT STDMETHODCALLTYPE SetPropertyBag( LPCWSTR pszPropertyBag) = 0; virtual HRESULT STDMETHODCALLTYPE SetEmptyText( LPCWSTR pszEmptyText) = 0; virtual HRESULT STDMETHODCALLTYPE SetFolderSettings( const FOLDERSETTINGS *pfs) = 0; virtual HRESULT STDMETHODCALLTYPE Advise( IExplorerBrowserEvents *psbe, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE SetOptions( EXPLORER_BROWSER_OPTIONS dwFlag) = 0; virtual HRESULT STDMETHODCALLTYPE GetOptions( EXPLORER_BROWSER_OPTIONS *pdwFlag) = 0; virtual HRESULT STDMETHODCALLTYPE BrowseToIDList( PCUIDLIST_RELATIVE pidl, UINT uFlags) = 0; virtual HRESULT STDMETHODCALLTYPE BrowseToObject( IUnknown *punk, UINT uFlags) = 0; virtual HRESULT STDMETHODCALLTYPE FillFromObject( IUnknown *punk, EXPLORER_BROWSER_FILL_FLAGS dwFlags) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAll( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentView( REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IExplorerBrowser, 0xdfd3b6b5, 0xc10c, 0x4be9, 0x85,0xf6, 0xa6,0x69,0x69,0xf4,0x02,0xf6) #endif #else typedef struct IExplorerBrowserVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IExplorerBrowser *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IExplorerBrowser *This); ULONG (STDMETHODCALLTYPE *Release)( IExplorerBrowser *This); /*** IExplorerBrowser methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( IExplorerBrowser *This, HWND hwndParent, const RECT *prc, const FOLDERSETTINGS *pfs); HRESULT (STDMETHODCALLTYPE *Destroy)( IExplorerBrowser *This); HRESULT (STDMETHODCALLTYPE *SetRect)( IExplorerBrowser *This, HDWP *phdwp, RECT rcBrowser); HRESULT (STDMETHODCALLTYPE *SetPropertyBag)( IExplorerBrowser *This, LPCWSTR pszPropertyBag); HRESULT (STDMETHODCALLTYPE *SetEmptyText)( IExplorerBrowser *This, LPCWSTR pszEmptyText); HRESULT (STDMETHODCALLTYPE *SetFolderSettings)( IExplorerBrowser *This, const FOLDERSETTINGS *pfs); HRESULT (STDMETHODCALLTYPE *Advise)( IExplorerBrowser *This, IExplorerBrowserEvents *psbe, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IExplorerBrowser *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOptions)( IExplorerBrowser *This, EXPLORER_BROWSER_OPTIONS dwFlag); HRESULT (STDMETHODCALLTYPE *GetOptions)( IExplorerBrowser *This, EXPLORER_BROWSER_OPTIONS *pdwFlag); HRESULT (STDMETHODCALLTYPE *BrowseToIDList)( IExplorerBrowser *This, PCUIDLIST_RELATIVE pidl, UINT uFlags); HRESULT (STDMETHODCALLTYPE *BrowseToObject)( IExplorerBrowser *This, IUnknown *punk, UINT uFlags); HRESULT (STDMETHODCALLTYPE *FillFromObject)( IExplorerBrowser *This, IUnknown *punk, EXPLORER_BROWSER_FILL_FLAGS dwFlags); HRESULT (STDMETHODCALLTYPE *RemoveAll)( IExplorerBrowser *This); HRESULT (STDMETHODCALLTYPE *GetCurrentView)( IExplorerBrowser *This, REFIID riid, void **ppv); END_INTERFACE } IExplorerBrowserVtbl; interface IExplorerBrowser { CONST_VTBL IExplorerBrowserVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IExplorerBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IExplorerBrowser_AddRef(This) (This)->lpVtbl->AddRef(This) #define IExplorerBrowser_Release(This) (This)->lpVtbl->Release(This) /*** IExplorerBrowser methods ***/ #define IExplorerBrowser_Initialize(This,hwndParent,prc,pfs) (This)->lpVtbl->Initialize(This,hwndParent,prc,pfs) #define IExplorerBrowser_Destroy(This) (This)->lpVtbl->Destroy(This) #define IExplorerBrowser_SetRect(This,phdwp,rcBrowser) (This)->lpVtbl->SetRect(This,phdwp,rcBrowser) #define IExplorerBrowser_SetPropertyBag(This,pszPropertyBag) (This)->lpVtbl->SetPropertyBag(This,pszPropertyBag) #define IExplorerBrowser_SetEmptyText(This,pszEmptyText) (This)->lpVtbl->SetEmptyText(This,pszEmptyText) #define IExplorerBrowser_SetFolderSettings(This,pfs) (This)->lpVtbl->SetFolderSettings(This,pfs) #define IExplorerBrowser_Advise(This,psbe,pdwCookie) (This)->lpVtbl->Advise(This,psbe,pdwCookie) #define IExplorerBrowser_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IExplorerBrowser_SetOptions(This,dwFlag) (This)->lpVtbl->SetOptions(This,dwFlag) #define IExplorerBrowser_GetOptions(This,pdwFlag) (This)->lpVtbl->GetOptions(This,pdwFlag) #define IExplorerBrowser_BrowseToIDList(This,pidl,uFlags) (This)->lpVtbl->BrowseToIDList(This,pidl,uFlags) #define IExplorerBrowser_BrowseToObject(This,punk,uFlags) (This)->lpVtbl->BrowseToObject(This,punk,uFlags) #define IExplorerBrowser_FillFromObject(This,punk,dwFlags) (This)->lpVtbl->FillFromObject(This,punk,dwFlags) #define IExplorerBrowser_RemoveAll(This) (This)->lpVtbl->RemoveAll(This) #define IExplorerBrowser_GetCurrentView(This,riid,ppv) (This)->lpVtbl->GetCurrentView(This,riid,ppv) #else /*** IUnknown methods ***/ static inline HRESULT IExplorerBrowser_QueryInterface(IExplorerBrowser* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IExplorerBrowser_AddRef(IExplorerBrowser* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IExplorerBrowser_Release(IExplorerBrowser* This) { return This->lpVtbl->Release(This); } /*** IExplorerBrowser methods ***/ static inline HRESULT IExplorerBrowser_Initialize(IExplorerBrowser* This,HWND hwndParent,const RECT *prc,const FOLDERSETTINGS *pfs) { return This->lpVtbl->Initialize(This,hwndParent,prc,pfs); } static inline HRESULT IExplorerBrowser_Destroy(IExplorerBrowser* This) { return This->lpVtbl->Destroy(This); } static inline HRESULT IExplorerBrowser_SetRect(IExplorerBrowser* This,HDWP *phdwp,RECT rcBrowser) { return This->lpVtbl->SetRect(This,phdwp,rcBrowser); } static inline HRESULT IExplorerBrowser_SetPropertyBag(IExplorerBrowser* This,LPCWSTR pszPropertyBag) { return This->lpVtbl->SetPropertyBag(This,pszPropertyBag); } static inline HRESULT IExplorerBrowser_SetEmptyText(IExplorerBrowser* This,LPCWSTR pszEmptyText) { return This->lpVtbl->SetEmptyText(This,pszEmptyText); } static inline HRESULT IExplorerBrowser_SetFolderSettings(IExplorerBrowser* This,const FOLDERSETTINGS *pfs) { return This->lpVtbl->SetFolderSettings(This,pfs); } static inline HRESULT IExplorerBrowser_Advise(IExplorerBrowser* This,IExplorerBrowserEvents *psbe,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,psbe,pdwCookie); } static inline HRESULT IExplorerBrowser_Unadvise(IExplorerBrowser* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static inline HRESULT IExplorerBrowser_SetOptions(IExplorerBrowser* This,EXPLORER_BROWSER_OPTIONS dwFlag) { return This->lpVtbl->SetOptions(This,dwFlag); } static inline HRESULT IExplorerBrowser_GetOptions(IExplorerBrowser* This,EXPLORER_BROWSER_OPTIONS *pdwFlag) { return This->lpVtbl->GetOptions(This,pdwFlag); } static inline HRESULT IExplorerBrowser_BrowseToIDList(IExplorerBrowser* This,PCUIDLIST_RELATIVE pidl,UINT uFlags) { return This->lpVtbl->BrowseToIDList(This,pidl,uFlags); } static inline HRESULT IExplorerBrowser_BrowseToObject(IExplorerBrowser* This,IUnknown *punk,UINT uFlags) { return This->lpVtbl->BrowseToObject(This,punk,uFlags); } static inline HRESULT IExplorerBrowser_FillFromObject(IExplorerBrowser* This,IUnknown *punk,EXPLORER_BROWSER_FILL_FLAGS dwFlags) { return This->lpVtbl->FillFromObject(This,punk,dwFlags); } static inline HRESULT IExplorerBrowser_RemoveAll(IExplorerBrowser* This) { return This->lpVtbl->RemoveAll(This); } static inline HRESULT IExplorerBrowser_GetCurrentView(IExplorerBrowser* This,REFIID riid,void **ppv) { return This->lpVtbl->GetCurrentView(This,riid,ppv); } #endif #endif #endif #endif /* __IExplorerBrowser_INTERFACE_DEFINED__ */ /***************************************************************************** * INameSpaceTreeControl interface */ #ifndef __INameSpaceTreeControl_INTERFACE_DEFINED__ #define __INameSpaceTreeControl_INTERFACE_DEFINED__ enum _NSTCSTYLE { NSTCS_HASEXPANDOS = 0x1, NSTCS_HASLINES = 0x2, NSTCS_SINGLECLICKEXPAND = 0x4, NSTCS_FULLROWSELECT = 0x8, NSTCS_SPRINGEXPAND = 0x10, NSTCS_HORIZONTALSCROLL = 0x20, NSTCS_ROOTHASEXPANDO = 0x40, NSTCS_SHOWSELECTIONALWAYS = 0x80, NSTCS_NOINFOTIP = 0x200, NSTCS_EVENHEIGHT = 0x400, NSTCS_NOREPLACEOPEN = 0x800, NSTCS_DISABLEDRAGDROP = 0x1000, NSTCS_NOORDERSTREAM = 0x2000, NSTCS_RICHTOOLTIP = 0x4000, NSTCS_BORDER = 0x8000, NSTCS_NOEDITLABELS = 0x10000, NSTCS_TABSTOP = 0x20000, NSTCS_FAVORITESMODE = 0x80000, NSTCS_AUTOHSCROLL = 0x100000, NSTCS_FADEINOUTEXPANDOS = 0x200000, NSTCS_EMPTYTEXT = 0x400000, NSTCS_CHECKBOXES = 0x800000, NSTCS_PARTIALCHECKBOXES = 0x1000000, NSTCS_EXCLUSIONCHECKBOXES = 0x2000000, NSTCS_DIMMEDCHECKBOXES = 0x4000000, NSTCS_NOINDENTCHECKS = 0x8000000, NSTCS_ALLOWJUNCTIONS = 0x10000000, NSTCS_SHOWTABSBUTTON = 0x20000000, NSTCS_SHOWDELETEBUTTON = 0x40000000, NSTCS_SHOWREFRESHBUTTON = (int)0x80000000 }; typedef DWORD NSTCSTYLE; enum _NSTCROOTSTYLE { NSTCRS_VISIBLE = 0x0, NSTCRS_HIDDEN = 0x1, NSTCRS_EXPANDED = 0x2 }; typedef DWORD NSTCROOTSTYLE; enum _NSTCITEMSTATE { NSTCIS_NONE = 0x0, NSTCIS_SELECTED = 0x1, NSTCIS_EXPANDED = 0x2, NSTCIS_BOLD = 0x4, NSTCIS_DISABLED = 0x8, NSTCIS_SELECTEDNOEXPAND = 0x10 }; typedef DWORD NSTCITEMSTATE; typedef enum NSTCGNI { NSTCGNI_NEXT = 0, NSTCGNI_NEXTVISIBLE = 1, NSTCGNI_PREV = 2, NSTCGNI_PREVVISIBLE = 3, NSTCGNI_PARENT = 4, NSTCGNI_CHILD = 5, NSTCGNI_FIRSTVISIBLE = 6, NSTCGNI_LASTVISIBLE = 7 } NSTCGNI; DEFINE_GUID(IID_INameSpaceTreeControl, 0x028212a3, 0xb627, 0x47e9, 0x88,0x56, 0xc1,0x42,0x65,0x55,0x4e,0x4f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("028212a3-b627-47e9-8856-c14265554e4f") INameSpaceTreeControl : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Initialize( HWND hwndParent, RECT *prc, NSTCSTYLE nstcsFlags) = 0; virtual HRESULT STDMETHODCALLTYPE TreeAdvise( IUnknown *punk, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE TreeUnadvise( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE AppendRoot( IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif) = 0; virtual HRESULT STDMETHODCALLTYPE InsertRoot( int iIndex, IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveRoot( IShellItem *psiRoot) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAllRoots( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetRootItems( IShellItemArray **ppsiaRootItems) = 0; virtual HRESULT STDMETHODCALLTYPE SetItemState( IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemState( IShellItem *psi, NSTCITEMSTATE nstcismask, NSTCITEMSTATE *pnstcisFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectedItems( IShellItemArray **psiaItems) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemCustomState( IShellItem *psi, int *piStateNumber) = 0; virtual HRESULT STDMETHODCALLTYPE SetItemCustomState( IShellItem *psi, int iStateNumber) = 0; virtual HRESULT STDMETHODCALLTYPE EnsureItemVisible( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE SetTheme( LPCWSTR pszTheme) = 0; virtual HRESULT STDMETHODCALLTYPE GetNextItem( IShellItem *psi, NSTCGNI nstcgi, IShellItem **ppsiNext) = 0; virtual HRESULT STDMETHODCALLTYPE HitTest( POINT *ppt, IShellItem **ppsiOut) = 0; virtual HRESULT STDMETHODCALLTYPE GetItemRect( IShellItem *psi, RECT *prect) = 0; virtual HRESULT STDMETHODCALLTYPE CollapseAll( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControl, 0x028212a3, 0xb627, 0x47e9, 0x88,0x56, 0xc1,0x42,0x65,0x55,0x4e,0x4f) #endif #else typedef struct INameSpaceTreeControlVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControl *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControl *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControl *This); /*** INameSpaceTreeControl methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( INameSpaceTreeControl *This, HWND hwndParent, RECT *prc, NSTCSTYLE nstcsFlags); HRESULT (STDMETHODCALLTYPE *TreeAdvise)( INameSpaceTreeControl *This, IUnknown *punk, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *TreeUnadvise)( INameSpaceTreeControl *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *AppendRoot)( INameSpaceTreeControl *This, IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif); HRESULT (STDMETHODCALLTYPE *InsertRoot)( INameSpaceTreeControl *This, int iIndex, IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif); HRESULT (STDMETHODCALLTYPE *RemoveRoot)( INameSpaceTreeControl *This, IShellItem *psiRoot); HRESULT (STDMETHODCALLTYPE *RemoveAllRoots)( INameSpaceTreeControl *This); HRESULT (STDMETHODCALLTYPE *GetRootItems)( INameSpaceTreeControl *This, IShellItemArray **ppsiaRootItems); HRESULT (STDMETHODCALLTYPE *SetItemState)( INameSpaceTreeControl *This, IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisFlags); HRESULT (STDMETHODCALLTYPE *GetItemState)( INameSpaceTreeControl *This, IShellItem *psi, NSTCITEMSTATE nstcismask, NSTCITEMSTATE *pnstcisFlags); HRESULT (STDMETHODCALLTYPE *GetSelectedItems)( INameSpaceTreeControl *This, IShellItemArray **psiaItems); HRESULT (STDMETHODCALLTYPE *GetItemCustomState)( INameSpaceTreeControl *This, IShellItem *psi, int *piStateNumber); HRESULT (STDMETHODCALLTYPE *SetItemCustomState)( INameSpaceTreeControl *This, IShellItem *psi, int iStateNumber); HRESULT (STDMETHODCALLTYPE *EnsureItemVisible)( INameSpaceTreeControl *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetTheme)( INameSpaceTreeControl *This, LPCWSTR pszTheme); HRESULT (STDMETHODCALLTYPE *GetNextItem)( INameSpaceTreeControl *This, IShellItem *psi, NSTCGNI nstcgi, IShellItem **ppsiNext); HRESULT (STDMETHODCALLTYPE *HitTest)( INameSpaceTreeControl *This, POINT *ppt, IShellItem **ppsiOut); HRESULT (STDMETHODCALLTYPE *GetItemRect)( INameSpaceTreeControl *This, IShellItem *psi, RECT *prect); HRESULT (STDMETHODCALLTYPE *CollapseAll)( INameSpaceTreeControl *This); END_INTERFACE } INameSpaceTreeControlVtbl; interface INameSpaceTreeControl { CONST_VTBL INameSpaceTreeControlVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControl_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControl_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControl methods ***/ #define INameSpaceTreeControl_Initialize(This,hwndParent,prc,nstcsFlags) (This)->lpVtbl->Initialize(This,hwndParent,prc,nstcsFlags) #define INameSpaceTreeControl_TreeAdvise(This,punk,pdwCookie) (This)->lpVtbl->TreeAdvise(This,punk,pdwCookie) #define INameSpaceTreeControl_TreeUnadvise(This,dwCookie) (This)->lpVtbl->TreeUnadvise(This,dwCookie) #define INameSpaceTreeControl_AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) #define INameSpaceTreeControl_InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) #define INameSpaceTreeControl_RemoveRoot(This,psiRoot) (This)->lpVtbl->RemoveRoot(This,psiRoot) #define INameSpaceTreeControl_RemoveAllRoots(This) (This)->lpVtbl->RemoveAllRoots(This) #define INameSpaceTreeControl_GetRootItems(This,ppsiaRootItems) (This)->lpVtbl->GetRootItems(This,ppsiaRootItems) #define INameSpaceTreeControl_SetItemState(This,psi,nstcisMask,nstcisFlags) (This)->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags) #define INameSpaceTreeControl_GetItemState(This,psi,nstcismask,pnstcisFlags) (This)->lpVtbl->GetItemState(This,psi,nstcismask,pnstcisFlags) #define INameSpaceTreeControl_GetSelectedItems(This,psiaItems) (This)->lpVtbl->GetSelectedItems(This,psiaItems) #define INameSpaceTreeControl_GetItemCustomState(This,psi,piStateNumber) (This)->lpVtbl->GetItemCustomState(This,psi,piStateNumber) #define INameSpaceTreeControl_SetItemCustomState(This,psi,iStateNumber) (This)->lpVtbl->SetItemCustomState(This,psi,iStateNumber) #define INameSpaceTreeControl_EnsureItemVisible(This,psi) (This)->lpVtbl->EnsureItemVisible(This,psi) #define INameSpaceTreeControl_SetTheme(This,pszTheme) (This)->lpVtbl->SetTheme(This,pszTheme) #define INameSpaceTreeControl_GetNextItem(This,psi,nstcgi,ppsiNext) (This)->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext) #define INameSpaceTreeControl_HitTest(This,ppt,ppsiOut) (This)->lpVtbl->HitTest(This,ppt,ppsiOut) #define INameSpaceTreeControl_GetItemRect(This,psi,prect) (This)->lpVtbl->GetItemRect(This,psi,prect) #define INameSpaceTreeControl_CollapseAll(This) (This)->lpVtbl->CollapseAll(This) #else /*** IUnknown methods ***/ static inline HRESULT INameSpaceTreeControl_QueryInterface(INameSpaceTreeControl* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG INameSpaceTreeControl_AddRef(INameSpaceTreeControl* This) { return This->lpVtbl->AddRef(This); } static inline ULONG INameSpaceTreeControl_Release(INameSpaceTreeControl* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControl methods ***/ static inline HRESULT INameSpaceTreeControl_Initialize(INameSpaceTreeControl* This,HWND hwndParent,RECT *prc,NSTCSTYLE nstcsFlags) { return This->lpVtbl->Initialize(This,hwndParent,prc,nstcsFlags); } static inline HRESULT INameSpaceTreeControl_TreeAdvise(INameSpaceTreeControl* This,IUnknown *punk,DWORD *pdwCookie) { return This->lpVtbl->TreeAdvise(This,punk,pdwCookie); } static inline HRESULT INameSpaceTreeControl_TreeUnadvise(INameSpaceTreeControl* This,DWORD dwCookie) { return This->lpVtbl->TreeUnadvise(This,dwCookie); } static inline HRESULT INameSpaceTreeControl_AppendRoot(INameSpaceTreeControl* This,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { return This->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif); } static inline HRESULT INameSpaceTreeControl_InsertRoot(INameSpaceTreeControl* This,int iIndex,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { return This->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif); } static inline HRESULT INameSpaceTreeControl_RemoveRoot(INameSpaceTreeControl* This,IShellItem *psiRoot) { return This->lpVtbl->RemoveRoot(This,psiRoot); } static inline HRESULT INameSpaceTreeControl_RemoveAllRoots(INameSpaceTreeControl* This) { return This->lpVtbl->RemoveAllRoots(This); } static inline HRESULT INameSpaceTreeControl_GetRootItems(INameSpaceTreeControl* This,IShellItemArray **ppsiaRootItems) { return This->lpVtbl->GetRootItems(This,ppsiaRootItems); } static inline HRESULT INameSpaceTreeControl_SetItemState(INameSpaceTreeControl* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisFlags) { return This->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags); } static inline HRESULT INameSpaceTreeControl_GetItemState(INameSpaceTreeControl* This,IShellItem *psi,NSTCITEMSTATE nstcismask,NSTCITEMSTATE *pnstcisFlags) { return This->lpVtbl->GetItemState(This,psi,nstcismask,pnstcisFlags); } static inline HRESULT INameSpaceTreeControl_GetSelectedItems(INameSpaceTreeControl* This,IShellItemArray **psiaItems) { return This->lpVtbl->GetSelectedItems(This,psiaItems); } static inline HRESULT INameSpaceTreeControl_GetItemCustomState(INameSpaceTreeControl* This,IShellItem *psi,int *piStateNumber) { return This->lpVtbl->GetItemCustomState(This,psi,piStateNumber); } static inline HRESULT INameSpaceTreeControl_SetItemCustomState(INameSpaceTreeControl* This,IShellItem *psi,int iStateNumber) { return This->lpVtbl->SetItemCustomState(This,psi,iStateNumber); } static inline HRESULT INameSpaceTreeControl_EnsureItemVisible(INameSpaceTreeControl* This,IShellItem *psi) { return This->lpVtbl->EnsureItemVisible(This,psi); } static inline HRESULT INameSpaceTreeControl_SetTheme(INameSpaceTreeControl* This,LPCWSTR pszTheme) { return This->lpVtbl->SetTheme(This,pszTheme); } static inline HRESULT INameSpaceTreeControl_GetNextItem(INameSpaceTreeControl* This,IShellItem *psi,NSTCGNI nstcgi,IShellItem **ppsiNext) { return This->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext); } static inline HRESULT INameSpaceTreeControl_HitTest(INameSpaceTreeControl* This,POINT *ppt,IShellItem **ppsiOut) { return This->lpVtbl->HitTest(This,ppt,ppsiOut); } static inline HRESULT INameSpaceTreeControl_GetItemRect(INameSpaceTreeControl* This,IShellItem *psi,RECT *prect) { return This->lpVtbl->GetItemRect(This,psi,prect); } static inline HRESULT INameSpaceTreeControl_CollapseAll(INameSpaceTreeControl* This) { return This->lpVtbl->CollapseAll(This); } #endif #endif #endif #endif /* __INameSpaceTreeControl_INTERFACE_DEFINED__ */ /***************************************************************************** * INameSpaceTreeControl2 interface */ #ifndef __INameSpaceTreeControl2_INTERFACE_DEFINED__ #define __INameSpaceTreeControl2_INTERFACE_DEFINED__ typedef enum NSTCSTYLE2 { NSTCS2_DEFAULT = 0x0, NSTCS2_INTERRUPTNOTIFICATIONS = 0x1, NSTCS2_SHOWNULLSPACEMENU = 0x2, NSTCS2_DISPLAYPADDING = 0x4, NSTCS2_DISPLAYPINNEDONLY = 0x8, NTSCS2_NOSINGLETONAUTOEXPAND = 0x10, NTSCS2_NEVERINSERTNONENUMERATED = 0x20 } NSTCSTYLE2; DEFINE_ENUM_FLAG_OPERATORS(NSTCSTYLE2) DEFINE_GUID(IID_INameSpaceTreeControl2, 0x7cc7aed8, 0x290e, 0x49bc, 0x89,0x45, 0xc1,0x40,0x1c,0xc9,0x30,0x6c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7cc7aed8-290e-49bc-8945-c1401cc9306c") INameSpaceTreeControl2 : public INameSpaceTreeControl { virtual HRESULT STDMETHODCALLTYPE SetControlStyle( NSTCSTYLE nstcsMask, NSTCSTYLE nstcsStyle) = 0; virtual HRESULT STDMETHODCALLTYPE GetControlStyle( NSTCSTYLE nstcsMask, NSTCSTYLE *pnstcsStyle) = 0; virtual HRESULT STDMETHODCALLTYPE SetControlStyle2( NSTCSTYLE2 nstcsMask, NSTCSTYLE2 nstcsStyle) = 0; virtual HRESULT STDMETHODCALLTYPE GetControlStyle2( NSTCSTYLE2 nstcsMask, NSTCSTYLE2 *pnstcsStyle) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControl2, 0x7cc7aed8, 0x290e, 0x49bc, 0x89,0x45, 0xc1,0x40,0x1c,0xc9,0x30,0x6c) #endif #else typedef struct INameSpaceTreeControl2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControl2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControl2 *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControl2 *This); /*** INameSpaceTreeControl methods ***/ HRESULT (STDMETHODCALLTYPE *Initialize)( INameSpaceTreeControl2 *This, HWND hwndParent, RECT *prc, NSTCSTYLE nstcsFlags); HRESULT (STDMETHODCALLTYPE *TreeAdvise)( INameSpaceTreeControl2 *This, IUnknown *punk, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *TreeUnadvise)( INameSpaceTreeControl2 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *AppendRoot)( INameSpaceTreeControl2 *This, IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif); HRESULT (STDMETHODCALLTYPE *InsertRoot)( INameSpaceTreeControl2 *This, int iIndex, IShellItem *psiRoot, SHCONTF grfEnumFlags, NSTCROOTSTYLE grfRootStyle, IShellItemFilter *pif); HRESULT (STDMETHODCALLTYPE *RemoveRoot)( INameSpaceTreeControl2 *This, IShellItem *psiRoot); HRESULT (STDMETHODCALLTYPE *RemoveAllRoots)( INameSpaceTreeControl2 *This); HRESULT (STDMETHODCALLTYPE *GetRootItems)( INameSpaceTreeControl2 *This, IShellItemArray **ppsiaRootItems); HRESULT (STDMETHODCALLTYPE *SetItemState)( INameSpaceTreeControl2 *This, IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisFlags); HRESULT (STDMETHODCALLTYPE *GetItemState)( INameSpaceTreeControl2 *This, IShellItem *psi, NSTCITEMSTATE nstcismask, NSTCITEMSTATE *pnstcisFlags); HRESULT (STDMETHODCALLTYPE *GetSelectedItems)( INameSpaceTreeControl2 *This, IShellItemArray **psiaItems); HRESULT (STDMETHODCALLTYPE *GetItemCustomState)( INameSpaceTreeControl2 *This, IShellItem *psi, int *piStateNumber); HRESULT (STDMETHODCALLTYPE *SetItemCustomState)( INameSpaceTreeControl2 *This, IShellItem *psi, int iStateNumber); HRESULT (STDMETHODCALLTYPE *EnsureItemVisible)( INameSpaceTreeControl2 *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetTheme)( INameSpaceTreeControl2 *This, LPCWSTR pszTheme); HRESULT (STDMETHODCALLTYPE *GetNextItem)( INameSpaceTreeControl2 *This, IShellItem *psi, NSTCGNI nstcgi, IShellItem **ppsiNext); HRESULT (STDMETHODCALLTYPE *HitTest)( INameSpaceTreeControl2 *This, POINT *ppt, IShellItem **ppsiOut); HRESULT (STDMETHODCALLTYPE *GetItemRect)( INameSpaceTreeControl2 *This, IShellItem *psi, RECT *prect); HRESULT (STDMETHODCALLTYPE *CollapseAll)( INameSpaceTreeControl2 *This); /*** INameSpaceTreeControl2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetControlStyle)( INameSpaceTreeControl2 *This, NSTCSTYLE nstcsMask, NSTCSTYLE nstcsStyle); HRESULT (STDMETHODCALLTYPE *GetControlStyle)( INameSpaceTreeControl2 *This, NSTCSTYLE nstcsMask, NSTCSTYLE *pnstcsStyle); HRESULT (STDMETHODCALLTYPE *SetControlStyle2)( INameSpaceTreeControl2 *This, NSTCSTYLE2 nstcsMask, NSTCSTYLE2 nstcsStyle); HRESULT (STDMETHODCALLTYPE *GetControlStyle2)( INameSpaceTreeControl2 *This, NSTCSTYLE2 nstcsMask, NSTCSTYLE2 *pnstcsStyle); END_INTERFACE } INameSpaceTreeControl2Vtbl; interface INameSpaceTreeControl2 { CONST_VTBL INameSpaceTreeControl2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControl2_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControl2_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControl methods ***/ #define INameSpaceTreeControl2_Initialize(This,hwndParent,prc,nstcsFlags) (This)->lpVtbl->Initialize(This,hwndParent,prc,nstcsFlags) #define INameSpaceTreeControl2_TreeAdvise(This,punk,pdwCookie) (This)->lpVtbl->TreeAdvise(This,punk,pdwCookie) #define INameSpaceTreeControl2_TreeUnadvise(This,dwCookie) (This)->lpVtbl->TreeUnadvise(This,dwCookie) #define INameSpaceTreeControl2_AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) #define INameSpaceTreeControl2_InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) #define INameSpaceTreeControl2_RemoveRoot(This,psiRoot) (This)->lpVtbl->RemoveRoot(This,psiRoot) #define INameSpaceTreeControl2_RemoveAllRoots(This) (This)->lpVtbl->RemoveAllRoots(This) #define INameSpaceTreeControl2_GetRootItems(This,ppsiaRootItems) (This)->lpVtbl->GetRootItems(This,ppsiaRootItems) #define INameSpaceTreeControl2_SetItemState(This,psi,nstcisMask,nstcisFlags) (This)->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags) #define INameSpaceTreeControl2_GetItemState(This,psi,nstcismask,pnstcisFlags) (This)->lpVtbl->GetItemState(This,psi,nstcismask,pnstcisFlags) #define INameSpaceTreeControl2_GetSelectedItems(This,psiaItems) (This)->lpVtbl->GetSelectedItems(This,psiaItems) #define INameSpaceTreeControl2_GetItemCustomState(This,psi,piStateNumber) (This)->lpVtbl->GetItemCustomState(This,psi,piStateNumber) #define INameSpaceTreeControl2_SetItemCustomState(This,psi,iStateNumber) (This)->lpVtbl->SetItemCustomState(This,psi,iStateNumber) #define INameSpaceTreeControl2_EnsureItemVisible(This,psi) (This)->lpVtbl->EnsureItemVisible(This,psi) #define INameSpaceTreeControl2_SetTheme(This,pszTheme) (This)->lpVtbl->SetTheme(This,pszTheme) #define INameSpaceTreeControl2_GetNextItem(This,psi,nstcgi,ppsiNext) (This)->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext) #define INameSpaceTreeControl2_HitTest(This,ppt,ppsiOut) (This)->lpVtbl->HitTest(This,ppt,ppsiOut) #define INameSpaceTreeControl2_GetItemRect(This,psi,prect) (This)->lpVtbl->GetItemRect(This,psi,prect) #define INameSpaceTreeControl2_CollapseAll(This) (This)->lpVtbl->CollapseAll(This) /*** INameSpaceTreeControl2 methods ***/ #define INameSpaceTreeControl2_SetControlStyle(This,nstcsMask,nstcsStyle) (This)->lpVtbl->SetControlStyle(This,nstcsMask,nstcsStyle) #define INameSpaceTreeControl2_GetControlStyle(This,nstcsMask,pnstcsStyle) (This)->lpVtbl->GetControlStyle(This,nstcsMask,pnstcsStyle) #define INameSpaceTreeControl2_SetControlStyle2(This,nstcsMask,nstcsStyle) (This)->lpVtbl->SetControlStyle2(This,nstcsMask,nstcsStyle) #define INameSpaceTreeControl2_GetControlStyle2(This,nstcsMask,pnstcsStyle) (This)->lpVtbl->GetControlStyle2(This,nstcsMask,pnstcsStyle) #else /*** IUnknown methods ***/ static inline HRESULT INameSpaceTreeControl2_QueryInterface(INameSpaceTreeControl2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG INameSpaceTreeControl2_AddRef(INameSpaceTreeControl2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG INameSpaceTreeControl2_Release(INameSpaceTreeControl2* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControl methods ***/ static inline HRESULT INameSpaceTreeControl2_Initialize(INameSpaceTreeControl2* This,HWND hwndParent,RECT *prc,NSTCSTYLE nstcsFlags) { return This->lpVtbl->Initialize(This,hwndParent,prc,nstcsFlags); } static inline HRESULT INameSpaceTreeControl2_TreeAdvise(INameSpaceTreeControl2* This,IUnknown *punk,DWORD *pdwCookie) { return This->lpVtbl->TreeAdvise(This,punk,pdwCookie); } static inline HRESULT INameSpaceTreeControl2_TreeUnadvise(INameSpaceTreeControl2* This,DWORD dwCookie) { return This->lpVtbl->TreeUnadvise(This,dwCookie); } static inline HRESULT INameSpaceTreeControl2_AppendRoot(INameSpaceTreeControl2* This,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { return This->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif); } static inline HRESULT INameSpaceTreeControl2_InsertRoot(INameSpaceTreeControl2* This,int iIndex,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { return This->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif); } static inline HRESULT INameSpaceTreeControl2_RemoveRoot(INameSpaceTreeControl2* This,IShellItem *psiRoot) { return This->lpVtbl->RemoveRoot(This,psiRoot); } static inline HRESULT INameSpaceTreeControl2_RemoveAllRoots(INameSpaceTreeControl2* This) { return This->lpVtbl->RemoveAllRoots(This); } static inline HRESULT INameSpaceTreeControl2_GetRootItems(INameSpaceTreeControl2* This,IShellItemArray **ppsiaRootItems) { return This->lpVtbl->GetRootItems(This,ppsiaRootItems); } static inline HRESULT INameSpaceTreeControl2_SetItemState(INameSpaceTreeControl2* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisFlags) { return This->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags); } static inline HRESULT INameSpaceTreeControl2_GetItemState(INameSpaceTreeControl2* This,IShellItem *psi,NSTCITEMSTATE nstcismask,NSTCITEMSTATE *pnstcisFlags) { return This->lpVtbl->GetItemState(This,psi,nstcismask,pnstcisFlags); } static inline HRESULT INameSpaceTreeControl2_GetSelectedItems(INameSpaceTreeControl2* This,IShellItemArray **psiaItems) { return This->lpVtbl->GetSelectedItems(This,psiaItems); } static inline HRESULT INameSpaceTreeControl2_GetItemCustomState(INameSpaceTreeControl2* This,IShellItem *psi,int *piStateNumber) { return This->lpVtbl->GetItemCustomState(This,psi,piStateNumber); } static inline HRESULT INameSpaceTreeControl2_SetItemCustomState(INameSpaceTreeControl2* This,IShellItem *psi,int iStateNumber) { return This->lpVtbl->SetItemCustomState(This,psi,iStateNumber); } static inline HRESULT INameSpaceTreeControl2_EnsureItemVisible(INameSpaceTreeControl2* This,IShellItem *psi) { return This->lpVtbl->EnsureItemVisible(This,psi); } static inline HRESULT INameSpaceTreeControl2_SetTheme(INameSpaceTreeControl2* This,LPCWSTR pszTheme) { return This->lpVtbl->SetTheme(This,pszTheme); } static inline HRESULT INameSpaceTreeControl2_GetNextItem(INameSpaceTreeControl2* This,IShellItem *psi,NSTCGNI nstcgi,IShellItem **ppsiNext) { return This->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext); } static inline HRESULT INameSpaceTreeControl2_HitTest(INameSpaceTreeControl2* This,POINT *ppt,IShellItem **ppsiOut) { return This->lpVtbl->HitTest(This,ppt,ppsiOut); } static inline HRESULT INameSpaceTreeControl2_GetItemRect(INameSpaceTreeControl2* This,IShellItem *psi,RECT *prect) { return This->lpVtbl->GetItemRect(This,psi,prect); } static inline HRESULT INameSpaceTreeControl2_CollapseAll(INameSpaceTreeControl2* This) { return This->lpVtbl->CollapseAll(This); } /*** INameSpaceTreeControl2 methods ***/ static inline HRESULT INameSpaceTreeControl2_SetControlStyle(INameSpaceTreeControl2* This,NSTCSTYLE nstcsMask,NSTCSTYLE nstcsStyle) { return This->lpVtbl->SetControlStyle(This,nstcsMask,nstcsStyle); } static inline HRESULT INameSpaceTreeControl2_GetControlStyle(INameSpaceTreeControl2* This,NSTCSTYLE nstcsMask,NSTCSTYLE *pnstcsStyle) { return This->lpVtbl->GetControlStyle(This,nstcsMask,pnstcsStyle); } static inline HRESULT INameSpaceTreeControl2_SetControlStyle2(INameSpaceTreeControl2* This,NSTCSTYLE2 nstcsMask,NSTCSTYLE2 nstcsStyle) { return This->lpVtbl->SetControlStyle2(This,nstcsMask,nstcsStyle); } static inline HRESULT INameSpaceTreeControl2_GetControlStyle2(INameSpaceTreeControl2* This,NSTCSTYLE2 nstcsMask,NSTCSTYLE2 *pnstcsStyle) { return This->lpVtbl->GetControlStyle2(This,nstcsMask,pnstcsStyle); } #endif #endif #endif #endif /* __INameSpaceTreeControl2_INTERFACE_DEFINED__ */ /***************************************************************************** * INameSpaceTreeControlEvents interface */ #ifndef __INameSpaceTreeControlEvents_INTERFACE_DEFINED__ #define __INameSpaceTreeControlEvents_INTERFACE_DEFINED__ enum _NSTCEHITTEST { NSTCEHT_NOWHERE = 0x1, NSTCEHT_ONITEMICON = 0x2, NSTCEHT_ONITEMLABEL = 0x4, NSTCEHT_ONITEMIDENT = 0x8, NSTCEHT_ONITEMBUTTON = 0x10, NSTCEHT_ONITEMRIGHT = 0x20, NSTCEHT_ONITEMSTATEICON = 0x40, NSTCEHT_ONITEM = 0x46, NSTCEHT_ONITEMTABBUTTON = 0x1000 }; typedef DWORD NSTCEHITTEST; enum _NSTCECLICKTYPE { NSTCECT_LBUTTON = 0x1, NSTCECT_MBUTTON = 0x2, NSTCECT_RBUTTON = 0x3, NSTCECT_BUTTON = 0x3, NSTCECT_DBLCLICK = 0x4 }; typedef DWORD NSTCECLICKTYPE; DEFINE_GUID(IID_INameSpaceTreeControlEvents, 0x93d77985, 0xb3d8, 0x4484, 0x83,0x18, 0x67,0x2c,0xdd,0xa0,0x02,0xce); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("93d77985-b3d8-4484-8318-672cdda002ce") INameSpaceTreeControlEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnItemClick( IShellItem *psi, NSTCEHITTEST nstceHitTest, NSTCECLICKTYPE nstceClickType) = 0; virtual HRESULT STDMETHODCALLTYPE OnPropertyItemCommit( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnItemStateChanging( IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisState) = 0; virtual HRESULT STDMETHODCALLTYPE OnItemStateChanged( IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisState) = 0; virtual HRESULT STDMETHODCALLTYPE OnSelectionChanged( IShellItemArray *psiaSelection) = 0; virtual HRESULT STDMETHODCALLTYPE OnKeyboardInput( UINT uMsg, WPARAM wParam, LPARAM lParam) = 0; virtual HRESULT STDMETHODCALLTYPE OnBeforeExpand( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnAfterExpand( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnBeginLabelEdit( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnEndLabelEdit( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnGetToolTip( IShellItem *psi, LPWSTR pszTip, int cchTip) = 0; virtual HRESULT STDMETHODCALLTYPE OnBeforeItemDelete( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnItemAdded( IShellItem *psi, BOOL fIsRoot) = 0; virtual HRESULT STDMETHODCALLTYPE OnItemDeleted( IShellItem *psi, BOOL fIsRoot) = 0; virtual HRESULT STDMETHODCALLTYPE OnBeforeContextMenu( IShellItem *psi, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE OnAfterContextMenu( IShellItem *psi, IContextMenu *pcmIn, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE OnBeforeStateImageChange( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE OnGetDefaultIconIndex( IShellItem *psi, int *piDefaultIcon, int *piOpenIcon) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControlEvents, 0x93d77985, 0xb3d8, 0x4484, 0x83,0x18, 0x67,0x2c,0xdd,0xa0,0x02,0xce) #endif #else typedef struct INameSpaceTreeControlEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControlEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControlEvents *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControlEvents *This); /*** INameSpaceTreeControlEvents methods ***/ HRESULT (STDMETHODCALLTYPE *OnItemClick)( INameSpaceTreeControlEvents *This, IShellItem *psi, NSTCEHITTEST nstceHitTest, NSTCECLICKTYPE nstceClickType); HRESULT (STDMETHODCALLTYPE *OnPropertyItemCommit)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnItemStateChanging)( INameSpaceTreeControlEvents *This, IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisState); HRESULT (STDMETHODCALLTYPE *OnItemStateChanged)( INameSpaceTreeControlEvents *This, IShellItem *psi, NSTCITEMSTATE nstcisMask, NSTCITEMSTATE nstcisState); HRESULT (STDMETHODCALLTYPE *OnSelectionChanged)( INameSpaceTreeControlEvents *This, IShellItemArray *psiaSelection); HRESULT (STDMETHODCALLTYPE *OnKeyboardInput)( INameSpaceTreeControlEvents *This, UINT uMsg, WPARAM wParam, LPARAM lParam); HRESULT (STDMETHODCALLTYPE *OnBeforeExpand)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnAfterExpand)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnBeginLabelEdit)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnEndLabelEdit)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnGetToolTip)( INameSpaceTreeControlEvents *This, IShellItem *psi, LPWSTR pszTip, int cchTip); HRESULT (STDMETHODCALLTYPE *OnBeforeItemDelete)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnItemAdded)( INameSpaceTreeControlEvents *This, IShellItem *psi, BOOL fIsRoot); HRESULT (STDMETHODCALLTYPE *OnItemDeleted)( INameSpaceTreeControlEvents *This, IShellItem *psi, BOOL fIsRoot); HRESULT (STDMETHODCALLTYPE *OnBeforeContextMenu)( INameSpaceTreeControlEvents *This, IShellItem *psi, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *OnAfterContextMenu)( INameSpaceTreeControlEvents *This, IShellItem *psi, IContextMenu *pcmIn, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *OnBeforeStateImageChange)( INameSpaceTreeControlEvents *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *OnGetDefaultIconIndex)( INameSpaceTreeControlEvents *This, IShellItem *psi, int *piDefaultIcon, int *piOpenIcon); END_INTERFACE } INameSpaceTreeControlEventsVtbl; interface INameSpaceTreeControlEvents { CONST_VTBL INameSpaceTreeControlEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControlEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControlEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControlEvents_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControlEvents methods ***/ #define INameSpaceTreeControlEvents_OnItemClick(This,psi,nstceHitTest,nstceClickType) (This)->lpVtbl->OnItemClick(This,psi,nstceHitTest,nstceClickType) #define INameSpaceTreeControlEvents_OnPropertyItemCommit(This,psi) (This)->lpVtbl->OnPropertyItemCommit(This,psi) #define INameSpaceTreeControlEvents_OnItemStateChanging(This,psi,nstcisMask,nstcisState) (This)->lpVtbl->OnItemStateChanging(This,psi,nstcisMask,nstcisState) #define INameSpaceTreeControlEvents_OnItemStateChanged(This,psi,nstcisMask,nstcisState) (This)->lpVtbl->OnItemStateChanged(This,psi,nstcisMask,nstcisState) #define INameSpaceTreeControlEvents_OnSelectionChanged(This,psiaSelection) (This)->lpVtbl->OnSelectionChanged(This,psiaSelection) #define INameSpaceTreeControlEvents_OnKeyboardInput(This,uMsg,wParam,lParam) (This)->lpVtbl->OnKeyboardInput(This,uMsg,wParam,lParam) #define INameSpaceTreeControlEvents_OnBeforeExpand(This,psi) (This)->lpVtbl->OnBeforeExpand(This,psi) #define INameSpaceTreeControlEvents_OnAfterExpand(This,psi) (This)->lpVtbl->OnAfterExpand(This,psi) #define INameSpaceTreeControlEvents_OnBeginLabelEdit(This,psi) (This)->lpVtbl->OnBeginLabelEdit(This,psi) #define INameSpaceTreeControlEvents_OnEndLabelEdit(This,psi) (This)->lpVtbl->OnEndLabelEdit(This,psi) #define INameSpaceTreeControlEvents_OnGetToolTip(This,psi,pszTip,cchTip) (This)->lpVtbl->OnGetToolTip(This,psi,pszTip,cchTip) #define INameSpaceTreeControlEvents_OnBeforeItemDelete(This,psi) (This)->lpVtbl->OnBeforeItemDelete(This,psi) #define INameSpaceTreeControlEvents_OnItemAdded(This,psi,fIsRoot) (This)->lpVtbl->OnItemAdded(This,psi,fIsRoot) #define INameSpaceTreeControlEvents_OnItemDeleted(This,psi,fIsRoot) (This)->lpVtbl->OnItemDeleted(This,psi,fIsRoot) #define INameSpaceTreeControlEvents_OnBeforeContextMenu(This,psi,riid,ppv) (This)->lpVtbl->OnBeforeContextMenu(This,psi,riid,ppv) #define INameSpaceTreeControlEvents_OnAfterContextMenu(This,psi,pcmIn,riid,ppv) (This)->lpVtbl->OnAfterContextMenu(This,psi,pcmIn,riid,ppv) #define INameSpaceTreeControlEvents_OnBeforeStateImageChange(This,psi) (This)->lpVtbl->OnBeforeStateImageChange(This,psi) #define INameSpaceTreeControlEvents_OnGetDefaultIconIndex(This,psi,piDefaultIcon,piOpenIcon) (This)->lpVtbl->OnGetDefaultIconIndex(This,psi,piDefaultIcon,piOpenIcon) #else /*** IUnknown methods ***/ static inline HRESULT INameSpaceTreeControlEvents_QueryInterface(INameSpaceTreeControlEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG INameSpaceTreeControlEvents_AddRef(INameSpaceTreeControlEvents* This) { return This->lpVtbl->AddRef(This); } static inline ULONG INameSpaceTreeControlEvents_Release(INameSpaceTreeControlEvents* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControlEvents methods ***/ static inline HRESULT INameSpaceTreeControlEvents_OnItemClick(INameSpaceTreeControlEvents* This,IShellItem *psi,NSTCEHITTEST nstceHitTest,NSTCECLICKTYPE nstceClickType) { return This->lpVtbl->OnItemClick(This,psi,nstceHitTest,nstceClickType); } static inline HRESULT INameSpaceTreeControlEvents_OnPropertyItemCommit(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnPropertyItemCommit(This,psi); } static inline HRESULT INameSpaceTreeControlEvents_OnItemStateChanging(INameSpaceTreeControlEvents* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisState) { return This->lpVtbl->OnItemStateChanging(This,psi,nstcisMask,nstcisState); } static inline HRESULT INameSpaceTreeControlEvents_OnItemStateChanged(INameSpaceTreeControlEvents* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisState) { return This->lpVtbl->OnItemStateChanged(This,psi,nstcisMask,nstcisState); } static inline HRESULT INameSpaceTreeControlEvents_OnSelectionChanged(INameSpaceTreeControlEvents* This,IShellItemArray *psiaSelection) { return This->lpVtbl->OnSelectionChanged(This,psiaSelection); } static inline HRESULT INameSpaceTreeControlEvents_OnKeyboardInput(INameSpaceTreeControlEvents* This,UINT uMsg,WPARAM wParam,LPARAM lParam) { return This->lpVtbl->OnKeyboardInput(This,uMsg,wParam,lParam); } static inline HRESULT INameSpaceTreeControlEvents_OnBeforeExpand(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnBeforeExpand(This,psi); } static inline HRESULT INameSpaceTreeControlEvents_OnAfterExpand(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnAfterExpand(This,psi); } static inline HRESULT INameSpaceTreeControlEvents_OnBeginLabelEdit(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnBeginLabelEdit(This,psi); } static inline HRESULT INameSpaceTreeControlEvents_OnEndLabelEdit(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnEndLabelEdit(This,psi); } static inline HRESULT INameSpaceTreeControlEvents_OnGetToolTip(INameSpaceTreeControlEvents* This,IShellItem *psi,LPWSTR pszTip,int cchTip) { return This->lpVtbl->OnGetToolTip(This,psi,pszTip,cchTip); } static inline HRESULT INameSpaceTreeControlEvents_OnBeforeItemDelete(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnBeforeItemDelete(This,psi); } static inline HRESULT INameSpaceTreeControlEvents_OnItemAdded(INameSpaceTreeControlEvents* This,IShellItem *psi,BOOL fIsRoot) { return This->lpVtbl->OnItemAdded(This,psi,fIsRoot); } static inline HRESULT INameSpaceTreeControlEvents_OnItemDeleted(INameSpaceTreeControlEvents* This,IShellItem *psi,BOOL fIsRoot) { return This->lpVtbl->OnItemDeleted(This,psi,fIsRoot); } static inline HRESULT INameSpaceTreeControlEvents_OnBeforeContextMenu(INameSpaceTreeControlEvents* This,IShellItem *psi,REFIID riid,void **ppv) { return This->lpVtbl->OnBeforeContextMenu(This,psi,riid,ppv); } static inline HRESULT INameSpaceTreeControlEvents_OnAfterContextMenu(INameSpaceTreeControlEvents* This,IShellItem *psi,IContextMenu *pcmIn,REFIID riid,void **ppv) { return This->lpVtbl->OnAfterContextMenu(This,psi,pcmIn,riid,ppv); } static inline HRESULT INameSpaceTreeControlEvents_OnBeforeStateImageChange(INameSpaceTreeControlEvents* This,IShellItem *psi) { return This->lpVtbl->OnBeforeStateImageChange(This,psi); } static inline HRESULT INameSpaceTreeControlEvents_OnGetDefaultIconIndex(INameSpaceTreeControlEvents* This,IShellItem *psi,int *piDefaultIcon,int *piOpenIcon) { return This->lpVtbl->OnGetDefaultIconIndex(This,psi,piDefaultIcon,piOpenIcon); } #endif #endif #endif #endif /* __INameSpaceTreeControlEvents_INTERFACE_DEFINED__ */ /***************************************************************************** * INameSpaceTreeControlCustomDraw interface */ #ifndef __INameSpaceTreeControlCustomDraw_INTERFACE_DEFINED__ #define __INameSpaceTreeControlCustomDraw_INTERFACE_DEFINED__ typedef struct NSTCCUSTOMDRAW { IShellItem *psi; UINT uItemState; NSTCITEMSTATE nstcis; LPCWSTR pszText; int iImage; HIMAGELIST himl; int iLevel; int iIndent; } NSTCCUSTOMDRAW; DEFINE_GUID(IID_INameSpaceTreeControlCustomDraw, 0x2d3ba758, 0x33ee, 0x42d5, 0xbb,0x7b, 0x5f,0x34,0x31,0xd8,0x6c,0x78); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2d3ba758-33ee-42d5-bb7b-5f3431d86c78") INameSpaceTreeControlCustomDraw : public IUnknown { virtual HRESULT STDMETHODCALLTYPE PrePaint( HDC hdc, RECT *prc, LRESULT *plres) = 0; virtual HRESULT STDMETHODCALLTYPE PostPaint( HDC hdc, RECT *prc) = 0; virtual HRESULT STDMETHODCALLTYPE ItemPrePaint( HDC hdc, RECT *prc, NSTCCUSTOMDRAW *pnstccdItem, COLORREF *pclrText, COLORREF *pclrTextBk, LRESULT *plres) = 0; virtual HRESULT STDMETHODCALLTYPE ItemPostPaint( HDC hdc, RECT *prc, NSTCCUSTOMDRAW *pnstccdItem) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControlCustomDraw, 0x2d3ba758, 0x33ee, 0x42d5, 0xbb,0x7b, 0x5f,0x34,0x31,0xd8,0x6c,0x78) #endif #else typedef struct INameSpaceTreeControlCustomDrawVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControlCustomDraw *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControlCustomDraw *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControlCustomDraw *This); /*** INameSpaceTreeControlCustomDraw methods ***/ HRESULT (STDMETHODCALLTYPE *PrePaint)( INameSpaceTreeControlCustomDraw *This, HDC hdc, RECT *prc, LRESULT *plres); HRESULT (STDMETHODCALLTYPE *PostPaint)( INameSpaceTreeControlCustomDraw *This, HDC hdc, RECT *prc); HRESULT (STDMETHODCALLTYPE *ItemPrePaint)( INameSpaceTreeControlCustomDraw *This, HDC hdc, RECT *prc, NSTCCUSTOMDRAW *pnstccdItem, COLORREF *pclrText, COLORREF *pclrTextBk, LRESULT *plres); HRESULT (STDMETHODCALLTYPE *ItemPostPaint)( INameSpaceTreeControlCustomDraw *This, HDC hdc, RECT *prc, NSTCCUSTOMDRAW *pnstccdItem); END_INTERFACE } INameSpaceTreeControlCustomDrawVtbl; interface INameSpaceTreeControlCustomDraw { CONST_VTBL INameSpaceTreeControlCustomDrawVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControlCustomDraw_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControlCustomDraw_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControlCustomDraw_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControlCustomDraw methods ***/ #define INameSpaceTreeControlCustomDraw_PrePaint(This,hdc,prc,plres) (This)->lpVtbl->PrePaint(This,hdc,prc,plres) #define INameSpaceTreeControlCustomDraw_PostPaint(This,hdc,prc) (This)->lpVtbl->PostPaint(This,hdc,prc) #define INameSpaceTreeControlCustomDraw_ItemPrePaint(This,hdc,prc,pnstccdItem,pclrText,pclrTextBk,plres) (This)->lpVtbl->ItemPrePaint(This,hdc,prc,pnstccdItem,pclrText,pclrTextBk,plres) #define INameSpaceTreeControlCustomDraw_ItemPostPaint(This,hdc,prc,pnstccdItem) (This)->lpVtbl->ItemPostPaint(This,hdc,prc,pnstccdItem) #else /*** IUnknown methods ***/ static inline HRESULT INameSpaceTreeControlCustomDraw_QueryInterface(INameSpaceTreeControlCustomDraw* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG INameSpaceTreeControlCustomDraw_AddRef(INameSpaceTreeControlCustomDraw* This) { return This->lpVtbl->AddRef(This); } static inline ULONG INameSpaceTreeControlCustomDraw_Release(INameSpaceTreeControlCustomDraw* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControlCustomDraw methods ***/ static inline HRESULT INameSpaceTreeControlCustomDraw_PrePaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc,LRESULT *plres) { return This->lpVtbl->PrePaint(This,hdc,prc,plres); } static inline HRESULT INameSpaceTreeControlCustomDraw_PostPaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc) { return This->lpVtbl->PostPaint(This,hdc,prc); } static inline HRESULT INameSpaceTreeControlCustomDraw_ItemPrePaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc,NSTCCUSTOMDRAW *pnstccdItem,COLORREF *pclrText,COLORREF *pclrTextBk,LRESULT *plres) { return This->lpVtbl->ItemPrePaint(This,hdc,prc,pnstccdItem,pclrText,pclrTextBk,plres); } static inline HRESULT INameSpaceTreeControlCustomDraw_ItemPostPaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc,NSTCCUSTOMDRAW *pnstccdItem) { return This->lpVtbl->ItemPostPaint(This,hdc,prc,pnstccdItem); } #endif #endif #endif #endif /* __INameSpaceTreeControlCustomDraw_INTERFACE_DEFINED__ */ /***************************************************************************** * INameSpaceTreeControlDropHandler interface */ #ifndef __INameSpaceTreeControlDropHandler_INTERFACE_DEFINED__ #define __INameSpaceTreeControlDropHandler_INTERFACE_DEFINED__ DEFINE_GUID(IID_INameSpaceTreeControlDropHandler, 0xf9c665d6, 0xc2f2, 0x4c19, 0xbf,0x33, 0x83,0x22,0xd7,0x35,0x2f,0x51); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f9c665d6-c2f2-4c19-bf33-8322d7352f51") INameSpaceTreeControlDropHandler : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnDragEnter( IShellItem *psiOver, IShellItemArray *psiaData, BOOL fOutsideSource, DWORD grfKeyState, DWORD *pdwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE OnDragOver( IShellItem *psiOver, IShellItemArray *psiaData, DWORD grfKeyState, DWORD *pdwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE OnDragPosition( IShellItem *psiOver, IShellItemArray *psiaData, int iNewPosition, int iOldPosition) = 0; virtual HRESULT STDMETHODCALLTYPE OnDrop( IShellItem *psiOver, IShellItemArray *psiaData, int iPosition, DWORD grfKeyState, DWORD *pdwEffect) = 0; virtual HRESULT STDMETHODCALLTYPE OnDropPosition( IShellItem *psiOver, IShellItemArray *psiaData, int iNewPosition, int iOldPosition) = 0; virtual HRESULT STDMETHODCALLTYPE OnDragLeave( IShellItem *psiOver) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(INameSpaceTreeControlDropHandler, 0xf9c665d6, 0xc2f2, 0x4c19, 0xbf,0x33, 0x83,0x22,0xd7,0x35,0x2f,0x51) #endif #else typedef struct INameSpaceTreeControlDropHandlerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( INameSpaceTreeControlDropHandler *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( INameSpaceTreeControlDropHandler *This); ULONG (STDMETHODCALLTYPE *Release)( INameSpaceTreeControlDropHandler *This); /*** INameSpaceTreeControlDropHandler methods ***/ HRESULT (STDMETHODCALLTYPE *OnDragEnter)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver, IShellItemArray *psiaData, BOOL fOutsideSource, DWORD grfKeyState, DWORD *pdwEffect); HRESULT (STDMETHODCALLTYPE *OnDragOver)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver, IShellItemArray *psiaData, DWORD grfKeyState, DWORD *pdwEffect); HRESULT (STDMETHODCALLTYPE *OnDragPosition)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver, IShellItemArray *psiaData, int iNewPosition, int iOldPosition); HRESULT (STDMETHODCALLTYPE *OnDrop)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver, IShellItemArray *psiaData, int iPosition, DWORD grfKeyState, DWORD *pdwEffect); HRESULT (STDMETHODCALLTYPE *OnDropPosition)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver, IShellItemArray *psiaData, int iNewPosition, int iOldPosition); HRESULT (STDMETHODCALLTYPE *OnDragLeave)( INameSpaceTreeControlDropHandler *This, IShellItem *psiOver); END_INTERFACE } INameSpaceTreeControlDropHandlerVtbl; interface INameSpaceTreeControlDropHandler { CONST_VTBL INameSpaceTreeControlDropHandlerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define INameSpaceTreeControlDropHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define INameSpaceTreeControlDropHandler_AddRef(This) (This)->lpVtbl->AddRef(This) #define INameSpaceTreeControlDropHandler_Release(This) (This)->lpVtbl->Release(This) /*** INameSpaceTreeControlDropHandler methods ***/ #define INameSpaceTreeControlDropHandler_OnDragEnter(This,psiOver,psiaData,fOutsideSource,grfKeyState,pdwEffect) (This)->lpVtbl->OnDragEnter(This,psiOver,psiaData,fOutsideSource,grfKeyState,pdwEffect) #define INameSpaceTreeControlDropHandler_OnDragOver(This,psiOver,psiaData,grfKeyState,pdwEffect) (This)->lpVtbl->OnDragOver(This,psiOver,psiaData,grfKeyState,pdwEffect) #define INameSpaceTreeControlDropHandler_OnDragPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) (This)->lpVtbl->OnDragPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) #define INameSpaceTreeControlDropHandler_OnDrop(This,psiOver,psiaData,iPosition,grfKeyState,pdwEffect) (This)->lpVtbl->OnDrop(This,psiOver,psiaData,iPosition,grfKeyState,pdwEffect) #define INameSpaceTreeControlDropHandler_OnDropPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) (This)->lpVtbl->OnDropPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) #define INameSpaceTreeControlDropHandler_OnDragLeave(This,psiOver) (This)->lpVtbl->OnDragLeave(This,psiOver) #else /*** IUnknown methods ***/ static inline HRESULT INameSpaceTreeControlDropHandler_QueryInterface(INameSpaceTreeControlDropHandler* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG INameSpaceTreeControlDropHandler_AddRef(INameSpaceTreeControlDropHandler* This) { return This->lpVtbl->AddRef(This); } static inline ULONG INameSpaceTreeControlDropHandler_Release(INameSpaceTreeControlDropHandler* This) { return This->lpVtbl->Release(This); } /*** INameSpaceTreeControlDropHandler methods ***/ static inline HRESULT INameSpaceTreeControlDropHandler_OnDragEnter(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,BOOL fOutsideSource,DWORD grfKeyState,DWORD *pdwEffect) { return This->lpVtbl->OnDragEnter(This,psiOver,psiaData,fOutsideSource,grfKeyState,pdwEffect); } static inline HRESULT INameSpaceTreeControlDropHandler_OnDragOver(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,DWORD grfKeyState,DWORD *pdwEffect) { return This->lpVtbl->OnDragOver(This,psiOver,psiaData,grfKeyState,pdwEffect); } static inline HRESULT INameSpaceTreeControlDropHandler_OnDragPosition(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,int iNewPosition,int iOldPosition) { return This->lpVtbl->OnDragPosition(This,psiOver,psiaData,iNewPosition,iOldPosition); } static inline HRESULT INameSpaceTreeControlDropHandler_OnDrop(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,int iPosition,DWORD grfKeyState,DWORD *pdwEffect) { return This->lpVtbl->OnDrop(This,psiOver,psiaData,iPosition,grfKeyState,pdwEffect); } static inline HRESULT INameSpaceTreeControlDropHandler_OnDropPosition(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,int iNewPosition,int iOldPosition) { return This->lpVtbl->OnDropPosition(This,psiOver,psiaData,iNewPosition,iOldPosition); } static inline HRESULT INameSpaceTreeControlDropHandler_OnDragLeave(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver) { return This->lpVtbl->OnDragLeave(This,psiOver); } #endif #endif #endif #endif /* __INameSpaceTreeControlDropHandler_INTERFACE_DEFINED__ */ #define NSTCDHPOS_ONTOP -1 #ifndef __IFileDialog_FWD_DEFINED__ #define __IFileDialog_FWD_DEFINED__ typedef interface IFileDialog IFileDialog; #ifdef __cplusplus interface IFileDialog; #endif /* __cplusplus */ #endif typedef enum FDE_OVERWRITE_RESPONSE { FDEOR_DEFAULT = 0, FDEOR_ACCEPT = 1, FDEOR_REFUSE = 2 } FDE_OVERWRITE_RESPONSE; typedef enum FDE_SHAREVIOLATION_RESPONSE { FDESVR_DEFAULT = 0, FDESVR_ACCEPT = 1, FDESVR_REFUSE = 2 } FDE_SHAREVIOLATION_RESPONSE; /***************************************************************************** * IFileDialogEvents interface */ #ifndef __IFileDialogEvents_INTERFACE_DEFINED__ #define __IFileDialogEvents_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileDialogEvents, 0x973510db, 0x7d7f, 0x452b, 0x89,0x75, 0x74,0xa8,0x58,0x28,0xd3,0x54); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("973510db-7d7f-452b-8975-74a85828d354") IFileDialogEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnFileOk( IFileDialog *pfd) = 0; virtual HRESULT STDMETHODCALLTYPE OnFolderChanging( IFileDialog *pfd, IShellItem *psiFolder) = 0; virtual HRESULT STDMETHODCALLTYPE OnFolderChange( IFileDialog *pfd) = 0; virtual HRESULT STDMETHODCALLTYPE OnSelectionChange( IFileDialog *pfd) = 0; virtual HRESULT STDMETHODCALLTYPE OnShareViolation( IFileDialog *pfd, IShellItem *psi, FDE_SHAREVIOLATION_RESPONSE *pResponse) = 0; virtual HRESULT STDMETHODCALLTYPE OnTypeChange( IFileDialog *pfd) = 0; virtual HRESULT STDMETHODCALLTYPE OnOverwrite( IFileDialog *pfd, IShellItem *psi, FDE_OVERWRITE_RESPONSE *pResponse) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileDialogEvents, 0x973510db, 0x7d7f, 0x452b, 0x89,0x75, 0x74,0xa8,0x58,0x28,0xd3,0x54) #endif #else typedef struct IFileDialogEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileDialogEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileDialogEvents *This); ULONG (STDMETHODCALLTYPE *Release)( IFileDialogEvents *This); /*** IFileDialogEvents methods ***/ HRESULT (STDMETHODCALLTYPE *OnFileOk)( IFileDialogEvents *This, IFileDialog *pfd); HRESULT (STDMETHODCALLTYPE *OnFolderChanging)( IFileDialogEvents *This, IFileDialog *pfd, IShellItem *psiFolder); HRESULT (STDMETHODCALLTYPE *OnFolderChange)( IFileDialogEvents *This, IFileDialog *pfd); HRESULT (STDMETHODCALLTYPE *OnSelectionChange)( IFileDialogEvents *This, IFileDialog *pfd); HRESULT (STDMETHODCALLTYPE *OnShareViolation)( IFileDialogEvents *This, IFileDialog *pfd, IShellItem *psi, FDE_SHAREVIOLATION_RESPONSE *pResponse); HRESULT (STDMETHODCALLTYPE *OnTypeChange)( IFileDialogEvents *This, IFileDialog *pfd); HRESULT (STDMETHODCALLTYPE *OnOverwrite)( IFileDialogEvents *This, IFileDialog *pfd, IShellItem *psi, FDE_OVERWRITE_RESPONSE *pResponse); END_INTERFACE } IFileDialogEventsVtbl; interface IFileDialogEvents { CONST_VTBL IFileDialogEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileDialogEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileDialogEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileDialogEvents_Release(This) (This)->lpVtbl->Release(This) /*** IFileDialogEvents methods ***/ #define IFileDialogEvents_OnFileOk(This,pfd) (This)->lpVtbl->OnFileOk(This,pfd) #define IFileDialogEvents_OnFolderChanging(This,pfd,psiFolder) (This)->lpVtbl->OnFolderChanging(This,pfd,psiFolder) #define IFileDialogEvents_OnFolderChange(This,pfd) (This)->lpVtbl->OnFolderChange(This,pfd) #define IFileDialogEvents_OnSelectionChange(This,pfd) (This)->lpVtbl->OnSelectionChange(This,pfd) #define IFileDialogEvents_OnShareViolation(This,pfd,psi,pResponse) (This)->lpVtbl->OnShareViolation(This,pfd,psi,pResponse) #define IFileDialogEvents_OnTypeChange(This,pfd) (This)->lpVtbl->OnTypeChange(This,pfd) #define IFileDialogEvents_OnOverwrite(This,pfd,psi,pResponse) (This)->lpVtbl->OnOverwrite(This,pfd,psi,pResponse) #else /*** IUnknown methods ***/ static inline HRESULT IFileDialogEvents_QueryInterface(IFileDialogEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFileDialogEvents_AddRef(IFileDialogEvents* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFileDialogEvents_Release(IFileDialogEvents* This) { return This->lpVtbl->Release(This); } /*** IFileDialogEvents methods ***/ static inline HRESULT IFileDialogEvents_OnFileOk(IFileDialogEvents* This,IFileDialog *pfd) { return This->lpVtbl->OnFileOk(This,pfd); } static inline HRESULT IFileDialogEvents_OnFolderChanging(IFileDialogEvents* This,IFileDialog *pfd,IShellItem *psiFolder) { return This->lpVtbl->OnFolderChanging(This,pfd,psiFolder); } static inline HRESULT IFileDialogEvents_OnFolderChange(IFileDialogEvents* This,IFileDialog *pfd) { return This->lpVtbl->OnFolderChange(This,pfd); } static inline HRESULT IFileDialogEvents_OnSelectionChange(IFileDialogEvents* This,IFileDialog *pfd) { return This->lpVtbl->OnSelectionChange(This,pfd); } static inline HRESULT IFileDialogEvents_OnShareViolation(IFileDialogEvents* This,IFileDialog *pfd,IShellItem *psi,FDE_SHAREVIOLATION_RESPONSE *pResponse) { return This->lpVtbl->OnShareViolation(This,pfd,psi,pResponse); } static inline HRESULT IFileDialogEvents_OnTypeChange(IFileDialogEvents* This,IFileDialog *pfd) { return This->lpVtbl->OnTypeChange(This,pfd); } static inline HRESULT IFileDialogEvents_OnOverwrite(IFileDialogEvents* This,IFileDialog *pfd,IShellItem *psi,FDE_OVERWRITE_RESPONSE *pResponse) { return This->lpVtbl->OnOverwrite(This,pfd,psi,pResponse); } #endif #endif #endif #endif /* __IFileDialogEvents_INTERFACE_DEFINED__ */ /***************************************************************************** * IModalWindow interface */ #ifndef __IModalWindow_INTERFACE_DEFINED__ #define __IModalWindow_INTERFACE_DEFINED__ DEFINE_GUID(IID_IModalWindow, 0xb4db1657, 0x70d7, 0x485e, 0x8e,0x3e, 0x6f,0xcb,0x5a,0x5c,0x18,0x02); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b4db1657-70d7-485e-8e3e-6fcb5a5c1802") IModalWindow : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Show( HWND hwndOwner) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IModalWindow, 0xb4db1657, 0x70d7, 0x485e, 0x8e,0x3e, 0x6f,0xcb,0x5a,0x5c,0x18,0x02) #endif #else typedef struct IModalWindowVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IModalWindow *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IModalWindow *This); ULONG (STDMETHODCALLTYPE *Release)( IModalWindow *This); /*** IModalWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Show)( IModalWindow *This, HWND hwndOwner); END_INTERFACE } IModalWindowVtbl; interface IModalWindow { CONST_VTBL IModalWindowVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IModalWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IModalWindow_AddRef(This) (This)->lpVtbl->AddRef(This) #define IModalWindow_Release(This) (This)->lpVtbl->Release(This) /*** IModalWindow methods ***/ #define IModalWindow_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) #else /*** IUnknown methods ***/ static inline HRESULT IModalWindow_QueryInterface(IModalWindow* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IModalWindow_AddRef(IModalWindow* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IModalWindow_Release(IModalWindow* This) { return This->lpVtbl->Release(This); } /*** IModalWindow methods ***/ static inline HRESULT IModalWindow_Show(IModalWindow* This,HWND hwndOwner) { return This->lpVtbl->Show(This,hwndOwner); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IModalWindow_RemoteShow_Proxy( IModalWindow* This, HWND hwndOwner); void __RPC_STUB IModalWindow_RemoteShow_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IModalWindow_Show_Proxy( IModalWindow* This, HWND hwndOwner); HRESULT __RPC_STUB IModalWindow_Show_Stub( IModalWindow* This, HWND hwndOwner); #endif /* __IModalWindow_INTERFACE_DEFINED__ */ typedef enum FDAP { FDAP_BOTTOM = 0, FDAP_TOP = 1 } FDAP; /***************************************************************************** * IFileDialog interface */ #ifndef __IFileDialog_INTERFACE_DEFINED__ #define __IFileDialog_INTERFACE_DEFINED__ enum _FILEOPENDIALOGOPTIONS { FOS_OVERWRITEPROMPT = 0x2, FOS_STRICTFILETYPES = 0x4, FOS_NOCHANGEDIR = 0x8, FOS_PICKFOLDERS = 0x20, FOS_FORCEFILESYSTEM = 0x40, FOS_ALLNONSTORAGEITEMS = 0x80, FOS_NOVALIDATE = 0x100, FOS_ALLOWMULTISELECT = 0x200, FOS_PATHMUSTEXIST = 0x800, FOS_FILEMUSTEXIST = 0x1000, FOS_CREATEPROMPT = 0x2000, FOS_SHAREAWARE = 0x4000, FOS_NOREADONLYRETURN = 0x8000, FOS_NOTESTFILECREATE = 0x10000, FOS_HIDEMRUPLACES = 0x20000, FOS_HIDEPINNEDPLACES = 0x40000, FOS_NODEREFERENCELINKS = 0x100000, FOS_DONTADDTORECENT = 0x2000000, FOS_FORCESHOWHIDDEN = 0x10000000, FOS_DEFAULTNOMINIMODE = 0x20000000, FOS_FORCEPREVIEWPANEON = 0x40000000, FOS_SUPPORTSTREAMABLEITEMS = 0x80000000 }; typedef DWORD FILEOPENDIALOGOPTIONS; DEFINE_GUID(IID_IFileDialog, 0x42f85136, 0xdb7e, 0x439c, 0x85,0xf1, 0xe4,0x07,0x5d,0x13,0x5f,0xc8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("42f85136-db7e-439c-85f1-e4075d135fc8") IFileDialog : public IModalWindow { virtual HRESULT STDMETHODCALLTYPE SetFileTypes( UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec) = 0; virtual HRESULT STDMETHODCALLTYPE SetFileTypeIndex( UINT iFileType) = 0; virtual HRESULT STDMETHODCALLTYPE GetFileTypeIndex( UINT *piFileType) = 0; virtual HRESULT STDMETHODCALLTYPE Advise( IFileDialogEvents *pfde, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE SetOptions( FILEOPENDIALOGOPTIONS fos) = 0; virtual HRESULT STDMETHODCALLTYPE GetOptions( FILEOPENDIALOGOPTIONS *pfos) = 0; virtual HRESULT STDMETHODCALLTYPE SetDefaultFolder( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE SetFolder( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolder( IShellItem **ppsi) = 0; virtual HRESULT STDMETHODCALLTYPE GetCurrentSelection( IShellItem **ppsi) = 0; virtual HRESULT STDMETHODCALLTYPE SetFileName( LPCWSTR pszName) = 0; virtual HRESULT STDMETHODCALLTYPE GetFileName( LPWSTR *pszName) = 0; virtual HRESULT STDMETHODCALLTYPE SetTitle( LPCWSTR pszTitle) = 0; virtual HRESULT STDMETHODCALLTYPE SetOkButtonLabel( LPCWSTR pszText) = 0; virtual HRESULT STDMETHODCALLTYPE SetFileNameLabel( LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE GetResult( IShellItem **ppsi) = 0; virtual HRESULT STDMETHODCALLTYPE AddPlace( IShellItem *psi, FDAP fdap) = 0; virtual HRESULT STDMETHODCALLTYPE SetDefaultExtension( LPCWSTR pszDefaultExtension) = 0; virtual HRESULT STDMETHODCALLTYPE Close( HRESULT hr) = 0; virtual HRESULT STDMETHODCALLTYPE SetClientGuid( REFGUID guid) = 0; virtual HRESULT STDMETHODCALLTYPE ClearClientData( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetFilter( IShellItemFilter *pFilter) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileDialog, 0x42f85136, 0xdb7e, 0x439c, 0x85,0xf1, 0xe4,0x07,0x5d,0x13,0x5f,0xc8) #endif #else typedef struct IFileDialogVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileDialog *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileDialog *This); ULONG (STDMETHODCALLTYPE *Release)( IFileDialog *This); /*** IModalWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Show)( IFileDialog *This, HWND hwndOwner); /*** IFileDialog methods ***/ HRESULT (STDMETHODCALLTYPE *SetFileTypes)( IFileDialog *This, UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec); HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( IFileDialog *This, UINT iFileType); HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( IFileDialog *This, UINT *piFileType); HRESULT (STDMETHODCALLTYPE *Advise)( IFileDialog *This, IFileDialogEvents *pfde, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFileDialog *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOptions)( IFileDialog *This, FILEOPENDIALOGOPTIONS fos); HRESULT (STDMETHODCALLTYPE *GetOptions)( IFileDialog *This, FILEOPENDIALOGOPTIONS *pfos); HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( IFileDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetFolder)( IFileDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFileDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( IFileDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *SetFileName)( IFileDialog *This, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *GetFileName)( IFileDialog *This, LPWSTR *pszName); HRESULT (STDMETHODCALLTYPE *SetTitle)( IFileDialog *This, LPCWSTR pszTitle); HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( IFileDialog *This, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( IFileDialog *This, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *GetResult)( IFileDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *AddPlace)( IFileDialog *This, IShellItem *psi, FDAP fdap); HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( IFileDialog *This, LPCWSTR pszDefaultExtension); HRESULT (STDMETHODCALLTYPE *Close)( IFileDialog *This, HRESULT hr); HRESULT (STDMETHODCALLTYPE *SetClientGuid)( IFileDialog *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *ClearClientData)( IFileDialog *This); HRESULT (STDMETHODCALLTYPE *SetFilter)( IFileDialog *This, IShellItemFilter *pFilter); END_INTERFACE } IFileDialogVtbl; interface IFileDialog { CONST_VTBL IFileDialogVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileDialog_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileDialog_Release(This) (This)->lpVtbl->Release(This) /*** IModalWindow methods ***/ #define IFileDialog_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) /*** IFileDialog methods ***/ #define IFileDialog_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) #define IFileDialog_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) #define IFileDialog_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) #define IFileDialog_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) #define IFileDialog_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IFileDialog_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) #define IFileDialog_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) #define IFileDialog_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) #define IFileDialog_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) #define IFileDialog_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) #define IFileDialog_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) #define IFileDialog_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) #define IFileDialog_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) #define IFileDialog_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) #define IFileDialog_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) #define IFileDialog_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) #define IFileDialog_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) #define IFileDialog_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) #define IFileDialog_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) #define IFileDialog_Close(This,hr) (This)->lpVtbl->Close(This,hr) #define IFileDialog_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) #define IFileDialog_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) #define IFileDialog_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) #else /*** IUnknown methods ***/ static inline HRESULT IFileDialog_QueryInterface(IFileDialog* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFileDialog_AddRef(IFileDialog* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFileDialog_Release(IFileDialog* This) { return This->lpVtbl->Release(This); } /*** IModalWindow methods ***/ static inline HRESULT IFileDialog_Show(IFileDialog* This,HWND hwndOwner) { return This->lpVtbl->Show(This,hwndOwner); } /*** IFileDialog methods ***/ static inline HRESULT IFileDialog_SetFileTypes(IFileDialog* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); } static inline HRESULT IFileDialog_SetFileTypeIndex(IFileDialog* This,UINT iFileType) { return This->lpVtbl->SetFileTypeIndex(This,iFileType); } static inline HRESULT IFileDialog_GetFileTypeIndex(IFileDialog* This,UINT *piFileType) { return This->lpVtbl->GetFileTypeIndex(This,piFileType); } static inline HRESULT IFileDialog_Advise(IFileDialog* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pfde,pdwCookie); } static inline HRESULT IFileDialog_Unadvise(IFileDialog* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static inline HRESULT IFileDialog_SetOptions(IFileDialog* This,FILEOPENDIALOGOPTIONS fos) { return This->lpVtbl->SetOptions(This,fos); } static inline HRESULT IFileDialog_GetOptions(IFileDialog* This,FILEOPENDIALOGOPTIONS *pfos) { return This->lpVtbl->GetOptions(This,pfos); } static inline HRESULT IFileDialog_SetDefaultFolder(IFileDialog* This,IShellItem *psi) { return This->lpVtbl->SetDefaultFolder(This,psi); } static inline HRESULT IFileDialog_SetFolder(IFileDialog* This,IShellItem *psi) { return This->lpVtbl->SetFolder(This,psi); } static inline HRESULT IFileDialog_GetFolder(IFileDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetFolder(This,ppsi); } static inline HRESULT IFileDialog_GetCurrentSelection(IFileDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetCurrentSelection(This,ppsi); } static inline HRESULT IFileDialog_SetFileName(IFileDialog* This,LPCWSTR pszName) { return This->lpVtbl->SetFileName(This,pszName); } static inline HRESULT IFileDialog_GetFileName(IFileDialog* This,LPWSTR *pszName) { return This->lpVtbl->GetFileName(This,pszName); } static inline HRESULT IFileDialog_SetTitle(IFileDialog* This,LPCWSTR pszTitle) { return This->lpVtbl->SetTitle(This,pszTitle); } static inline HRESULT IFileDialog_SetOkButtonLabel(IFileDialog* This,LPCWSTR pszText) { return This->lpVtbl->SetOkButtonLabel(This,pszText); } static inline HRESULT IFileDialog_SetFileNameLabel(IFileDialog* This,LPCWSTR pszLabel) { return This->lpVtbl->SetFileNameLabel(This,pszLabel); } static inline HRESULT IFileDialog_GetResult(IFileDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetResult(This,ppsi); } static inline HRESULT IFileDialog_AddPlace(IFileDialog* This,IShellItem *psi,FDAP fdap) { return This->lpVtbl->AddPlace(This,psi,fdap); } static inline HRESULT IFileDialog_SetDefaultExtension(IFileDialog* This,LPCWSTR pszDefaultExtension) { return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); } static inline HRESULT IFileDialog_Close(IFileDialog* This,HRESULT hr) { return This->lpVtbl->Close(This,hr); } static inline HRESULT IFileDialog_SetClientGuid(IFileDialog* This,REFGUID guid) { return This->lpVtbl->SetClientGuid(This,guid); } static inline HRESULT IFileDialog_ClearClientData(IFileDialog* This) { return This->lpVtbl->ClearClientData(This); } static inline HRESULT IFileDialog_SetFilter(IFileDialog* This,IShellItemFilter *pFilter) { return This->lpVtbl->SetFilter(This,pFilter); } #endif #endif #endif #endif /* __IFileDialog_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileDialog2 interface */ #ifndef __IFileDialog2_INTERFACE_DEFINED__ #define __IFileDialog2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileDialog2, 0x61744fc7, 0x85b5, 0x4791, 0xa9,0xb0, 0x27,0x22,0x76,0x30,0x9b,0x13); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("61744fc7-85b5-4791-a9b0-272276309b13") IFileDialog2 : public IFileDialog { virtual HRESULT STDMETHODCALLTYPE SetCancelButtonLabel( LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE SetNavigationRoot( IShellItem *psi) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileDialog2, 0x61744fc7, 0x85b5, 0x4791, 0xa9,0xb0, 0x27,0x22,0x76,0x30,0x9b,0x13) #endif #else typedef struct IFileDialog2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileDialog2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileDialog2 *This); ULONG (STDMETHODCALLTYPE *Release)( IFileDialog2 *This); /*** IModalWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Show)( IFileDialog2 *This, HWND hwndOwner); /*** IFileDialog methods ***/ HRESULT (STDMETHODCALLTYPE *SetFileTypes)( IFileDialog2 *This, UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec); HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( IFileDialog2 *This, UINT iFileType); HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( IFileDialog2 *This, UINT *piFileType); HRESULT (STDMETHODCALLTYPE *Advise)( IFileDialog2 *This, IFileDialogEvents *pfde, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFileDialog2 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOptions)( IFileDialog2 *This, FILEOPENDIALOGOPTIONS fos); HRESULT (STDMETHODCALLTYPE *GetOptions)( IFileDialog2 *This, FILEOPENDIALOGOPTIONS *pfos); HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( IFileDialog2 *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetFolder)( IFileDialog2 *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFileDialog2 *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( IFileDialog2 *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *SetFileName)( IFileDialog2 *This, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *GetFileName)( IFileDialog2 *This, LPWSTR *pszName); HRESULT (STDMETHODCALLTYPE *SetTitle)( IFileDialog2 *This, LPCWSTR pszTitle); HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( IFileDialog2 *This, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( IFileDialog2 *This, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *GetResult)( IFileDialog2 *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *AddPlace)( IFileDialog2 *This, IShellItem *psi, FDAP fdap); HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( IFileDialog2 *This, LPCWSTR pszDefaultExtension); HRESULT (STDMETHODCALLTYPE *Close)( IFileDialog2 *This, HRESULT hr); HRESULT (STDMETHODCALLTYPE *SetClientGuid)( IFileDialog2 *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *ClearClientData)( IFileDialog2 *This); HRESULT (STDMETHODCALLTYPE *SetFilter)( IFileDialog2 *This, IShellItemFilter *pFilter); /*** IFileDialog2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetCancelButtonLabel)( IFileDialog2 *This, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *SetNavigationRoot)( IFileDialog2 *This, IShellItem *psi); END_INTERFACE } IFileDialog2Vtbl; interface IFileDialog2 { CONST_VTBL IFileDialog2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileDialog2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileDialog2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileDialog2_Release(This) (This)->lpVtbl->Release(This) /*** IModalWindow methods ***/ #define IFileDialog2_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) /*** IFileDialog methods ***/ #define IFileDialog2_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) #define IFileDialog2_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) #define IFileDialog2_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) #define IFileDialog2_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) #define IFileDialog2_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IFileDialog2_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) #define IFileDialog2_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) #define IFileDialog2_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) #define IFileDialog2_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) #define IFileDialog2_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) #define IFileDialog2_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) #define IFileDialog2_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) #define IFileDialog2_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) #define IFileDialog2_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) #define IFileDialog2_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) #define IFileDialog2_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) #define IFileDialog2_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) #define IFileDialog2_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) #define IFileDialog2_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) #define IFileDialog2_Close(This,hr) (This)->lpVtbl->Close(This,hr) #define IFileDialog2_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) #define IFileDialog2_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) #define IFileDialog2_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) /*** IFileDialog2 methods ***/ #define IFileDialog2_SetCancelButtonLabel(This,pszLabel) (This)->lpVtbl->SetCancelButtonLabel(This,pszLabel) #define IFileDialog2_SetNavigationRoot(This,psi) (This)->lpVtbl->SetNavigationRoot(This,psi) #else /*** IUnknown methods ***/ static inline HRESULT IFileDialog2_QueryInterface(IFileDialog2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFileDialog2_AddRef(IFileDialog2* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFileDialog2_Release(IFileDialog2* This) { return This->lpVtbl->Release(This); } /*** IModalWindow methods ***/ static inline HRESULT IFileDialog2_Show(IFileDialog2* This,HWND hwndOwner) { return This->lpVtbl->Show(This,hwndOwner); } /*** IFileDialog methods ***/ static inline HRESULT IFileDialog2_SetFileTypes(IFileDialog2* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); } static inline HRESULT IFileDialog2_SetFileTypeIndex(IFileDialog2* This,UINT iFileType) { return This->lpVtbl->SetFileTypeIndex(This,iFileType); } static inline HRESULT IFileDialog2_GetFileTypeIndex(IFileDialog2* This,UINT *piFileType) { return This->lpVtbl->GetFileTypeIndex(This,piFileType); } static inline HRESULT IFileDialog2_Advise(IFileDialog2* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pfde,pdwCookie); } static inline HRESULT IFileDialog2_Unadvise(IFileDialog2* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static inline HRESULT IFileDialog2_SetOptions(IFileDialog2* This,FILEOPENDIALOGOPTIONS fos) { return This->lpVtbl->SetOptions(This,fos); } static inline HRESULT IFileDialog2_GetOptions(IFileDialog2* This,FILEOPENDIALOGOPTIONS *pfos) { return This->lpVtbl->GetOptions(This,pfos); } static inline HRESULT IFileDialog2_SetDefaultFolder(IFileDialog2* This,IShellItem *psi) { return This->lpVtbl->SetDefaultFolder(This,psi); } static inline HRESULT IFileDialog2_SetFolder(IFileDialog2* This,IShellItem *psi) { return This->lpVtbl->SetFolder(This,psi); } static inline HRESULT IFileDialog2_GetFolder(IFileDialog2* This,IShellItem **ppsi) { return This->lpVtbl->GetFolder(This,ppsi); } static inline HRESULT IFileDialog2_GetCurrentSelection(IFileDialog2* This,IShellItem **ppsi) { return This->lpVtbl->GetCurrentSelection(This,ppsi); } static inline HRESULT IFileDialog2_SetFileName(IFileDialog2* This,LPCWSTR pszName) { return This->lpVtbl->SetFileName(This,pszName); } static inline HRESULT IFileDialog2_GetFileName(IFileDialog2* This,LPWSTR *pszName) { return This->lpVtbl->GetFileName(This,pszName); } static inline HRESULT IFileDialog2_SetTitle(IFileDialog2* This,LPCWSTR pszTitle) { return This->lpVtbl->SetTitle(This,pszTitle); } static inline HRESULT IFileDialog2_SetOkButtonLabel(IFileDialog2* This,LPCWSTR pszText) { return This->lpVtbl->SetOkButtonLabel(This,pszText); } static inline HRESULT IFileDialog2_SetFileNameLabel(IFileDialog2* This,LPCWSTR pszLabel) { return This->lpVtbl->SetFileNameLabel(This,pszLabel); } static inline HRESULT IFileDialog2_GetResult(IFileDialog2* This,IShellItem **ppsi) { return This->lpVtbl->GetResult(This,ppsi); } static inline HRESULT IFileDialog2_AddPlace(IFileDialog2* This,IShellItem *psi,FDAP fdap) { return This->lpVtbl->AddPlace(This,psi,fdap); } static inline HRESULT IFileDialog2_SetDefaultExtension(IFileDialog2* This,LPCWSTR pszDefaultExtension) { return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); } static inline HRESULT IFileDialog2_Close(IFileDialog2* This,HRESULT hr) { return This->lpVtbl->Close(This,hr); } static inline HRESULT IFileDialog2_SetClientGuid(IFileDialog2* This,REFGUID guid) { return This->lpVtbl->SetClientGuid(This,guid); } static inline HRESULT IFileDialog2_ClearClientData(IFileDialog2* This) { return This->lpVtbl->ClearClientData(This); } static inline HRESULT IFileDialog2_SetFilter(IFileDialog2* This,IShellItemFilter *pFilter) { return This->lpVtbl->SetFilter(This,pFilter); } /*** IFileDialog2 methods ***/ static inline HRESULT IFileDialog2_SetCancelButtonLabel(IFileDialog2* This,LPCWSTR pszLabel) { return This->lpVtbl->SetCancelButtonLabel(This,pszLabel); } static inline HRESULT IFileDialog2_SetNavigationRoot(IFileDialog2* This,IShellItem *psi) { return This->lpVtbl->SetNavigationRoot(This,psi); } #endif #endif #endif #endif /* __IFileDialog2_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileOperationProgressSink interface */ #ifndef __IFileOperationProgressSink_INTERFACE_DEFINED__ #define __IFileOperationProgressSink_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileOperationProgressSink, 0x04b0f1a7, 0x9490, 0x44bc, 0x96,0xe1, 0x42,0x96,0xa3,0x12,0x52,0xe2); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("04b0f1a7-9490-44bc-96e1-4296a31252e2") IFileOperationProgressSink : public IUnknown { virtual HRESULT STDMETHODCALLTYPE StartOperations( ) = 0; virtual HRESULT STDMETHODCALLTYPE FinishOperations( HRESULT hrResult) = 0; virtual HRESULT STDMETHODCALLTYPE PreRenameItem( DWORD dwFlags, IShellItem *psiItem, LPCWSTR pszNewName) = 0; virtual HRESULT STDMETHODCALLTYPE PostRenameItem( DWORD dwFlags, IShellItem *psiItem, LPCWSTR pszNewName, HRESULT hrRename, IShellItem *psiNewlyCreated) = 0; virtual HRESULT STDMETHODCALLTYPE PreMoveItem( DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName) = 0; virtual HRESULT STDMETHODCALLTYPE PostMoveItem( DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, HRESULT hrMove, IShellItem *psiNewlyCreated) = 0; virtual HRESULT STDMETHODCALLTYPE PreCopyItem( DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName) = 0; virtual HRESULT STDMETHODCALLTYPE PostCopyItem( DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, HRESULT hrCopy, IShellItem *psiNewlyCreated) = 0; virtual HRESULT STDMETHODCALLTYPE PreDeleteItem( DWORD dwFlags, IShellItem *psiItem) = 0; virtual HRESULT STDMETHODCALLTYPE PostDeleteItem( DWORD dwFlags, IShellItem *psiItem, HRESULT hrDelete, IShellItem *psiNewlyCreated) = 0; virtual HRESULT STDMETHODCALLTYPE PreNewItem( DWORD dwFlags, IShellItem *psiDestinationFolder, LPCWSTR pszNewName) = 0; virtual HRESULT STDMETHODCALLTYPE PostNewItem( DWORD dwFlags, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, LPCWSTR pszTemplateName, DWORD dwFileAttributes, HRESULT hrNew, IShellItem *psiNewItem) = 0; virtual HRESULT STDMETHODCALLTYPE UpdateProgress( UINT iWorkTotal, UINT iWorkSoFar) = 0; virtual HRESULT STDMETHODCALLTYPE ResetTimer( ) = 0; virtual HRESULT STDMETHODCALLTYPE PauseTimer( ) = 0; virtual HRESULT STDMETHODCALLTYPE ResumeTimer( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileOperationProgressSink, 0x04b0f1a7, 0x9490, 0x44bc, 0x96,0xe1, 0x42,0x96,0xa3,0x12,0x52,0xe2) #endif #else typedef struct IFileOperationProgressSinkVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileOperationProgressSink *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileOperationProgressSink *This); ULONG (STDMETHODCALLTYPE *Release)( IFileOperationProgressSink *This); /*** IFileOperationProgressSink methods ***/ HRESULT (STDMETHODCALLTYPE *StartOperations)( IFileOperationProgressSink *This); HRESULT (STDMETHODCALLTYPE *FinishOperations)( IFileOperationProgressSink *This, HRESULT hrResult); HRESULT (STDMETHODCALLTYPE *PreRenameItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, LPCWSTR pszNewName); HRESULT (STDMETHODCALLTYPE *PostRenameItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, LPCWSTR pszNewName, HRESULT hrRename, IShellItem *psiNewlyCreated); HRESULT (STDMETHODCALLTYPE *PreMoveItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName); HRESULT (STDMETHODCALLTYPE *PostMoveItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, HRESULT hrMove, IShellItem *psiNewlyCreated); HRESULT (STDMETHODCALLTYPE *PreCopyItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName); HRESULT (STDMETHODCALLTYPE *PostCopyItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, HRESULT hrCopy, IShellItem *psiNewlyCreated); HRESULT (STDMETHODCALLTYPE *PreDeleteItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem); HRESULT (STDMETHODCALLTYPE *PostDeleteItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiItem, HRESULT hrDelete, IShellItem *psiNewlyCreated); HRESULT (STDMETHODCALLTYPE *PreNewItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiDestinationFolder, LPCWSTR pszNewName); HRESULT (STDMETHODCALLTYPE *PostNewItem)( IFileOperationProgressSink *This, DWORD dwFlags, IShellItem *psiDestinationFolder, LPCWSTR pszNewName, LPCWSTR pszTemplateName, DWORD dwFileAttributes, HRESULT hrNew, IShellItem *psiNewItem); HRESULT (STDMETHODCALLTYPE *UpdateProgress)( IFileOperationProgressSink *This, UINT iWorkTotal, UINT iWorkSoFar); HRESULT (STDMETHODCALLTYPE *ResetTimer)( IFileOperationProgressSink *This); HRESULT (STDMETHODCALLTYPE *PauseTimer)( IFileOperationProgressSink *This); HRESULT (STDMETHODCALLTYPE *ResumeTimer)( IFileOperationProgressSink *This); END_INTERFACE } IFileOperationProgressSinkVtbl; interface IFileOperationProgressSink { CONST_VTBL IFileOperationProgressSinkVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileOperationProgressSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileOperationProgressSink_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileOperationProgressSink_Release(This) (This)->lpVtbl->Release(This) /*** IFileOperationProgressSink methods ***/ #define IFileOperationProgressSink_StartOperations(This) (This)->lpVtbl->StartOperations(This) #define IFileOperationProgressSink_FinishOperations(This,hrResult) (This)->lpVtbl->FinishOperations(This,hrResult) #define IFileOperationProgressSink_PreRenameItem(This,dwFlags,psiItem,pszNewName) (This)->lpVtbl->PreRenameItem(This,dwFlags,psiItem,pszNewName) #define IFileOperationProgressSink_PostRenameItem(This,dwFlags,psiItem,pszNewName,hrRename,psiNewlyCreated) (This)->lpVtbl->PostRenameItem(This,dwFlags,psiItem,pszNewName,hrRename,psiNewlyCreated) #define IFileOperationProgressSink_PreMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) (This)->lpVtbl->PreMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) #define IFileOperationProgressSink_PostMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrMove,psiNewlyCreated) (This)->lpVtbl->PostMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrMove,psiNewlyCreated) #define IFileOperationProgressSink_PreCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) (This)->lpVtbl->PreCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) #define IFileOperationProgressSink_PostCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrCopy,psiNewlyCreated) (This)->lpVtbl->PostCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrCopy,psiNewlyCreated) #define IFileOperationProgressSink_PreDeleteItem(This,dwFlags,psiItem) (This)->lpVtbl->PreDeleteItem(This,dwFlags,psiItem) #define IFileOperationProgressSink_PostDeleteItem(This,dwFlags,psiItem,hrDelete,psiNewlyCreated) (This)->lpVtbl->PostDeleteItem(This,dwFlags,psiItem,hrDelete,psiNewlyCreated) #define IFileOperationProgressSink_PreNewItem(This,dwFlags,psiDestinationFolder,pszNewName) (This)->lpVtbl->PreNewItem(This,dwFlags,psiDestinationFolder,pszNewName) #define IFileOperationProgressSink_PostNewItem(This,dwFlags,psiDestinationFolder,pszNewName,pszTemplateName,dwFileAttributes,hrNew,psiNewItem) (This)->lpVtbl->PostNewItem(This,dwFlags,psiDestinationFolder,pszNewName,pszTemplateName,dwFileAttributes,hrNew,psiNewItem) #define IFileOperationProgressSink_UpdateProgress(This,iWorkTotal,iWorkSoFar) (This)->lpVtbl->UpdateProgress(This,iWorkTotal,iWorkSoFar) #define IFileOperationProgressSink_ResetTimer(This) (This)->lpVtbl->ResetTimer(This) #define IFileOperationProgressSink_PauseTimer(This) (This)->lpVtbl->PauseTimer(This) #define IFileOperationProgressSink_ResumeTimer(This) (This)->lpVtbl->ResumeTimer(This) #else /*** IUnknown methods ***/ static inline HRESULT IFileOperationProgressSink_QueryInterface(IFileOperationProgressSink* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFileOperationProgressSink_AddRef(IFileOperationProgressSink* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFileOperationProgressSink_Release(IFileOperationProgressSink* This) { return This->lpVtbl->Release(This); } /*** IFileOperationProgressSink methods ***/ static inline HRESULT IFileOperationProgressSink_StartOperations(IFileOperationProgressSink* This) { return This->lpVtbl->StartOperations(This); } static inline HRESULT IFileOperationProgressSink_FinishOperations(IFileOperationProgressSink* This,HRESULT hrResult) { return This->lpVtbl->FinishOperations(This,hrResult); } static inline HRESULT IFileOperationProgressSink_PreRenameItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,LPCWSTR pszNewName) { return This->lpVtbl->PreRenameItem(This,dwFlags,psiItem,pszNewName); } static inline HRESULT IFileOperationProgressSink_PostRenameItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,LPCWSTR pszNewName,HRESULT hrRename,IShellItem *psiNewlyCreated) { return This->lpVtbl->PostRenameItem(This,dwFlags,psiItem,pszNewName,hrRename,psiNewlyCreated); } static inline HRESULT IFileOperationProgressSink_PreMoveItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName) { return This->lpVtbl->PreMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName); } static inline HRESULT IFileOperationProgressSink_PostMoveItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,HRESULT hrMove,IShellItem *psiNewlyCreated) { return This->lpVtbl->PostMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrMove,psiNewlyCreated); } static inline HRESULT IFileOperationProgressSink_PreCopyItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName) { return This->lpVtbl->PreCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName); } static inline HRESULT IFileOperationProgressSink_PostCopyItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,HRESULT hrCopy,IShellItem *psiNewlyCreated) { return This->lpVtbl->PostCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrCopy,psiNewlyCreated); } static inline HRESULT IFileOperationProgressSink_PreDeleteItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem) { return This->lpVtbl->PreDeleteItem(This,dwFlags,psiItem); } static inline HRESULT IFileOperationProgressSink_PostDeleteItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,HRESULT hrDelete,IShellItem *psiNewlyCreated) { return This->lpVtbl->PostDeleteItem(This,dwFlags,psiItem,hrDelete,psiNewlyCreated); } static inline HRESULT IFileOperationProgressSink_PreNewItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiDestinationFolder,LPCWSTR pszNewName) { return This->lpVtbl->PreNewItem(This,dwFlags,psiDestinationFolder,pszNewName); } static inline HRESULT IFileOperationProgressSink_PostNewItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,LPCWSTR pszTemplateName,DWORD dwFileAttributes,HRESULT hrNew,IShellItem *psiNewItem) { return This->lpVtbl->PostNewItem(This,dwFlags,psiDestinationFolder,pszNewName,pszTemplateName,dwFileAttributes,hrNew,psiNewItem); } static inline HRESULT IFileOperationProgressSink_UpdateProgress(IFileOperationProgressSink* This,UINT iWorkTotal,UINT iWorkSoFar) { return This->lpVtbl->UpdateProgress(This,iWorkTotal,iWorkSoFar); } static inline HRESULT IFileOperationProgressSink_ResetTimer(IFileOperationProgressSink* This) { return This->lpVtbl->ResetTimer(This); } static inline HRESULT IFileOperationProgressSink_PauseTimer(IFileOperationProgressSink* This) { return This->lpVtbl->PauseTimer(This); } static inline HRESULT IFileOperationProgressSink_ResumeTimer(IFileOperationProgressSink* This) { return This->lpVtbl->ResumeTimer(This); } #endif #endif #endif #endif /* __IFileOperationProgressSink_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileSaveDialog interface */ #ifndef __IFileSaveDialog_INTERFACE_DEFINED__ #define __IFileSaveDialog_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileSaveDialog, 0x84bccd23, 0x5fde, 0x4cdb, 0xae,0xa4, 0xaf,0x64,0xb8,0x3d,0x78,0xab); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("84bccd23-5fde-4cdb-aea4-af64b83d78ab") IFileSaveDialog : public IFileDialog { virtual HRESULT STDMETHODCALLTYPE SetSaveAsItem( IShellItem *psi) = 0; virtual HRESULT STDMETHODCALLTYPE SetProperties( IPropertyStore *pStore) = 0; virtual HRESULT STDMETHODCALLTYPE SetCollectedProperties( IPropertyDescriptionList *pList, BOOL fAppendDefault) = 0; virtual HRESULT STDMETHODCALLTYPE GetProperties( IPropertyStore **ppStore) = 0; virtual HRESULT STDMETHODCALLTYPE ApplyProperties( IShellItem *psi, IPropertyStore *pStore, HWND hwnd, IFileOperationProgressSink *pSink) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileSaveDialog, 0x84bccd23, 0x5fde, 0x4cdb, 0xae,0xa4, 0xaf,0x64,0xb8,0x3d,0x78,0xab) #endif #else typedef struct IFileSaveDialogVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileSaveDialog *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileSaveDialog *This); ULONG (STDMETHODCALLTYPE *Release)( IFileSaveDialog *This); /*** IModalWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Show)( IFileSaveDialog *This, HWND hwndOwner); /*** IFileDialog methods ***/ HRESULT (STDMETHODCALLTYPE *SetFileTypes)( IFileSaveDialog *This, UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec); HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( IFileSaveDialog *This, UINT iFileType); HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( IFileSaveDialog *This, UINT *piFileType); HRESULT (STDMETHODCALLTYPE *Advise)( IFileSaveDialog *This, IFileDialogEvents *pfde, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFileSaveDialog *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOptions)( IFileSaveDialog *This, FILEOPENDIALOGOPTIONS fos); HRESULT (STDMETHODCALLTYPE *GetOptions)( IFileSaveDialog *This, FILEOPENDIALOGOPTIONS *pfos); HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( IFileSaveDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetFolder)( IFileSaveDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFileSaveDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( IFileSaveDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *SetFileName)( IFileSaveDialog *This, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *GetFileName)( IFileSaveDialog *This, LPWSTR *pszName); HRESULT (STDMETHODCALLTYPE *SetTitle)( IFileSaveDialog *This, LPCWSTR pszTitle); HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( IFileSaveDialog *This, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( IFileSaveDialog *This, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *GetResult)( IFileSaveDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *AddPlace)( IFileSaveDialog *This, IShellItem *psi, FDAP fdap); HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( IFileSaveDialog *This, LPCWSTR pszDefaultExtension); HRESULT (STDMETHODCALLTYPE *Close)( IFileSaveDialog *This, HRESULT hr); HRESULT (STDMETHODCALLTYPE *SetClientGuid)( IFileSaveDialog *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *ClearClientData)( IFileSaveDialog *This); HRESULT (STDMETHODCALLTYPE *SetFilter)( IFileSaveDialog *This, IShellItemFilter *pFilter); /*** IFileSaveDialog methods ***/ HRESULT (STDMETHODCALLTYPE *SetSaveAsItem)( IFileSaveDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetProperties)( IFileSaveDialog *This, IPropertyStore *pStore); HRESULT (STDMETHODCALLTYPE *SetCollectedProperties)( IFileSaveDialog *This, IPropertyDescriptionList *pList, BOOL fAppendDefault); HRESULT (STDMETHODCALLTYPE *GetProperties)( IFileSaveDialog *This, IPropertyStore **ppStore); HRESULT (STDMETHODCALLTYPE *ApplyProperties)( IFileSaveDialog *This, IShellItem *psi, IPropertyStore *pStore, HWND hwnd, IFileOperationProgressSink *pSink); END_INTERFACE } IFileSaveDialogVtbl; interface IFileSaveDialog { CONST_VTBL IFileSaveDialogVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileSaveDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileSaveDialog_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileSaveDialog_Release(This) (This)->lpVtbl->Release(This) /*** IModalWindow methods ***/ #define IFileSaveDialog_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) /*** IFileDialog methods ***/ #define IFileSaveDialog_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) #define IFileSaveDialog_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) #define IFileSaveDialog_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) #define IFileSaveDialog_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) #define IFileSaveDialog_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IFileSaveDialog_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) #define IFileSaveDialog_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) #define IFileSaveDialog_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) #define IFileSaveDialog_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) #define IFileSaveDialog_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) #define IFileSaveDialog_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) #define IFileSaveDialog_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) #define IFileSaveDialog_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) #define IFileSaveDialog_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) #define IFileSaveDialog_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) #define IFileSaveDialog_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) #define IFileSaveDialog_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) #define IFileSaveDialog_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) #define IFileSaveDialog_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) #define IFileSaveDialog_Close(This,hr) (This)->lpVtbl->Close(This,hr) #define IFileSaveDialog_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) #define IFileSaveDialog_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) #define IFileSaveDialog_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) /*** IFileSaveDialog methods ***/ #define IFileSaveDialog_SetSaveAsItem(This,psi) (This)->lpVtbl->SetSaveAsItem(This,psi) #define IFileSaveDialog_SetProperties(This,pStore) (This)->lpVtbl->SetProperties(This,pStore) #define IFileSaveDialog_SetCollectedProperties(This,pList,fAppendDefault) (This)->lpVtbl->SetCollectedProperties(This,pList,fAppendDefault) #define IFileSaveDialog_GetProperties(This,ppStore) (This)->lpVtbl->GetProperties(This,ppStore) #define IFileSaveDialog_ApplyProperties(This,psi,pStore,hwnd,pSink) (This)->lpVtbl->ApplyProperties(This,psi,pStore,hwnd,pSink) #else /*** IUnknown methods ***/ static inline HRESULT IFileSaveDialog_QueryInterface(IFileSaveDialog* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFileSaveDialog_AddRef(IFileSaveDialog* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFileSaveDialog_Release(IFileSaveDialog* This) { return This->lpVtbl->Release(This); } /*** IModalWindow methods ***/ static inline HRESULT IFileSaveDialog_Show(IFileSaveDialog* This,HWND hwndOwner) { return This->lpVtbl->Show(This,hwndOwner); } /*** IFileDialog methods ***/ static inline HRESULT IFileSaveDialog_SetFileTypes(IFileSaveDialog* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); } static inline HRESULT IFileSaveDialog_SetFileTypeIndex(IFileSaveDialog* This,UINT iFileType) { return This->lpVtbl->SetFileTypeIndex(This,iFileType); } static inline HRESULT IFileSaveDialog_GetFileTypeIndex(IFileSaveDialog* This,UINT *piFileType) { return This->lpVtbl->GetFileTypeIndex(This,piFileType); } static inline HRESULT IFileSaveDialog_Advise(IFileSaveDialog* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pfde,pdwCookie); } static inline HRESULT IFileSaveDialog_Unadvise(IFileSaveDialog* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static inline HRESULT IFileSaveDialog_SetOptions(IFileSaveDialog* This,FILEOPENDIALOGOPTIONS fos) { return This->lpVtbl->SetOptions(This,fos); } static inline HRESULT IFileSaveDialog_GetOptions(IFileSaveDialog* This,FILEOPENDIALOGOPTIONS *pfos) { return This->lpVtbl->GetOptions(This,pfos); } static inline HRESULT IFileSaveDialog_SetDefaultFolder(IFileSaveDialog* This,IShellItem *psi) { return This->lpVtbl->SetDefaultFolder(This,psi); } static inline HRESULT IFileSaveDialog_SetFolder(IFileSaveDialog* This,IShellItem *psi) { return This->lpVtbl->SetFolder(This,psi); } static inline HRESULT IFileSaveDialog_GetFolder(IFileSaveDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetFolder(This,ppsi); } static inline HRESULT IFileSaveDialog_GetCurrentSelection(IFileSaveDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetCurrentSelection(This,ppsi); } static inline HRESULT IFileSaveDialog_SetFileName(IFileSaveDialog* This,LPCWSTR pszName) { return This->lpVtbl->SetFileName(This,pszName); } static inline HRESULT IFileSaveDialog_GetFileName(IFileSaveDialog* This,LPWSTR *pszName) { return This->lpVtbl->GetFileName(This,pszName); } static inline HRESULT IFileSaveDialog_SetTitle(IFileSaveDialog* This,LPCWSTR pszTitle) { return This->lpVtbl->SetTitle(This,pszTitle); } static inline HRESULT IFileSaveDialog_SetOkButtonLabel(IFileSaveDialog* This,LPCWSTR pszText) { return This->lpVtbl->SetOkButtonLabel(This,pszText); } static inline HRESULT IFileSaveDialog_SetFileNameLabel(IFileSaveDialog* This,LPCWSTR pszLabel) { return This->lpVtbl->SetFileNameLabel(This,pszLabel); } static inline HRESULT IFileSaveDialog_GetResult(IFileSaveDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetResult(This,ppsi); } static inline HRESULT IFileSaveDialog_AddPlace(IFileSaveDialog* This,IShellItem *psi,FDAP fdap) { return This->lpVtbl->AddPlace(This,psi,fdap); } static inline HRESULT IFileSaveDialog_SetDefaultExtension(IFileSaveDialog* This,LPCWSTR pszDefaultExtension) { return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); } static inline HRESULT IFileSaveDialog_Close(IFileSaveDialog* This,HRESULT hr) { return This->lpVtbl->Close(This,hr); } static inline HRESULT IFileSaveDialog_SetClientGuid(IFileSaveDialog* This,REFGUID guid) { return This->lpVtbl->SetClientGuid(This,guid); } static inline HRESULT IFileSaveDialog_ClearClientData(IFileSaveDialog* This) { return This->lpVtbl->ClearClientData(This); } static inline HRESULT IFileSaveDialog_SetFilter(IFileSaveDialog* This,IShellItemFilter *pFilter) { return This->lpVtbl->SetFilter(This,pFilter); } /*** IFileSaveDialog methods ***/ static inline HRESULT IFileSaveDialog_SetSaveAsItem(IFileSaveDialog* This,IShellItem *psi) { return This->lpVtbl->SetSaveAsItem(This,psi); } static inline HRESULT IFileSaveDialog_SetProperties(IFileSaveDialog* This,IPropertyStore *pStore) { return This->lpVtbl->SetProperties(This,pStore); } static inline HRESULT IFileSaveDialog_SetCollectedProperties(IFileSaveDialog* This,IPropertyDescriptionList *pList,BOOL fAppendDefault) { return This->lpVtbl->SetCollectedProperties(This,pList,fAppendDefault); } static inline HRESULT IFileSaveDialog_GetProperties(IFileSaveDialog* This,IPropertyStore **ppStore) { return This->lpVtbl->GetProperties(This,ppStore); } static inline HRESULT IFileSaveDialog_ApplyProperties(IFileSaveDialog* This,IShellItem *psi,IPropertyStore *pStore,HWND hwnd,IFileOperationProgressSink *pSink) { return This->lpVtbl->ApplyProperties(This,psi,pStore,hwnd,pSink); } #endif #endif #endif #endif /* __IFileSaveDialog_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileOpenDialog interface */ #ifndef __IFileOpenDialog_INTERFACE_DEFINED__ #define __IFileOpenDialog_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileOpenDialog, 0xd57c7288, 0xd4ad, 0x4768, 0xbe,0x02, 0x9d,0x96,0x95,0x32,0xd9,0x60); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d57c7288-d4ad-4768-be02-9d969532d960") IFileOpenDialog : public IFileDialog { virtual HRESULT STDMETHODCALLTYPE GetResults( IShellItemArray **ppenum) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectedItems( IShellItemArray **ppsai) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileOpenDialog, 0xd57c7288, 0xd4ad, 0x4768, 0xbe,0x02, 0x9d,0x96,0x95,0x32,0xd9,0x60) #endif #else typedef struct IFileOpenDialogVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileOpenDialog *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileOpenDialog *This); ULONG (STDMETHODCALLTYPE *Release)( IFileOpenDialog *This); /*** IModalWindow methods ***/ HRESULT (STDMETHODCALLTYPE *Show)( IFileOpenDialog *This, HWND hwndOwner); /*** IFileDialog methods ***/ HRESULT (STDMETHODCALLTYPE *SetFileTypes)( IFileOpenDialog *This, UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec); HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( IFileOpenDialog *This, UINT iFileType); HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( IFileOpenDialog *This, UINT *piFileType); HRESULT (STDMETHODCALLTYPE *Advise)( IFileOpenDialog *This, IFileDialogEvents *pfde, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFileOpenDialog *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *SetOptions)( IFileOpenDialog *This, FILEOPENDIALOGOPTIONS fos); HRESULT (STDMETHODCALLTYPE *GetOptions)( IFileOpenDialog *This, FILEOPENDIALOGOPTIONS *pfos); HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( IFileOpenDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *SetFolder)( IFileOpenDialog *This, IShellItem *psi); HRESULT (STDMETHODCALLTYPE *GetFolder)( IFileOpenDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( IFileOpenDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *SetFileName)( IFileOpenDialog *This, LPCWSTR pszName); HRESULT (STDMETHODCALLTYPE *GetFileName)( IFileOpenDialog *This, LPWSTR *pszName); HRESULT (STDMETHODCALLTYPE *SetTitle)( IFileOpenDialog *This, LPCWSTR pszTitle); HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( IFileOpenDialog *This, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( IFileOpenDialog *This, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *GetResult)( IFileOpenDialog *This, IShellItem **ppsi); HRESULT (STDMETHODCALLTYPE *AddPlace)( IFileOpenDialog *This, IShellItem *psi, FDAP fdap); HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( IFileOpenDialog *This, LPCWSTR pszDefaultExtension); HRESULT (STDMETHODCALLTYPE *Close)( IFileOpenDialog *This, HRESULT hr); HRESULT (STDMETHODCALLTYPE *SetClientGuid)( IFileOpenDialog *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *ClearClientData)( IFileOpenDialog *This); HRESULT (STDMETHODCALLTYPE *SetFilter)( IFileOpenDialog *This, IShellItemFilter *pFilter); /*** IFileOpenDialog methods ***/ HRESULT (STDMETHODCALLTYPE *GetResults)( IFileOpenDialog *This, IShellItemArray **ppenum); HRESULT (STDMETHODCALLTYPE *GetSelectedItems)( IFileOpenDialog *This, IShellItemArray **ppsai); END_INTERFACE } IFileOpenDialogVtbl; interface IFileOpenDialog { CONST_VTBL IFileOpenDialogVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileOpenDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileOpenDialog_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileOpenDialog_Release(This) (This)->lpVtbl->Release(This) /*** IModalWindow methods ***/ #define IFileOpenDialog_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) /*** IFileDialog methods ***/ #define IFileOpenDialog_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) #define IFileOpenDialog_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) #define IFileOpenDialog_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) #define IFileOpenDialog_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) #define IFileOpenDialog_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) #define IFileOpenDialog_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) #define IFileOpenDialog_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) #define IFileOpenDialog_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) #define IFileOpenDialog_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) #define IFileOpenDialog_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) #define IFileOpenDialog_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) #define IFileOpenDialog_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) #define IFileOpenDialog_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) #define IFileOpenDialog_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) #define IFileOpenDialog_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) #define IFileOpenDialog_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) #define IFileOpenDialog_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) #define IFileOpenDialog_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) #define IFileOpenDialog_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) #define IFileOpenDialog_Close(This,hr) (This)->lpVtbl->Close(This,hr) #define IFileOpenDialog_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) #define IFileOpenDialog_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) #define IFileOpenDialog_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) /*** IFileOpenDialog methods ***/ #define IFileOpenDialog_GetResults(This,ppenum) (This)->lpVtbl->GetResults(This,ppenum) #define IFileOpenDialog_GetSelectedItems(This,ppsai) (This)->lpVtbl->GetSelectedItems(This,ppsai) #else /*** IUnknown methods ***/ static inline HRESULT IFileOpenDialog_QueryInterface(IFileOpenDialog* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFileOpenDialog_AddRef(IFileOpenDialog* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFileOpenDialog_Release(IFileOpenDialog* This) { return This->lpVtbl->Release(This); } /*** IModalWindow methods ***/ static inline HRESULT IFileOpenDialog_Show(IFileOpenDialog* This,HWND hwndOwner) { return This->lpVtbl->Show(This,hwndOwner); } /*** IFileDialog methods ***/ static inline HRESULT IFileOpenDialog_SetFileTypes(IFileOpenDialog* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); } static inline HRESULT IFileOpenDialog_SetFileTypeIndex(IFileOpenDialog* This,UINT iFileType) { return This->lpVtbl->SetFileTypeIndex(This,iFileType); } static inline HRESULT IFileOpenDialog_GetFileTypeIndex(IFileOpenDialog* This,UINT *piFileType) { return This->lpVtbl->GetFileTypeIndex(This,piFileType); } static inline HRESULT IFileOpenDialog_Advise(IFileOpenDialog* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { return This->lpVtbl->Advise(This,pfde,pdwCookie); } static inline HRESULT IFileOpenDialog_Unadvise(IFileOpenDialog* This,DWORD dwCookie) { return This->lpVtbl->Unadvise(This,dwCookie); } static inline HRESULT IFileOpenDialog_SetOptions(IFileOpenDialog* This,FILEOPENDIALOGOPTIONS fos) { return This->lpVtbl->SetOptions(This,fos); } static inline HRESULT IFileOpenDialog_GetOptions(IFileOpenDialog* This,FILEOPENDIALOGOPTIONS *pfos) { return This->lpVtbl->GetOptions(This,pfos); } static inline HRESULT IFileOpenDialog_SetDefaultFolder(IFileOpenDialog* This,IShellItem *psi) { return This->lpVtbl->SetDefaultFolder(This,psi); } static inline HRESULT IFileOpenDialog_SetFolder(IFileOpenDialog* This,IShellItem *psi) { return This->lpVtbl->SetFolder(This,psi); } static inline HRESULT IFileOpenDialog_GetFolder(IFileOpenDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetFolder(This,ppsi); } static inline HRESULT IFileOpenDialog_GetCurrentSelection(IFileOpenDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetCurrentSelection(This,ppsi); } static inline HRESULT IFileOpenDialog_SetFileName(IFileOpenDialog* This,LPCWSTR pszName) { return This->lpVtbl->SetFileName(This,pszName); } static inline HRESULT IFileOpenDialog_GetFileName(IFileOpenDialog* This,LPWSTR *pszName) { return This->lpVtbl->GetFileName(This,pszName); } static inline HRESULT IFileOpenDialog_SetTitle(IFileOpenDialog* This,LPCWSTR pszTitle) { return This->lpVtbl->SetTitle(This,pszTitle); } static inline HRESULT IFileOpenDialog_SetOkButtonLabel(IFileOpenDialog* This,LPCWSTR pszText) { return This->lpVtbl->SetOkButtonLabel(This,pszText); } static inline HRESULT IFileOpenDialog_SetFileNameLabel(IFileOpenDialog* This,LPCWSTR pszLabel) { return This->lpVtbl->SetFileNameLabel(This,pszLabel); } static inline HRESULT IFileOpenDialog_GetResult(IFileOpenDialog* This,IShellItem **ppsi) { return This->lpVtbl->GetResult(This,ppsi); } static inline HRESULT IFileOpenDialog_AddPlace(IFileOpenDialog* This,IShellItem *psi,FDAP fdap) { return This->lpVtbl->AddPlace(This,psi,fdap); } static inline HRESULT IFileOpenDialog_SetDefaultExtension(IFileOpenDialog* This,LPCWSTR pszDefaultExtension) { return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); } static inline HRESULT IFileOpenDialog_Close(IFileOpenDialog* This,HRESULT hr) { return This->lpVtbl->Close(This,hr); } static inline HRESULT IFileOpenDialog_SetClientGuid(IFileOpenDialog* This,REFGUID guid) { return This->lpVtbl->SetClientGuid(This,guid); } static inline HRESULT IFileOpenDialog_ClearClientData(IFileOpenDialog* This) { return This->lpVtbl->ClearClientData(This); } static inline HRESULT IFileOpenDialog_SetFilter(IFileOpenDialog* This,IShellItemFilter *pFilter) { return This->lpVtbl->SetFilter(This,pFilter); } /*** IFileOpenDialog methods ***/ static inline HRESULT IFileOpenDialog_GetResults(IFileOpenDialog* This,IShellItemArray **ppenum) { return This->lpVtbl->GetResults(This,ppenum); } static inline HRESULT IFileOpenDialog_GetSelectedItems(IFileOpenDialog* This,IShellItemArray **ppsai) { return This->lpVtbl->GetSelectedItems(This,ppsai); } #endif #endif #endif #endif /* __IFileOpenDialog_INTERFACE_DEFINED__ */ typedef enum CDCONTROLSTATEF { CDCS_INACTIVE = 0x0, CDCS_ENABLED = 0x1, CDCS_VISIBLE = 0x2, CDCS_ENABLEDVISIBLE = 0x3 } CDCONTROLSTATEF; DEFINE_ENUM_FLAG_OPERATORS(CDCONTROLSTATEF) /***************************************************************************** * IFileDialogCustomize interface */ #ifndef __IFileDialogCustomize_INTERFACE_DEFINED__ #define __IFileDialogCustomize_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileDialogCustomize, 0xe6fdd21a, 0x163f, 0x4975, 0x9c,0x8c, 0xa6,0x9f,0x1b,0xa3,0x70,0x34); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e6fdd21a-163f-4975-9c8c-a69f1ba37034") IFileDialogCustomize : public IUnknown { virtual HRESULT STDMETHODCALLTYPE EnableOpenDropDown( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE AddMenu( DWORD dwIDCtl, LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE AddPushButton( DWORD dwIDCtl, LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE AddComboBox( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE AddRadioButtonList( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE AddCheckButton( DWORD dwIDCtl, LPCWSTR pszLabel, BOOL bChecked) = 0; virtual HRESULT STDMETHODCALLTYPE AddEditBox( DWORD dwIDCtl, LPCWSTR pszText) = 0; virtual HRESULT STDMETHODCALLTYPE AddSeparator( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE AddText( DWORD dwIDCtl, LPCWSTR pszText) = 0; virtual HRESULT STDMETHODCALLTYPE SetControlLabel( DWORD dwIDCtl, LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE GetControlState( DWORD dwIDCtl, CDCONTROLSTATEF *pdwState) = 0; virtual HRESULT STDMETHODCALLTYPE SetControlState( DWORD dwIDCtl, CDCONTROLSTATEF dwState) = 0; virtual HRESULT STDMETHODCALLTYPE GetEditBoxText( DWORD dwIDCtl, WCHAR **ppszText) = 0; virtual HRESULT STDMETHODCALLTYPE SetEditBoxText( DWORD dwIDCtl, LPCWSTR pszText) = 0; virtual HRESULT STDMETHODCALLTYPE GetCheckButtonState( DWORD dwIDCtl, BOOL *pbChecked) = 0; virtual HRESULT STDMETHODCALLTYPE SetCheckButtonState( DWORD dwIDCtl, BOOL bChecked) = 0; virtual HRESULT STDMETHODCALLTYPE AddControlItem( DWORD dwIDCtl, DWORD dwIDItem, LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveControlItem( DWORD dwIDCtl, DWORD dwIDItem) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAllControlItems( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE GetControlItemState( DWORD dwIDCtl, DWORD dwIDItem, CDCONTROLSTATEF *pdwState) = 0; virtual HRESULT STDMETHODCALLTYPE SetControlItemState( DWORD dwIDCtl, DWORD dwIDItem, CDCONTROLSTATEF dwState) = 0; virtual HRESULT STDMETHODCALLTYPE GetSelectedControlItem( DWORD dwIDCtl, DWORD *pdwIDItem) = 0; virtual HRESULT STDMETHODCALLTYPE SetSelectedControlItem( DWORD dwIDCtl, DWORD dwIDItem) = 0; virtual HRESULT STDMETHODCALLTYPE StartVisualGroup( DWORD dwIDCtl, LPCWSTR pszLabel) = 0; virtual HRESULT STDMETHODCALLTYPE EndVisualGroup( ) = 0; virtual HRESULT STDMETHODCALLTYPE MakeProminent( DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE SetControlItemText( DWORD dwIDCtl, DWORD dwIDItem, LPCWSTR pszLabel) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileDialogCustomize, 0xe6fdd21a, 0x163f, 0x4975, 0x9c,0x8c, 0xa6,0x9f,0x1b,0xa3,0x70,0x34) #endif #else typedef struct IFileDialogCustomizeVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileDialogCustomize *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileDialogCustomize *This); ULONG (STDMETHODCALLTYPE *Release)( IFileDialogCustomize *This); /*** IFileDialogCustomize methods ***/ HRESULT (STDMETHODCALLTYPE *EnableOpenDropDown)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *AddMenu)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *AddPushButton)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *AddComboBox)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *AddRadioButtonList)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *AddCheckButton)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszLabel, BOOL bChecked); HRESULT (STDMETHODCALLTYPE *AddEditBox)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *AddSeparator)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *AddText)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *SetControlLabel)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *GetControlState)( IFileDialogCustomize *This, DWORD dwIDCtl, CDCONTROLSTATEF *pdwState); HRESULT (STDMETHODCALLTYPE *SetControlState)( IFileDialogCustomize *This, DWORD dwIDCtl, CDCONTROLSTATEF dwState); HRESULT (STDMETHODCALLTYPE *GetEditBoxText)( IFileDialogCustomize *This, DWORD dwIDCtl, WCHAR **ppszText); HRESULT (STDMETHODCALLTYPE *SetEditBoxText)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszText); HRESULT (STDMETHODCALLTYPE *GetCheckButtonState)( IFileDialogCustomize *This, DWORD dwIDCtl, BOOL *pbChecked); HRESULT (STDMETHODCALLTYPE *SetCheckButtonState)( IFileDialogCustomize *This, DWORD dwIDCtl, BOOL bChecked); HRESULT (STDMETHODCALLTYPE *AddControlItem)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *RemoveControlItem)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem); HRESULT (STDMETHODCALLTYPE *RemoveAllControlItems)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *GetControlItemState)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem, CDCONTROLSTATEF *pdwState); HRESULT (STDMETHODCALLTYPE *SetControlItemState)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem, CDCONTROLSTATEF dwState); HRESULT (STDMETHODCALLTYPE *GetSelectedControlItem)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD *pdwIDItem); HRESULT (STDMETHODCALLTYPE *SetSelectedControlItem)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem); HRESULT (STDMETHODCALLTYPE *StartVisualGroup)( IFileDialogCustomize *This, DWORD dwIDCtl, LPCWSTR pszLabel); HRESULT (STDMETHODCALLTYPE *EndVisualGroup)( IFileDialogCustomize *This); HRESULT (STDMETHODCALLTYPE *MakeProminent)( IFileDialogCustomize *This, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *SetControlItemText)( IFileDialogCustomize *This, DWORD dwIDCtl, DWORD dwIDItem, LPCWSTR pszLabel); END_INTERFACE } IFileDialogCustomizeVtbl; interface IFileDialogCustomize { CONST_VTBL IFileDialogCustomizeVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileDialogCustomize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileDialogCustomize_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileDialogCustomize_Release(This) (This)->lpVtbl->Release(This) /*** IFileDialogCustomize methods ***/ #define IFileDialogCustomize_EnableOpenDropDown(This,dwIDCtl) (This)->lpVtbl->EnableOpenDropDown(This,dwIDCtl) #define IFileDialogCustomize_AddMenu(This,dwIDCtl,pszLabel) (This)->lpVtbl->AddMenu(This,dwIDCtl,pszLabel) #define IFileDialogCustomize_AddPushButton(This,dwIDCtl,pszLabel) (This)->lpVtbl->AddPushButton(This,dwIDCtl,pszLabel) #define IFileDialogCustomize_AddComboBox(This,dwIDCtl) (This)->lpVtbl->AddComboBox(This,dwIDCtl) #define IFileDialogCustomize_AddRadioButtonList(This,dwIDCtl) (This)->lpVtbl->AddRadioButtonList(This,dwIDCtl) #define IFileDialogCustomize_AddCheckButton(This,dwIDCtl,pszLabel,bChecked) (This)->lpVtbl->AddCheckButton(This,dwIDCtl,pszLabel,bChecked) #define IFileDialogCustomize_AddEditBox(This,dwIDCtl,pszText) (This)->lpVtbl->AddEditBox(This,dwIDCtl,pszText) #define IFileDialogCustomize_AddSeparator(This,dwIDCtl) (This)->lpVtbl->AddSeparator(This,dwIDCtl) #define IFileDialogCustomize_AddText(This,dwIDCtl,pszText) (This)->lpVtbl->AddText(This,dwIDCtl,pszText) #define IFileDialogCustomize_SetControlLabel(This,dwIDCtl,pszLabel) (This)->lpVtbl->SetControlLabel(This,dwIDCtl,pszLabel) #define IFileDialogCustomize_GetControlState(This,dwIDCtl,pdwState) (This)->lpVtbl->GetControlState(This,dwIDCtl,pdwState) #define IFileDialogCustomize_SetControlState(This,dwIDCtl,dwState) (This)->lpVtbl->SetControlState(This,dwIDCtl,dwState) #define IFileDialogCustomize_GetEditBoxText(This,dwIDCtl,ppszText) (This)->lpVtbl->GetEditBoxText(This,dwIDCtl,ppszText) #define IFileDialogCustomize_SetEditBoxText(This,dwIDCtl,pszText) (This)->lpVtbl->SetEditBoxText(This,dwIDCtl,pszText) #define IFileDialogCustomize_GetCheckButtonState(This,dwIDCtl,pbChecked) (This)->lpVtbl->GetCheckButtonState(This,dwIDCtl,pbChecked) #define IFileDialogCustomize_SetCheckButtonState(This,dwIDCtl,bChecked) (This)->lpVtbl->SetCheckButtonState(This,dwIDCtl,bChecked) #define IFileDialogCustomize_AddControlItem(This,dwIDCtl,dwIDItem,pszLabel) (This)->lpVtbl->AddControlItem(This,dwIDCtl,dwIDItem,pszLabel) #define IFileDialogCustomize_RemoveControlItem(This,dwIDCtl,dwIDItem) (This)->lpVtbl->RemoveControlItem(This,dwIDCtl,dwIDItem) #define IFileDialogCustomize_RemoveAllControlItems(This,dwIDCtl) (This)->lpVtbl->RemoveAllControlItems(This,dwIDCtl) #define IFileDialogCustomize_GetControlItemState(This,dwIDCtl,dwIDItem,pdwState) (This)->lpVtbl->GetControlItemState(This,dwIDCtl,dwIDItem,pdwState) #define IFileDialogCustomize_SetControlItemState(This,dwIDCtl,dwIDItem,dwState) (This)->lpVtbl->SetControlItemState(This,dwIDCtl,dwIDItem,dwState) #define IFileDialogCustomize_GetSelectedControlItem(This,dwIDCtl,pdwIDItem) (This)->lpVtbl->GetSelectedControlItem(This,dwIDCtl,pdwIDItem) #define IFileDialogCustomize_SetSelectedControlItem(This,dwIDCtl,dwIDItem) (This)->lpVtbl->SetSelectedControlItem(This,dwIDCtl,dwIDItem) #define IFileDialogCustomize_StartVisualGroup(This,dwIDCtl,pszLabel) (This)->lpVtbl->StartVisualGroup(This,dwIDCtl,pszLabel) #define IFileDialogCustomize_EndVisualGroup(This) (This)->lpVtbl->EndVisualGroup(This) #define IFileDialogCustomize_MakeProminent(This,dwIDCtl) (This)->lpVtbl->MakeProminent(This,dwIDCtl) #define IFileDialogCustomize_SetControlItemText(This,dwIDCtl,dwIDItem,pszLabel) (This)->lpVtbl->SetControlItemText(This,dwIDCtl,dwIDItem,pszLabel) #else /*** IUnknown methods ***/ static inline HRESULT IFileDialogCustomize_QueryInterface(IFileDialogCustomize* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFileDialogCustomize_AddRef(IFileDialogCustomize* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFileDialogCustomize_Release(IFileDialogCustomize* This) { return This->lpVtbl->Release(This); } /*** IFileDialogCustomize methods ***/ static inline HRESULT IFileDialogCustomize_EnableOpenDropDown(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->EnableOpenDropDown(This,dwIDCtl); } static inline HRESULT IFileDialogCustomize_AddMenu(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { return This->lpVtbl->AddMenu(This,dwIDCtl,pszLabel); } static inline HRESULT IFileDialogCustomize_AddPushButton(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { return This->lpVtbl->AddPushButton(This,dwIDCtl,pszLabel); } static inline HRESULT IFileDialogCustomize_AddComboBox(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->AddComboBox(This,dwIDCtl); } static inline HRESULT IFileDialogCustomize_AddRadioButtonList(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->AddRadioButtonList(This,dwIDCtl); } static inline HRESULT IFileDialogCustomize_AddCheckButton(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel,BOOL bChecked) { return This->lpVtbl->AddCheckButton(This,dwIDCtl,pszLabel,bChecked); } static inline HRESULT IFileDialogCustomize_AddEditBox(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszText) { return This->lpVtbl->AddEditBox(This,dwIDCtl,pszText); } static inline HRESULT IFileDialogCustomize_AddSeparator(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->AddSeparator(This,dwIDCtl); } static inline HRESULT IFileDialogCustomize_AddText(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszText) { return This->lpVtbl->AddText(This,dwIDCtl,pszText); } static inline HRESULT IFileDialogCustomize_SetControlLabel(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { return This->lpVtbl->SetControlLabel(This,dwIDCtl,pszLabel); } static inline HRESULT IFileDialogCustomize_GetControlState(IFileDialogCustomize* This,DWORD dwIDCtl,CDCONTROLSTATEF *pdwState) { return This->lpVtbl->GetControlState(This,dwIDCtl,pdwState); } static inline HRESULT IFileDialogCustomize_SetControlState(IFileDialogCustomize* This,DWORD dwIDCtl,CDCONTROLSTATEF dwState) { return This->lpVtbl->SetControlState(This,dwIDCtl,dwState); } static inline HRESULT IFileDialogCustomize_GetEditBoxText(IFileDialogCustomize* This,DWORD dwIDCtl,WCHAR **ppszText) { return This->lpVtbl->GetEditBoxText(This,dwIDCtl,ppszText); } static inline HRESULT IFileDialogCustomize_SetEditBoxText(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszText) { return This->lpVtbl->SetEditBoxText(This,dwIDCtl,pszText); } static inline HRESULT IFileDialogCustomize_GetCheckButtonState(IFileDialogCustomize* This,DWORD dwIDCtl,BOOL *pbChecked) { return This->lpVtbl->GetCheckButtonState(This,dwIDCtl,pbChecked); } static inline HRESULT IFileDialogCustomize_SetCheckButtonState(IFileDialogCustomize* This,DWORD dwIDCtl,BOOL bChecked) { return This->lpVtbl->SetCheckButtonState(This,dwIDCtl,bChecked); } static inline HRESULT IFileDialogCustomize_AddControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,LPCWSTR pszLabel) { return This->lpVtbl->AddControlItem(This,dwIDCtl,dwIDItem,pszLabel); } static inline HRESULT IFileDialogCustomize_RemoveControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem) { return This->lpVtbl->RemoveControlItem(This,dwIDCtl,dwIDItem); } static inline HRESULT IFileDialogCustomize_RemoveAllControlItems(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->RemoveAllControlItems(This,dwIDCtl); } static inline HRESULT IFileDialogCustomize_GetControlItemState(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,CDCONTROLSTATEF *pdwState) { return This->lpVtbl->GetControlItemState(This,dwIDCtl,dwIDItem,pdwState); } static inline HRESULT IFileDialogCustomize_SetControlItemState(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,CDCONTROLSTATEF dwState) { return This->lpVtbl->SetControlItemState(This,dwIDCtl,dwIDItem,dwState); } static inline HRESULT IFileDialogCustomize_GetSelectedControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD *pdwIDItem) { return This->lpVtbl->GetSelectedControlItem(This,dwIDCtl,pdwIDItem); } static inline HRESULT IFileDialogCustomize_SetSelectedControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem) { return This->lpVtbl->SetSelectedControlItem(This,dwIDCtl,dwIDItem); } static inline HRESULT IFileDialogCustomize_StartVisualGroup(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { return This->lpVtbl->StartVisualGroup(This,dwIDCtl,pszLabel); } static inline HRESULT IFileDialogCustomize_EndVisualGroup(IFileDialogCustomize* This) { return This->lpVtbl->EndVisualGroup(This); } static inline HRESULT IFileDialogCustomize_MakeProminent(IFileDialogCustomize* This,DWORD dwIDCtl) { return This->lpVtbl->MakeProminent(This,dwIDCtl); } static inline HRESULT IFileDialogCustomize_SetControlItemText(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,LPCWSTR pszLabel) { return This->lpVtbl->SetControlItemText(This,dwIDCtl,dwIDItem,pszLabel); } #endif #endif #endif #endif /* __IFileDialogCustomize_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileDialogControlEvents interface */ #ifndef __IFileDialogControlEvents_INTERFACE_DEFINED__ #define __IFileDialogControlEvents_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileDialogControlEvents, 0x36116642, 0xd713, 0x4b97, 0x9b,0x83, 0x74,0x84,0xa9,0xd0,0x04,0x33); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("36116642-d713-4b97-9b83-7484a9d00433") IFileDialogControlEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE OnItemSelected( IFileDialogCustomize *pfdc, DWORD dwIDCtl, DWORD dwIDItem) = 0; virtual HRESULT STDMETHODCALLTYPE OnButtonClicked( IFileDialogCustomize *pfdc, DWORD dwIDCtl) = 0; virtual HRESULT STDMETHODCALLTYPE OnCheckButtonToggled( IFileDialogCustomize *pfdc, DWORD dwIDCtl, BOOL bChecked) = 0; virtual HRESULT STDMETHODCALLTYPE OnControlActivating( IFileDialogCustomize *pfdc, DWORD dwIDCtl) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileDialogControlEvents, 0x36116642, 0xd713, 0x4b97, 0x9b,0x83, 0x74,0x84,0xa9,0xd0,0x04,0x33) #endif #else typedef struct IFileDialogControlEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileDialogControlEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileDialogControlEvents *This); ULONG (STDMETHODCALLTYPE *Release)( IFileDialogControlEvents *This); /*** IFileDialogControlEvents methods ***/ HRESULT (STDMETHODCALLTYPE *OnItemSelected)( IFileDialogControlEvents *This, IFileDialogCustomize *pfdc, DWORD dwIDCtl, DWORD dwIDItem); HRESULT (STDMETHODCALLTYPE *OnButtonClicked)( IFileDialogControlEvents *This, IFileDialogCustomize *pfdc, DWORD dwIDCtl); HRESULT (STDMETHODCALLTYPE *OnCheckButtonToggled)( IFileDialogControlEvents *This, IFileDialogCustomize *pfdc, DWORD dwIDCtl, BOOL bChecked); HRESULT (STDMETHODCALLTYPE *OnControlActivating)( IFileDialogControlEvents *This, IFileDialogCustomize *pfdc, DWORD dwIDCtl); END_INTERFACE } IFileDialogControlEventsVtbl; interface IFileDialogControlEvents { CONST_VTBL IFileDialogControlEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileDialogControlEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileDialogControlEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileDialogControlEvents_Release(This) (This)->lpVtbl->Release(This) /*** IFileDialogControlEvents methods ***/ #define IFileDialogControlEvents_OnItemSelected(This,pfdc,dwIDCtl,dwIDItem) (This)->lpVtbl->OnItemSelected(This,pfdc,dwIDCtl,dwIDItem) #define IFileDialogControlEvents_OnButtonClicked(This,pfdc,dwIDCtl) (This)->lpVtbl->OnButtonClicked(This,pfdc,dwIDCtl) #define IFileDialogControlEvents_OnCheckButtonToggled(This,pfdc,dwIDCtl,bChecked) (This)->lpVtbl->OnCheckButtonToggled(This,pfdc,dwIDCtl,bChecked) #define IFileDialogControlEvents_OnControlActivating(This,pfdc,dwIDCtl) (This)->lpVtbl->OnControlActivating(This,pfdc,dwIDCtl) #else /*** IUnknown methods ***/ static inline HRESULT IFileDialogControlEvents_QueryInterface(IFileDialogControlEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFileDialogControlEvents_AddRef(IFileDialogControlEvents* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFileDialogControlEvents_Release(IFileDialogControlEvents* This) { return This->lpVtbl->Release(This); } /*** IFileDialogControlEvents methods ***/ static inline HRESULT IFileDialogControlEvents_OnItemSelected(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl,DWORD dwIDItem) { return This->lpVtbl->OnItemSelected(This,pfdc,dwIDCtl,dwIDItem); } static inline HRESULT IFileDialogControlEvents_OnButtonClicked(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl) { return This->lpVtbl->OnButtonClicked(This,pfdc,dwIDCtl); } static inline HRESULT IFileDialogControlEvents_OnCheckButtonToggled(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl,BOOL bChecked) { return This->lpVtbl->OnCheckButtonToggled(This,pfdc,dwIDCtl,bChecked); } static inline HRESULT IFileDialogControlEvents_OnControlActivating(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl) { return This->lpVtbl->OnControlActivating(This,pfdc,dwIDCtl); } #endif #endif #endif #endif /* __IFileDialogControlEvents_INTERFACE_DEFINED__ */ typedef enum tagKF_CATEGORY { KF_CATEGORY_VIRTUAL = 0x1, KF_CATEGORY_FIXED = 0x2, KF_CATEGORY_COMMON = 0x3, KF_CATEGORY_PERUSER = 0x4 } KF_CATEGORY; typedef enum tagKF_REDIRECTION_CAPABILITIES { KF_REDIRECTION_CAPABILITIES_ALLOW_ALL = 0xff, KF_REDIRECTION_CAPABILITIES_REDIRECTABLE = 0x1, KF_REDIRECTION_CAPABILITIES_DENY_ALL = 0xfff00, KF_REDIRECTION_CAPABILITIES_DENY_POLICY_REDIRECTED = 0x100, KF_REDIRECTION_CAPABILITIES_DENY_POLICY = 0x200, KF_REDIRECTION_CAPABILITIES_DENY_PERMISSIONS = 0x400 } KF_REDIRECTION_CAPABILITIES; typedef enum tagKF_DEFINITION_FLAGS { KFDF_LOCAL_REDIRECT_ONLY = 0x2, KFDF_ROAMABLE = 0x4, KFDF_PRECREATE = 0x8, KFDF_STREAM = 0x10, KFDF_PUBLISHEXPANDEDPATH = 0x20, KFDF_NO_REDIRECT_UI = 0x40 } KF_DEFINITION_FLAGS; typedef struct tagKNOWNFOLDER_DEFINITION { KF_CATEGORY category; LPWSTR pszName; LPWSTR pszDescription; KNOWNFOLDERID fidParent; LPWSTR pszRelativePath; LPWSTR pszParsingName; LPWSTR pszTooltip; LPWSTR pszLocalizedName; LPWSTR pszIcon; LPWSTR pszSecurity; DWORD dwAttributes; KF_DEFINITION_FLAGS kfdFlags; FOLDERTYPEID ftidType; } KNOWNFOLDER_DEFINITION; /***************************************************************************** * IKnownFolder interface */ #ifndef __IKnownFolder_INTERFACE_DEFINED__ #define __IKnownFolder_INTERFACE_DEFINED__ DEFINE_GUID(IID_IKnownFolder, 0x3aa7af7e, 0x9b36, 0x420c, 0xa8,0xe3, 0xf7,0x7d,0x46,0x74,0xa4,0x88); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3aa7af7e-9b36-420c-a8e3-f77d4674a488") IKnownFolder : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetId( KNOWNFOLDERID *pkfid) = 0; virtual HRESULT STDMETHODCALLTYPE GetCategory( KF_CATEGORY *pCategory) = 0; virtual HRESULT STDMETHODCALLTYPE GetShellItem( DWORD dwFlags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE GetPath( DWORD dwFlags, LPWSTR *ppszPath) = 0; virtual HRESULT STDMETHODCALLTYPE SetPath( DWORD dwFlags, LPCWSTR pszPath) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDList( DWORD dwFlags, PIDLIST_ABSOLUTE *ppidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderType( FOLDERTYPEID *pftid) = 0; virtual HRESULT STDMETHODCALLTYPE GetRedirectionCapabilities( KF_REDIRECTION_CAPABILITIES *pCapabilities) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderDefinition( KNOWNFOLDER_DEFINITION *pKFD) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IKnownFolder, 0x3aa7af7e, 0x9b36, 0x420c, 0xa8,0xe3, 0xf7,0x7d,0x46,0x74,0xa4,0x88) #endif #else typedef struct IKnownFolderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IKnownFolder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IKnownFolder *This); ULONG (STDMETHODCALLTYPE *Release)( IKnownFolder *This); /*** IKnownFolder methods ***/ HRESULT (STDMETHODCALLTYPE *GetId)( IKnownFolder *This, KNOWNFOLDERID *pkfid); HRESULT (STDMETHODCALLTYPE *GetCategory)( IKnownFolder *This, KF_CATEGORY *pCategory); HRESULT (STDMETHODCALLTYPE *GetShellItem)( IKnownFolder *This, DWORD dwFlags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *GetPath)( IKnownFolder *This, DWORD dwFlags, LPWSTR *ppszPath); HRESULT (STDMETHODCALLTYPE *SetPath)( IKnownFolder *This, DWORD dwFlags, LPCWSTR pszPath); HRESULT (STDMETHODCALLTYPE *GetIDList)( IKnownFolder *This, DWORD dwFlags, PIDLIST_ABSOLUTE *ppidl); HRESULT (STDMETHODCALLTYPE *GetFolderType)( IKnownFolder *This, FOLDERTYPEID *pftid); HRESULT (STDMETHODCALLTYPE *GetRedirectionCapabilities)( IKnownFolder *This, KF_REDIRECTION_CAPABILITIES *pCapabilities); HRESULT (STDMETHODCALLTYPE *GetFolderDefinition)( IKnownFolder *This, KNOWNFOLDER_DEFINITION *pKFD); END_INTERFACE } IKnownFolderVtbl; interface IKnownFolder { CONST_VTBL IKnownFolderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IKnownFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IKnownFolder_AddRef(This) (This)->lpVtbl->AddRef(This) #define IKnownFolder_Release(This) (This)->lpVtbl->Release(This) /*** IKnownFolder methods ***/ #define IKnownFolder_GetId(This,pkfid) (This)->lpVtbl->GetId(This,pkfid) #define IKnownFolder_GetCategory(This,pCategory) (This)->lpVtbl->GetCategory(This,pCategory) #define IKnownFolder_GetShellItem(This,dwFlags,riid,ppv) (This)->lpVtbl->GetShellItem(This,dwFlags,riid,ppv) #define IKnownFolder_GetPath(This,dwFlags,ppszPath) (This)->lpVtbl->GetPath(This,dwFlags,ppszPath) #define IKnownFolder_SetPath(This,dwFlags,pszPath) (This)->lpVtbl->SetPath(This,dwFlags,pszPath) #define IKnownFolder_GetIDList(This,dwFlags,ppidl) (This)->lpVtbl->GetIDList(This,dwFlags,ppidl) #define IKnownFolder_GetFolderType(This,pftid) (This)->lpVtbl->GetFolderType(This,pftid) #define IKnownFolder_GetRedirectionCapabilities(This,pCapabilities) (This)->lpVtbl->GetRedirectionCapabilities(This,pCapabilities) #define IKnownFolder_GetFolderDefinition(This,pKFD) (This)->lpVtbl->GetFolderDefinition(This,pKFD) #else /*** IUnknown methods ***/ static inline HRESULT IKnownFolder_QueryInterface(IKnownFolder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IKnownFolder_AddRef(IKnownFolder* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IKnownFolder_Release(IKnownFolder* This) { return This->lpVtbl->Release(This); } /*** IKnownFolder methods ***/ static inline HRESULT IKnownFolder_GetId(IKnownFolder* This,KNOWNFOLDERID *pkfid) { return This->lpVtbl->GetId(This,pkfid); } static inline HRESULT IKnownFolder_GetCategory(IKnownFolder* This,KF_CATEGORY *pCategory) { return This->lpVtbl->GetCategory(This,pCategory); } static inline HRESULT IKnownFolder_GetShellItem(IKnownFolder* This,DWORD dwFlags,REFIID riid,void **ppv) { return This->lpVtbl->GetShellItem(This,dwFlags,riid,ppv); } static inline HRESULT IKnownFolder_GetPath(IKnownFolder* This,DWORD dwFlags,LPWSTR *ppszPath) { return This->lpVtbl->GetPath(This,dwFlags,ppszPath); } static inline HRESULT IKnownFolder_SetPath(IKnownFolder* This,DWORD dwFlags,LPCWSTR pszPath) { return This->lpVtbl->SetPath(This,dwFlags,pszPath); } static inline HRESULT IKnownFolder_GetIDList(IKnownFolder* This,DWORD dwFlags,PIDLIST_ABSOLUTE *ppidl) { return This->lpVtbl->GetIDList(This,dwFlags,ppidl); } static inline HRESULT IKnownFolder_GetFolderType(IKnownFolder* This,FOLDERTYPEID *pftid) { return This->lpVtbl->GetFolderType(This,pftid); } static inline HRESULT IKnownFolder_GetRedirectionCapabilities(IKnownFolder* This,KF_REDIRECTION_CAPABILITIES *pCapabilities) { return This->lpVtbl->GetRedirectionCapabilities(This,pCapabilities); } static inline HRESULT IKnownFolder_GetFolderDefinition(IKnownFolder* This,KNOWNFOLDER_DEFINITION *pKFD) { return This->lpVtbl->GetFolderDefinition(This,pKFD); } #endif #endif #endif #endif /* __IKnownFolder_INTERFACE_DEFINED__ */ typedef enum tagKF_REDIRECT_FLAGS { KF_REDIRECT_USER_EXCLUSIVE = 0x1, KF_REDIRECT_COPY_SOURCE_DACL = 0x2, KF_REDIRECT_OWNER_USER = 0x4, KF_REDIRECT_SET_OWNER_EXPLICIT = 0x8, KF_REDIRECT_CHECK_ONLY = 0x10, KF_REDIRECT_WITH_UI = 0x20, KF_REDIRECT_UNPIN = 0x40, KF_REDIRECT_PIN = 0x80, KF_REDIRECT_COPY_CONTENTS = 0x200, KF_REDIRECT_DEL_SOURCE_CONTENTS = 0x400, KF_REDIRECT_EXCLUDE_ALL_KNOWN_SUBFOLDERS = 0x800 } KF_REDIRECT_FLAGS; /***************************************************************************** * IKnownFolderManager interface */ #ifndef __IKnownFolderManager_INTERFACE_DEFINED__ #define __IKnownFolderManager_INTERFACE_DEFINED__ typedef enum tagFFFP_MODE { FFFP_EXACTMATCH = 0, FFFP_NEARESTPARENTMATCH = 1 } FFFP_MODE; DEFINE_GUID(IID_IKnownFolderManager, 0x8be2d872, 0x86aa, 0x4d47, 0xb7,0x76, 0x32,0xcc,0xa4,0x0c,0x70,0x18); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8be2d872-86aa-4d47-b776-32cca40c7018") IKnownFolderManager : public IUnknown { virtual HRESULT STDMETHODCALLTYPE FolderIdFromCsidl( int nCsidl, KNOWNFOLDERID *pfid) = 0; virtual HRESULT STDMETHODCALLTYPE FolderIdToCsidl( REFKNOWNFOLDERID rfid, int *pnCsidl) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderIds( KNOWNFOLDERID **ppKFId, UINT *pCount) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolder( REFKNOWNFOLDERID rfid, IKnownFolder **ppkf) = 0; virtual HRESULT STDMETHODCALLTYPE GetFolderByName( LPCWSTR pszCanonicalName, IKnownFolder **ppkf) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterFolder( REFKNOWNFOLDERID rfid, const KNOWNFOLDER_DEFINITION *pKFD) = 0; virtual HRESULT STDMETHODCALLTYPE UnregisterFolder( REFKNOWNFOLDERID rfid) = 0; virtual HRESULT STDMETHODCALLTYPE FindFolderFromPath( LPCWSTR pszPath, FFFP_MODE mode, IKnownFolder **ppkf) = 0; virtual HRESULT STDMETHODCALLTYPE FindFolderFromIDList( PCIDLIST_ABSOLUTE pidl, IKnownFolder **ppkf) = 0; virtual HRESULT STDMETHODCALLTYPE Redirect( REFKNOWNFOLDERID rfid, HWND hwnd, KF_REDIRECT_FLAGS flags, LPCWSTR pszTargetPath, UINT cFolders, const KNOWNFOLDERID *pExclusion, LPWSTR *ppszError) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IKnownFolderManager, 0x8be2d872, 0x86aa, 0x4d47, 0xb7,0x76, 0x32,0xcc,0xa4,0x0c,0x70,0x18) #endif #else typedef struct IKnownFolderManagerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IKnownFolderManager *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IKnownFolderManager *This); ULONG (STDMETHODCALLTYPE *Release)( IKnownFolderManager *This); /*** IKnownFolderManager methods ***/ HRESULT (STDMETHODCALLTYPE *FolderIdFromCsidl)( IKnownFolderManager *This, int nCsidl, KNOWNFOLDERID *pfid); HRESULT (STDMETHODCALLTYPE *FolderIdToCsidl)( IKnownFolderManager *This, REFKNOWNFOLDERID rfid, int *pnCsidl); HRESULT (STDMETHODCALLTYPE *GetFolderIds)( IKnownFolderManager *This, KNOWNFOLDERID **ppKFId, UINT *pCount); HRESULT (STDMETHODCALLTYPE *GetFolder)( IKnownFolderManager *This, REFKNOWNFOLDERID rfid, IKnownFolder **ppkf); HRESULT (STDMETHODCALLTYPE *GetFolderByName)( IKnownFolderManager *This, LPCWSTR pszCanonicalName, IKnownFolder **ppkf); HRESULT (STDMETHODCALLTYPE *RegisterFolder)( IKnownFolderManager *This, REFKNOWNFOLDERID rfid, const KNOWNFOLDER_DEFINITION *pKFD); HRESULT (STDMETHODCALLTYPE *UnregisterFolder)( IKnownFolderManager *This, REFKNOWNFOLDERID rfid); HRESULT (STDMETHODCALLTYPE *FindFolderFromPath)( IKnownFolderManager *This, LPCWSTR pszPath, FFFP_MODE mode, IKnownFolder **ppkf); HRESULT (STDMETHODCALLTYPE *FindFolderFromIDList)( IKnownFolderManager *This, PCIDLIST_ABSOLUTE pidl, IKnownFolder **ppkf); HRESULT (STDMETHODCALLTYPE *Redirect)( IKnownFolderManager *This, REFKNOWNFOLDERID rfid, HWND hwnd, KF_REDIRECT_FLAGS flags, LPCWSTR pszTargetPath, UINT cFolders, const KNOWNFOLDERID *pExclusion, LPWSTR *ppszError); END_INTERFACE } IKnownFolderManagerVtbl; interface IKnownFolderManager { CONST_VTBL IKnownFolderManagerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IKnownFolderManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IKnownFolderManager_AddRef(This) (This)->lpVtbl->AddRef(This) #define IKnownFolderManager_Release(This) (This)->lpVtbl->Release(This) /*** IKnownFolderManager methods ***/ #define IKnownFolderManager_FolderIdFromCsidl(This,nCsidl,pfid) (This)->lpVtbl->FolderIdFromCsidl(This,nCsidl,pfid) #define IKnownFolderManager_FolderIdToCsidl(This,rfid,pnCsidl) (This)->lpVtbl->FolderIdToCsidl(This,rfid,pnCsidl) #define IKnownFolderManager_GetFolderIds(This,ppKFId,pCount) (This)->lpVtbl->GetFolderIds(This,ppKFId,pCount) #define IKnownFolderManager_GetFolder(This,rfid,ppkf) (This)->lpVtbl->GetFolder(This,rfid,ppkf) #define IKnownFolderManager_GetFolderByName(This,pszCanonicalName,ppkf) (This)->lpVtbl->GetFolderByName(This,pszCanonicalName,ppkf) #define IKnownFolderManager_RegisterFolder(This,rfid,pKFD) (This)->lpVtbl->RegisterFolder(This,rfid,pKFD) #define IKnownFolderManager_UnregisterFolder(This,rfid) (This)->lpVtbl->UnregisterFolder(This,rfid) #define IKnownFolderManager_FindFolderFromPath(This,pszPath,mode,ppkf) (This)->lpVtbl->FindFolderFromPath(This,pszPath,mode,ppkf) #define IKnownFolderManager_FindFolderFromIDList(This,pidl,ppkf) (This)->lpVtbl->FindFolderFromIDList(This,pidl,ppkf) #define IKnownFolderManager_Redirect(This,rfid,hwnd,flags,pszTargetPath,cFolders,pExclusion,ppszError) (This)->lpVtbl->Redirect(This,rfid,hwnd,flags,pszTargetPath,cFolders,pExclusion,ppszError) #else /*** IUnknown methods ***/ static inline HRESULT IKnownFolderManager_QueryInterface(IKnownFolderManager* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IKnownFolderManager_AddRef(IKnownFolderManager* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IKnownFolderManager_Release(IKnownFolderManager* This) { return This->lpVtbl->Release(This); } /*** IKnownFolderManager methods ***/ static inline HRESULT IKnownFolderManager_FolderIdFromCsidl(IKnownFolderManager* This,int nCsidl,KNOWNFOLDERID *pfid) { return This->lpVtbl->FolderIdFromCsidl(This,nCsidl,pfid); } static inline HRESULT IKnownFolderManager_FolderIdToCsidl(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,int *pnCsidl) { return This->lpVtbl->FolderIdToCsidl(This,rfid,pnCsidl); } static inline HRESULT IKnownFolderManager_GetFolderIds(IKnownFolderManager* This,KNOWNFOLDERID **ppKFId,UINT *pCount) { return This->lpVtbl->GetFolderIds(This,ppKFId,pCount); } static inline HRESULT IKnownFolderManager_GetFolder(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,IKnownFolder **ppkf) { return This->lpVtbl->GetFolder(This,rfid,ppkf); } static inline HRESULT IKnownFolderManager_GetFolderByName(IKnownFolderManager* This,LPCWSTR pszCanonicalName,IKnownFolder **ppkf) { return This->lpVtbl->GetFolderByName(This,pszCanonicalName,ppkf); } static inline HRESULT IKnownFolderManager_RegisterFolder(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,const KNOWNFOLDER_DEFINITION *pKFD) { return This->lpVtbl->RegisterFolder(This,rfid,pKFD); } static inline HRESULT IKnownFolderManager_UnregisterFolder(IKnownFolderManager* This,REFKNOWNFOLDERID rfid) { return This->lpVtbl->UnregisterFolder(This,rfid); } static inline HRESULT IKnownFolderManager_FindFolderFromPath(IKnownFolderManager* This,LPCWSTR pszPath,FFFP_MODE mode,IKnownFolder **ppkf) { return This->lpVtbl->FindFolderFromPath(This,pszPath,mode,ppkf); } static inline HRESULT IKnownFolderManager_FindFolderFromIDList(IKnownFolderManager* This,PCIDLIST_ABSOLUTE pidl,IKnownFolder **ppkf) { return This->lpVtbl->FindFolderFromIDList(This,pidl,ppkf); } static inline HRESULT IKnownFolderManager_Redirect(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,HWND hwnd,KF_REDIRECT_FLAGS flags,LPCWSTR pszTargetPath,UINT cFolders,const KNOWNFOLDERID *pExclusion,LPWSTR *ppszError) { return This->lpVtbl->Redirect(This,rfid,hwnd,flags,pszTargetPath,cFolders,pExclusion,ppszError); } #endif #endif #endif #endif /* __IKnownFolderManager_INTERFACE_DEFINED__ */ static inline void FreeKnownFolderDefinitionFields(KNOWNFOLDER_DEFINITION *pKFD) { CoTaskMemFree(pKFD->pszName); CoTaskMemFree(pKFD->pszDescription); CoTaskMemFree(pKFD->pszRelativePath); CoTaskMemFree(pKFD->pszParsingName); CoTaskMemFree(pKFD->pszTooltip); CoTaskMemFree(pKFD->pszLocalizedName); CoTaskMemFree(pKFD->pszIcon); CoTaskMemFree(pKFD->pszSecurity); } typedef enum ASSOCIATIONLEVEL { AL_MACHINE = 0, AL_EFFECTIVE = 1, AL_USER = 2 } ASSOCIATIONLEVEL; typedef enum ASSOCIATIONTYPE { AT_FILEEXTENSION = 0, AT_URLPROTOCOL = 1, AT_STARTMENUCLIENT = 2, AT_MIMETYPE = 3 } ASSOCIATIONTYPE; /***************************************************************************** * IApplicationAssociationRegistration interface */ #ifndef __IApplicationAssociationRegistration_INTERFACE_DEFINED__ #define __IApplicationAssociationRegistration_INTERFACE_DEFINED__ DEFINE_GUID(IID_IApplicationAssociationRegistration, 0x4e530b0a, 0xe611, 0x4c77, 0xa3,0xac, 0x90,0x31,0xd0,0x22,0x28,0x1b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4e530b0a-e611-4c77-a3ac-9031d022281b") IApplicationAssociationRegistration : public IUnknown { virtual HRESULT STDMETHODCALLTYPE QueryCurrentDefault( LPCWSTR pszQuery, ASSOCIATIONTYPE atQueryType, ASSOCIATIONLEVEL alQueryLevel, LPWSTR *ppszAssociation) = 0; virtual HRESULT STDMETHODCALLTYPE QueryAppIsDefault( LPCWSTR pszQuery, ASSOCIATIONTYPE atQueryType, ASSOCIATIONLEVEL alQueryLevel, LPCWSTR pszAppRegistryName, BOOL *pfDefault) = 0; virtual HRESULT STDMETHODCALLTYPE QueryAppIsDefaultAll( ASSOCIATIONLEVEL alQueryLevel, LPCWSTR pszAppRegistryName, BOOL *pfDefault) = 0; virtual HRESULT STDMETHODCALLTYPE SetAppAsDefault( LPCWSTR pszAppRegistryName, LPCWSTR pszSet, ASSOCIATIONTYPE atSetType) = 0; virtual HRESULT STDMETHODCALLTYPE SetAppAsDefaultAll( LPCWSTR pszAppRegistryName) = 0; virtual HRESULT STDMETHODCALLTYPE ClearUserAssociations( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IApplicationAssociationRegistration, 0x4e530b0a, 0xe611, 0x4c77, 0xa3,0xac, 0x90,0x31,0xd0,0x22,0x28,0x1b) #endif #else typedef struct IApplicationAssociationRegistrationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IApplicationAssociationRegistration *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IApplicationAssociationRegistration *This); ULONG (STDMETHODCALLTYPE *Release)( IApplicationAssociationRegistration *This); /*** IApplicationAssociationRegistration methods ***/ HRESULT (STDMETHODCALLTYPE *QueryCurrentDefault)( IApplicationAssociationRegistration *This, LPCWSTR pszQuery, ASSOCIATIONTYPE atQueryType, ASSOCIATIONLEVEL alQueryLevel, LPWSTR *ppszAssociation); HRESULT (STDMETHODCALLTYPE *QueryAppIsDefault)( IApplicationAssociationRegistration *This, LPCWSTR pszQuery, ASSOCIATIONTYPE atQueryType, ASSOCIATIONLEVEL alQueryLevel, LPCWSTR pszAppRegistryName, BOOL *pfDefault); HRESULT (STDMETHODCALLTYPE *QueryAppIsDefaultAll)( IApplicationAssociationRegistration *This, ASSOCIATIONLEVEL alQueryLevel, LPCWSTR pszAppRegistryName, BOOL *pfDefault); HRESULT (STDMETHODCALLTYPE *SetAppAsDefault)( IApplicationAssociationRegistration *This, LPCWSTR pszAppRegistryName, LPCWSTR pszSet, ASSOCIATIONTYPE atSetType); HRESULT (STDMETHODCALLTYPE *SetAppAsDefaultAll)( IApplicationAssociationRegistration *This, LPCWSTR pszAppRegistryName); HRESULT (STDMETHODCALLTYPE *ClearUserAssociations)( IApplicationAssociationRegistration *This); END_INTERFACE } IApplicationAssociationRegistrationVtbl; interface IApplicationAssociationRegistration { CONST_VTBL IApplicationAssociationRegistrationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IApplicationAssociationRegistration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IApplicationAssociationRegistration_AddRef(This) (This)->lpVtbl->AddRef(This) #define IApplicationAssociationRegistration_Release(This) (This)->lpVtbl->Release(This) /*** IApplicationAssociationRegistration methods ***/ #define IApplicationAssociationRegistration_QueryCurrentDefault(This,pszQuery,atQueryType,alQueryLevel,ppszAssociation) (This)->lpVtbl->QueryCurrentDefault(This,pszQuery,atQueryType,alQueryLevel,ppszAssociation) #define IApplicationAssociationRegistration_QueryAppIsDefault(This,pszQuery,atQueryType,alQueryLevel,pszAppRegistryName,pfDefault) (This)->lpVtbl->QueryAppIsDefault(This,pszQuery,atQueryType,alQueryLevel,pszAppRegistryName,pfDefault) #define IApplicationAssociationRegistration_QueryAppIsDefaultAll(This,alQueryLevel,pszAppRegistryName,pfDefault) (This)->lpVtbl->QueryAppIsDefaultAll(This,alQueryLevel,pszAppRegistryName,pfDefault) #define IApplicationAssociationRegistration_SetAppAsDefault(This,pszAppRegistryName,pszSet,atSetType) (This)->lpVtbl->SetAppAsDefault(This,pszAppRegistryName,pszSet,atSetType) #define IApplicationAssociationRegistration_SetAppAsDefaultAll(This,pszAppRegistryName) (This)->lpVtbl->SetAppAsDefaultAll(This,pszAppRegistryName) #define IApplicationAssociationRegistration_ClearUserAssociations(This) (This)->lpVtbl->ClearUserAssociations(This) #else /*** IUnknown methods ***/ static inline HRESULT IApplicationAssociationRegistration_QueryInterface(IApplicationAssociationRegistration* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IApplicationAssociationRegistration_AddRef(IApplicationAssociationRegistration* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IApplicationAssociationRegistration_Release(IApplicationAssociationRegistration* This) { return This->lpVtbl->Release(This); } /*** IApplicationAssociationRegistration methods ***/ static inline HRESULT IApplicationAssociationRegistration_QueryCurrentDefault(IApplicationAssociationRegistration* This,LPCWSTR pszQuery,ASSOCIATIONTYPE atQueryType,ASSOCIATIONLEVEL alQueryLevel,LPWSTR *ppszAssociation) { return This->lpVtbl->QueryCurrentDefault(This,pszQuery,atQueryType,alQueryLevel,ppszAssociation); } static inline HRESULT IApplicationAssociationRegistration_QueryAppIsDefault(IApplicationAssociationRegistration* This,LPCWSTR pszQuery,ASSOCIATIONTYPE atQueryType,ASSOCIATIONLEVEL alQueryLevel,LPCWSTR pszAppRegistryName,BOOL *pfDefault) { return This->lpVtbl->QueryAppIsDefault(This,pszQuery,atQueryType,alQueryLevel,pszAppRegistryName,pfDefault); } static inline HRESULT IApplicationAssociationRegistration_QueryAppIsDefaultAll(IApplicationAssociationRegistration* This,ASSOCIATIONLEVEL alQueryLevel,LPCWSTR pszAppRegistryName,BOOL *pfDefault) { return This->lpVtbl->QueryAppIsDefaultAll(This,alQueryLevel,pszAppRegistryName,pfDefault); } static inline HRESULT IApplicationAssociationRegistration_SetAppAsDefault(IApplicationAssociationRegistration* This,LPCWSTR pszAppRegistryName,LPCWSTR pszSet,ASSOCIATIONTYPE atSetType) { return This->lpVtbl->SetAppAsDefault(This,pszAppRegistryName,pszSet,atSetType); } static inline HRESULT IApplicationAssociationRegistration_SetAppAsDefaultAll(IApplicationAssociationRegistration* This,LPCWSTR pszAppRegistryName) { return This->lpVtbl->SetAppAsDefaultAll(This,pszAppRegistryName); } static inline HRESULT IApplicationAssociationRegistration_ClearUserAssociations(IApplicationAssociationRegistration* This) { return This->lpVtbl->ClearUserAssociations(This); } #endif #endif #endif #endif /* __IApplicationAssociationRegistration_INTERFACE_DEFINED__ */ /***************************************************************************** * IApplicationDestinations interface */ #ifndef __IApplicationDestinations_INTERFACE_DEFINED__ #define __IApplicationDestinations_INTERFACE_DEFINED__ DEFINE_GUID(IID_IApplicationDestinations, 0x12337d35, 0x94c6, 0x48a0, 0xbc,0xe7, 0x6a,0x9c,0x69,0xd4,0xd6,0x00); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("12337d35-94c6-48a0-bce7-6a9c69d4d600") IApplicationDestinations : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetAppID( LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveDestination( IUnknown *punk) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveAllDestinations( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IApplicationDestinations, 0x12337d35, 0x94c6, 0x48a0, 0xbc,0xe7, 0x6a,0x9c,0x69,0xd4,0xd6,0x00) #endif #else typedef struct IApplicationDestinationsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IApplicationDestinations *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IApplicationDestinations *This); ULONG (STDMETHODCALLTYPE *Release)( IApplicationDestinations *This); /*** IApplicationDestinations methods ***/ HRESULT (STDMETHODCALLTYPE *SetAppID)( IApplicationDestinations *This, LPCWSTR pszAppID); HRESULT (STDMETHODCALLTYPE *RemoveDestination)( IApplicationDestinations *This, IUnknown *punk); HRESULT (STDMETHODCALLTYPE *RemoveAllDestinations)( IApplicationDestinations *This); END_INTERFACE } IApplicationDestinationsVtbl; interface IApplicationDestinations { CONST_VTBL IApplicationDestinationsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IApplicationDestinations_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IApplicationDestinations_AddRef(This) (This)->lpVtbl->AddRef(This) #define IApplicationDestinations_Release(This) (This)->lpVtbl->Release(This) /*** IApplicationDestinations methods ***/ #define IApplicationDestinations_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) #define IApplicationDestinations_RemoveDestination(This,punk) (This)->lpVtbl->RemoveDestination(This,punk) #define IApplicationDestinations_RemoveAllDestinations(This) (This)->lpVtbl->RemoveAllDestinations(This) #else /*** IUnknown methods ***/ static inline HRESULT IApplicationDestinations_QueryInterface(IApplicationDestinations* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IApplicationDestinations_AddRef(IApplicationDestinations* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IApplicationDestinations_Release(IApplicationDestinations* This) { return This->lpVtbl->Release(This); } /*** IApplicationDestinations methods ***/ static inline HRESULT IApplicationDestinations_SetAppID(IApplicationDestinations* This,LPCWSTR pszAppID) { return This->lpVtbl->SetAppID(This,pszAppID); } static inline HRESULT IApplicationDestinations_RemoveDestination(IApplicationDestinations* This,IUnknown *punk) { return This->lpVtbl->RemoveDestination(This,punk); } static inline HRESULT IApplicationDestinations_RemoveAllDestinations(IApplicationDestinations* This) { return This->lpVtbl->RemoveAllDestinations(This); } #endif #endif #endif #endif /* __IApplicationDestinations_INTERFACE_DEFINED__ */ /***************************************************************************** * IApplicationDocumentLists interface */ #ifndef __IApplicationDocumentLists_INTERFACE_DEFINED__ #define __IApplicationDocumentLists_INTERFACE_DEFINED__ typedef enum APPDOCLISTTYPE { ADLT_RECENT = 0, ADLT_FREQUENT = 1 } APPDOCLISTTYPE; DEFINE_GUID(IID_IApplicationDocumentLists, 0x3c594f9f, 0x9f30, 0x47a1, 0x97,0x9a, 0xc9,0xe8,0x3d,0x3d,0x0a,0x06); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3c594f9f-9f30-47a1-979a-c9e83d3d0a06") IApplicationDocumentLists : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetAppID( LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE GetList( APPDOCLISTTYPE list_type, UINT item_count, REFIID riid, void **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IApplicationDocumentLists, 0x3c594f9f, 0x9f30, 0x47a1, 0x97,0x9a, 0xc9,0xe8,0x3d,0x3d,0x0a,0x06) #endif #else typedef struct IApplicationDocumentListsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IApplicationDocumentLists *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IApplicationDocumentLists *This); ULONG (STDMETHODCALLTYPE *Release)( IApplicationDocumentLists *This); /*** IApplicationDocumentLists methods ***/ HRESULT (STDMETHODCALLTYPE *SetAppID)( IApplicationDocumentLists *This, LPCWSTR pszAppID); HRESULT (STDMETHODCALLTYPE *GetList)( IApplicationDocumentLists *This, APPDOCLISTTYPE list_type, UINT item_count, REFIID riid, void **ppv); END_INTERFACE } IApplicationDocumentListsVtbl; interface IApplicationDocumentLists { CONST_VTBL IApplicationDocumentListsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IApplicationDocumentLists_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IApplicationDocumentLists_AddRef(This) (This)->lpVtbl->AddRef(This) #define IApplicationDocumentLists_Release(This) (This)->lpVtbl->Release(This) /*** IApplicationDocumentLists methods ***/ #define IApplicationDocumentLists_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) #define IApplicationDocumentLists_GetList(This,list_type,item_count,riid,ppv) (This)->lpVtbl->GetList(This,list_type,item_count,riid,ppv) #else /*** IUnknown methods ***/ static inline HRESULT IApplicationDocumentLists_QueryInterface(IApplicationDocumentLists* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IApplicationDocumentLists_AddRef(IApplicationDocumentLists* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IApplicationDocumentLists_Release(IApplicationDocumentLists* This) { return This->lpVtbl->Release(This); } /*** IApplicationDocumentLists methods ***/ static inline HRESULT IApplicationDocumentLists_SetAppID(IApplicationDocumentLists* This,LPCWSTR pszAppID) { return This->lpVtbl->SetAppID(This,pszAppID); } static inline HRESULT IApplicationDocumentLists_GetList(IApplicationDocumentLists* This,APPDOCLISTTYPE list_type,UINT item_count,REFIID riid,void **ppv) { return This->lpVtbl->GetList(This,list_type,item_count,riid,ppv); } #endif #endif #endif #endif /* __IApplicationDocumentLists_INTERFACE_DEFINED__ */ /***************************************************************************** * ICustomDestinationList interface */ #ifndef __ICustomDestinationList_INTERFACE_DEFINED__ #define __ICustomDestinationList_INTERFACE_DEFINED__ typedef enum KNOWNDESTCATEGORY { KDC_FREQUENT = 1, KDC_RECENT = 2 } KNOWNDESTCATEGORY; DEFINE_GUID(IID_ICustomDestinationList, 0x6332debf, 0x87b5, 0x4670, 0x90,0xc0, 0x5e,0x57,0xb4,0x08,0xa4,0x9e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6332debf-87b5-4670-90c0-5e57b408a49e") ICustomDestinationList : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetAppID( LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE BeginList( UINT *pcMinSlots, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE AppendCategory( LPCWSTR pszCategory, IObjectArray *poa) = 0; virtual HRESULT STDMETHODCALLTYPE AppendKnownCategory( KNOWNDESTCATEGORY category) = 0; virtual HRESULT STDMETHODCALLTYPE AddUserTasks( IObjectArray *poa) = 0; virtual HRESULT STDMETHODCALLTYPE CommitList( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetRemovedDestinations( REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteList( LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE AbortList( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICustomDestinationList, 0x6332debf, 0x87b5, 0x4670, 0x90,0xc0, 0x5e,0x57,0xb4,0x08,0xa4,0x9e) #endif #else typedef struct ICustomDestinationListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICustomDestinationList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICustomDestinationList *This); ULONG (STDMETHODCALLTYPE *Release)( ICustomDestinationList *This); /*** ICustomDestinationList methods ***/ HRESULT (STDMETHODCALLTYPE *SetAppID)( ICustomDestinationList *This, LPCWSTR pszAppID); HRESULT (STDMETHODCALLTYPE *BeginList)( ICustomDestinationList *This, UINT *pcMinSlots, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *AppendCategory)( ICustomDestinationList *This, LPCWSTR pszCategory, IObjectArray *poa); HRESULT (STDMETHODCALLTYPE *AppendKnownCategory)( ICustomDestinationList *This, KNOWNDESTCATEGORY category); HRESULT (STDMETHODCALLTYPE *AddUserTasks)( ICustomDestinationList *This, IObjectArray *poa); HRESULT (STDMETHODCALLTYPE *CommitList)( ICustomDestinationList *This); HRESULT (STDMETHODCALLTYPE *GetRemovedDestinations)( ICustomDestinationList *This, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *DeleteList)( ICustomDestinationList *This, LPCWSTR pszAppID); HRESULT (STDMETHODCALLTYPE *AbortList)( ICustomDestinationList *This); END_INTERFACE } ICustomDestinationListVtbl; interface ICustomDestinationList { CONST_VTBL ICustomDestinationListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICustomDestinationList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICustomDestinationList_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICustomDestinationList_Release(This) (This)->lpVtbl->Release(This) /*** ICustomDestinationList methods ***/ #define ICustomDestinationList_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) #define ICustomDestinationList_BeginList(This,pcMinSlots,riid,ppv) (This)->lpVtbl->BeginList(This,pcMinSlots,riid,ppv) #define ICustomDestinationList_AppendCategory(This,pszCategory,poa) (This)->lpVtbl->AppendCategory(This,pszCategory,poa) #define ICustomDestinationList_AppendKnownCategory(This,category) (This)->lpVtbl->AppendKnownCategory(This,category) #define ICustomDestinationList_AddUserTasks(This,poa) (This)->lpVtbl->AddUserTasks(This,poa) #define ICustomDestinationList_CommitList(This) (This)->lpVtbl->CommitList(This) #define ICustomDestinationList_GetRemovedDestinations(This,riid,ppv) (This)->lpVtbl->GetRemovedDestinations(This,riid,ppv) #define ICustomDestinationList_DeleteList(This,pszAppID) (This)->lpVtbl->DeleteList(This,pszAppID) #define ICustomDestinationList_AbortList(This) (This)->lpVtbl->AbortList(This) #else /*** IUnknown methods ***/ static inline HRESULT ICustomDestinationList_QueryInterface(ICustomDestinationList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ICustomDestinationList_AddRef(ICustomDestinationList* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ICustomDestinationList_Release(ICustomDestinationList* This) { return This->lpVtbl->Release(This); } /*** ICustomDestinationList methods ***/ static inline HRESULT ICustomDestinationList_SetAppID(ICustomDestinationList* This,LPCWSTR pszAppID) { return This->lpVtbl->SetAppID(This,pszAppID); } static inline HRESULT ICustomDestinationList_BeginList(ICustomDestinationList* This,UINT *pcMinSlots,REFIID riid,void **ppv) { return This->lpVtbl->BeginList(This,pcMinSlots,riid,ppv); } static inline HRESULT ICustomDestinationList_AppendCategory(ICustomDestinationList* This,LPCWSTR pszCategory,IObjectArray *poa) { return This->lpVtbl->AppendCategory(This,pszCategory,poa); } static inline HRESULT ICustomDestinationList_AppendKnownCategory(ICustomDestinationList* This,KNOWNDESTCATEGORY category) { return This->lpVtbl->AppendKnownCategory(This,category); } static inline HRESULT ICustomDestinationList_AddUserTasks(ICustomDestinationList* This,IObjectArray *poa) { return This->lpVtbl->AddUserTasks(This,poa); } static inline HRESULT ICustomDestinationList_CommitList(ICustomDestinationList* This) { return This->lpVtbl->CommitList(This); } static inline HRESULT ICustomDestinationList_GetRemovedDestinations(ICustomDestinationList* This,REFIID riid,void **ppv) { return This->lpVtbl->GetRemovedDestinations(This,riid,ppv); } static inline HRESULT ICustomDestinationList_DeleteList(ICustomDestinationList* This,LPCWSTR pszAppID) { return This->lpVtbl->DeleteList(This,pszAppID); } static inline HRESULT ICustomDestinationList_AbortList(ICustomDestinationList* This) { return This->lpVtbl->AbortList(This); } #endif #endif #endif #endif /* __ICustomDestinationList_INTERFACE_DEFINED__ */ /***************************************************************************** * IQueryCancelAutoPlay interface */ #ifndef __IQueryCancelAutoPlay_INTERFACE_DEFINED__ #define __IQueryCancelAutoPlay_INTERFACE_DEFINED__ DEFINE_GUID(IID_IQueryCancelAutoPlay, 0xddefe873, 0x6997, 0x4e68, 0xbe,0x26, 0x39,0xb6,0x33,0xad,0xbe,0x12); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ddefe873-6997-4e68-be26-39b633adbe12") IQueryCancelAutoPlay : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AllowAutoPlay( LPCWSTR path, DWORD content_type, LPCWSTR label, DWORD serial_number) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IQueryCancelAutoPlay, 0xddefe873, 0x6997, 0x4e68, 0xbe,0x26, 0x39,0xb6,0x33,0xad,0xbe,0x12) #endif #else typedef struct IQueryCancelAutoPlayVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IQueryCancelAutoPlay *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IQueryCancelAutoPlay *This); ULONG (STDMETHODCALLTYPE *Release)( IQueryCancelAutoPlay *This); /*** IQueryCancelAutoPlay methods ***/ HRESULT (STDMETHODCALLTYPE *AllowAutoPlay)( IQueryCancelAutoPlay *This, LPCWSTR path, DWORD content_type, LPCWSTR label, DWORD serial_number); END_INTERFACE } IQueryCancelAutoPlayVtbl; interface IQueryCancelAutoPlay { CONST_VTBL IQueryCancelAutoPlayVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IQueryCancelAutoPlay_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IQueryCancelAutoPlay_AddRef(This) (This)->lpVtbl->AddRef(This) #define IQueryCancelAutoPlay_Release(This) (This)->lpVtbl->Release(This) /*** IQueryCancelAutoPlay methods ***/ #define IQueryCancelAutoPlay_AllowAutoPlay(This,path,content_type,label,serial_number) (This)->lpVtbl->AllowAutoPlay(This,path,content_type,label,serial_number) #else /*** IUnknown methods ***/ static inline HRESULT IQueryCancelAutoPlay_QueryInterface(IQueryCancelAutoPlay* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IQueryCancelAutoPlay_AddRef(IQueryCancelAutoPlay* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IQueryCancelAutoPlay_Release(IQueryCancelAutoPlay* This) { return This->lpVtbl->Release(This); } /*** IQueryCancelAutoPlay methods ***/ static inline HRESULT IQueryCancelAutoPlay_AllowAutoPlay(IQueryCancelAutoPlay* This,LPCWSTR path,DWORD content_type,LPCWSTR label,DWORD serial_number) { return This->lpVtbl->AllowAutoPlay(This,path,content_type,label,serial_number); } #endif #endif #endif #endif /* __IQueryCancelAutoPlay_INTERFACE_DEFINED__ */ /***************************************************************************** * ITransferAdviseSink interface */ #ifndef __ITransferAdviseSink_INTERFACE_DEFINED__ #define __ITransferAdviseSink_INTERFACE_DEFINED__ enum _TRANSFER_ADVISE_STATE { TS_NONE = 0, TS_PERFORMING = 1, TS_PREPARING = 2, TS_INDETERMINATE = 4 }; typedef DWORD TRANSFER_ADVISE_STATE; DEFINE_GUID(IID_ITransferAdviseSink, 0xd594d0d8, 0x8da7, 0x457b, 0xb3,0xb4, 0xce,0x5d,0xba,0xac,0x0b,0x88); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d594d0d8-8da7-457b-b3b4-ce5dbaac0b88") ITransferAdviseSink : public IUnknown { virtual HRESULT STDMETHODCALLTYPE UpdateProgress( ULONGLONG size_current, ULONGLONG size_total, INT files_current, INT files_total, INT folders_current, INT folders_total) = 0; virtual HRESULT STDMETHODCALLTYPE UpdateTransferState( TRANSFER_ADVISE_STATE state) = 0; virtual HRESULT STDMETHODCALLTYPE ConfirmOverwrite( IShellItem *source, IShellItem *dest_parent, LPCWSTR name) = 0; virtual HRESULT STDMETHODCALLTYPE ConfirmEncryptionLoss( IShellItem *source) = 0; virtual HRESULT STDMETHODCALLTYPE FileFailure( IShellItem *item, LPCWSTR itemname, HRESULT hr, LPWSTR rename, ULONG crename) = 0; virtual HRESULT STDMETHODCALLTYPE SubStreamFailure( IShellItem *item, LPCWSTR stream, HRESULT hr) = 0; virtual HRESULT STDMETHODCALLTYPE PropertyFailure( IShellItem *item, const PROPERTYKEY *key, HRESULT hr) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITransferAdviseSink, 0xd594d0d8, 0x8da7, 0x457b, 0xb3,0xb4, 0xce,0x5d,0xba,0xac,0x0b,0x88) #endif #else typedef struct ITransferAdviseSinkVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITransferAdviseSink *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITransferAdviseSink *This); ULONG (STDMETHODCALLTYPE *Release)( ITransferAdviseSink *This); /*** ITransferAdviseSink methods ***/ HRESULT (STDMETHODCALLTYPE *UpdateProgress)( ITransferAdviseSink *This, ULONGLONG size_current, ULONGLONG size_total, INT files_current, INT files_total, INT folders_current, INT folders_total); HRESULT (STDMETHODCALLTYPE *UpdateTransferState)( ITransferAdviseSink *This, TRANSFER_ADVISE_STATE state); HRESULT (STDMETHODCALLTYPE *ConfirmOverwrite)( ITransferAdviseSink *This, IShellItem *source, IShellItem *dest_parent, LPCWSTR name); HRESULT (STDMETHODCALLTYPE *ConfirmEncryptionLoss)( ITransferAdviseSink *This, IShellItem *source); HRESULT (STDMETHODCALLTYPE *FileFailure)( ITransferAdviseSink *This, IShellItem *item, LPCWSTR itemname, HRESULT hr, LPWSTR rename, ULONG crename); HRESULT (STDMETHODCALLTYPE *SubStreamFailure)( ITransferAdviseSink *This, IShellItem *item, LPCWSTR stream, HRESULT hr); HRESULT (STDMETHODCALLTYPE *PropertyFailure)( ITransferAdviseSink *This, IShellItem *item, const PROPERTYKEY *key, HRESULT hr); END_INTERFACE } ITransferAdviseSinkVtbl; interface ITransferAdviseSink { CONST_VTBL ITransferAdviseSinkVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITransferAdviseSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITransferAdviseSink_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITransferAdviseSink_Release(This) (This)->lpVtbl->Release(This) /*** ITransferAdviseSink methods ***/ #define ITransferAdviseSink_UpdateProgress(This,size_current,size_total,files_current,files_total,folders_current,folders_total) (This)->lpVtbl->UpdateProgress(This,size_current,size_total,files_current,files_total,folders_current,folders_total) #define ITransferAdviseSink_UpdateTransferState(This,state) (This)->lpVtbl->UpdateTransferState(This,state) #define ITransferAdviseSink_ConfirmOverwrite(This,source,dest_parent,name) (This)->lpVtbl->ConfirmOverwrite(This,source,dest_parent,name) #define ITransferAdviseSink_ConfirmEncryptionLoss(This,source) (This)->lpVtbl->ConfirmEncryptionLoss(This,source) #define ITransferAdviseSink_FileFailure(This,item,itemname,hr,rename,crename) (This)->lpVtbl->FileFailure(This,item,itemname,hr,rename,crename) #define ITransferAdviseSink_SubStreamFailure(This,item,stream,hr) (This)->lpVtbl->SubStreamFailure(This,item,stream,hr) #define ITransferAdviseSink_PropertyFailure(This,item,key,hr) (This)->lpVtbl->PropertyFailure(This,item,key,hr) #else /*** IUnknown methods ***/ static inline HRESULT ITransferAdviseSink_QueryInterface(ITransferAdviseSink* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ITransferAdviseSink_AddRef(ITransferAdviseSink* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ITransferAdviseSink_Release(ITransferAdviseSink* This) { return This->lpVtbl->Release(This); } /*** ITransferAdviseSink methods ***/ static inline HRESULT ITransferAdviseSink_UpdateProgress(ITransferAdviseSink* This,ULONGLONG size_current,ULONGLONG size_total,INT files_current,INT files_total,INT folders_current,INT folders_total) { return This->lpVtbl->UpdateProgress(This,size_current,size_total,files_current,files_total,folders_current,folders_total); } static inline HRESULT ITransferAdviseSink_UpdateTransferState(ITransferAdviseSink* This,TRANSFER_ADVISE_STATE state) { return This->lpVtbl->UpdateTransferState(This,state); } static inline HRESULT ITransferAdviseSink_ConfirmOverwrite(ITransferAdviseSink* This,IShellItem *source,IShellItem *dest_parent,LPCWSTR name) { return This->lpVtbl->ConfirmOverwrite(This,source,dest_parent,name); } static inline HRESULT ITransferAdviseSink_ConfirmEncryptionLoss(ITransferAdviseSink* This,IShellItem *source) { return This->lpVtbl->ConfirmEncryptionLoss(This,source); } static inline HRESULT ITransferAdviseSink_FileFailure(ITransferAdviseSink* This,IShellItem *item,LPCWSTR itemname,HRESULT hr,LPWSTR rename,ULONG crename) { return This->lpVtbl->FileFailure(This,item,itemname,hr,rename,crename); } static inline HRESULT ITransferAdviseSink_SubStreamFailure(ITransferAdviseSink* This,IShellItem *item,LPCWSTR stream,HRESULT hr) { return This->lpVtbl->SubStreamFailure(This,item,stream,hr); } static inline HRESULT ITransferAdviseSink_PropertyFailure(ITransferAdviseSink* This,IShellItem *item,const PROPERTYKEY *key,HRESULT hr) { return This->lpVtbl->PropertyFailure(This,item,key,hr); } #endif #endif #endif #endif /* __ITransferAdviseSink_INTERFACE_DEFINED__ */ enum _TRANSFER_SOURCE_FLAGS { TSF_NORMAL = 0, TSF_FAIL_EXIST = 0, TSF_RENAME_EXIST = 0x1, TSF_OVERWRITE_EXIST = 0x2, TSF_ALLOW_DECRYPTION = 0x4, TSF_NO_SECURITY = 0x8, TSF_COPY_CREATION_TIME = 0x10, TSF_COPY_WRITE_TIME = 0x20, TSF_USE_FULL_ACCESS = 0x40, TSF_DELETE_RECYCLE_IF_POSSIBLE = 0x80, TSF_COPY_HARD_LINK = 0x100, TSF_COPY_LOCALIZED_NAME = 0x200, TSF_MOVE_AS_COPY_DELETE = 0x400, TSF_SUSPEND_SHELLEVENTS = 0x800 }; typedef DWORD TRANSFER_SOURCE_FLAGS; /***************************************************************************** * ITransferSource interface */ #ifndef __ITransferSource_INTERFACE_DEFINED__ #define __ITransferSource_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITransferSource, 0x00adb003, 0xbde9, 0x45c6, 0x8e,0x29, 0xd0,0x9f,0x93,0x53,0xe1,0x08); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00adb003-bde9-45c6-8e29-d09f9353e108") ITransferSource : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Advise( ITransferAdviseSink *sink, DWORD *cookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD cookie) = 0; virtual HRESULT STDMETHODCALLTYPE SetProperties( IPropertyChangeArray *array) = 0; virtual HRESULT STDMETHODCALLTYPE OpenItem( IShellItem *item, TRANSFER_SOURCE_FLAGS flags, REFIID riid, void **ppv) = 0; virtual HRESULT STDMETHODCALLTYPE MoveItem( IShellItem *item, IShellItem *parent_dest, LPCWSTR name_dest, TRANSFER_SOURCE_FLAGS flags, IShellItem **newitem) = 0; virtual HRESULT STDMETHODCALLTYPE RecycleItem( IShellItem *source, IShellItem *parent_dest, TRANSFER_SOURCE_FLAGS flags, IShellItem **new_dest) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveItem( IShellItem *source, TRANSFER_SOURCE_FLAGS flags) = 0; virtual HRESULT STDMETHODCALLTYPE RenameItem( IShellItem *source, LPCWSTR newname, TRANSFER_SOURCE_FLAGS flags, IShellItem **new_dest) = 0; virtual HRESULT STDMETHODCALLTYPE LinkItem( IShellItem *source, IShellItem *parent_dest, LPCWSTR new_name, TRANSFER_SOURCE_FLAGS flags, IShellItem **new_dest) = 0; virtual HRESULT STDMETHODCALLTYPE ApplyPropertiesToItem( IShellItem *source, IShellItem **newitem) = 0; virtual HRESULT STDMETHODCALLTYPE GetDefaultDestinationName( IShellItem *source, IShellItem *parent_dest, LPWSTR *dest_name) = 0; virtual HRESULT STDMETHODCALLTYPE EnterFolder( IShellItem *child_folder) = 0; virtual HRESULT STDMETHODCALLTYPE LeaveFolder( IShellItem *child_folder) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITransferSource, 0x00adb003, 0xbde9, 0x45c6, 0x8e,0x29, 0xd0,0x9f,0x93,0x53,0xe1,0x08) #endif #else typedef struct ITransferSourceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITransferSource *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITransferSource *This); ULONG (STDMETHODCALLTYPE *Release)( ITransferSource *This); /*** ITransferSource methods ***/ HRESULT (STDMETHODCALLTYPE *Advise)( ITransferSource *This, ITransferAdviseSink *sink, DWORD *cookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( ITransferSource *This, DWORD cookie); HRESULT (STDMETHODCALLTYPE *SetProperties)( ITransferSource *This, IPropertyChangeArray *array); HRESULT (STDMETHODCALLTYPE *OpenItem)( ITransferSource *This, IShellItem *item, TRANSFER_SOURCE_FLAGS flags, REFIID riid, void **ppv); HRESULT (STDMETHODCALLTYPE *MoveItem)( ITransferSource *This, IShellItem *item, IShellItem *parent_dest, LPCWSTR name_dest, TRANSFER_SOURCE_FLAGS flags, IShellItem **newitem); HRESULT (STDMETHODCALLTYPE *RecycleItem)( ITransferSource *This, IShellItem *source, IShellItem *parent_dest, TRANSFER_SOURCE_FLAGS flags, IShellItem **new_dest); HRESULT (STDMETHODCALLTYPE *RemoveItem)( ITransferSource *This, IShellItem *source, TRANSFER_SOURCE_FLAGS flags); HRESULT (STDMETHODCALLTYPE *RenameItem)( ITransferSource *This, IShellItem *source, LPCWSTR newname, TRANSFER_SOURCE_FLAGS flags, IShellItem **new_dest); HRESULT (STDMETHODCALLTYPE *LinkItem)( ITransferSource *This, IShellItem *source, IShellItem *parent_dest, LPCWSTR new_name, TRANSFER_SOURCE_FLAGS flags, IShellItem **new_dest); HRESULT (STDMETHODCALLTYPE *ApplyPropertiesToItem)( ITransferSource *This, IShellItem *source, IShellItem **newitem); HRESULT (STDMETHODCALLTYPE *GetDefaultDestinationName)( ITransferSource *This, IShellItem *source, IShellItem *parent_dest, LPWSTR *dest_name); HRESULT (STDMETHODCALLTYPE *EnterFolder)( ITransferSource *This, IShellItem *child_folder); HRESULT (STDMETHODCALLTYPE *LeaveFolder)( ITransferSource *This, IShellItem *child_folder); END_INTERFACE } ITransferSourceVtbl; interface ITransferSource { CONST_VTBL ITransferSourceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITransferSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITransferSource_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITransferSource_Release(This) (This)->lpVtbl->Release(This) /*** ITransferSource methods ***/ #define ITransferSource_Advise(This,sink,cookie) (This)->lpVtbl->Advise(This,sink,cookie) #define ITransferSource_Unadvise(This,cookie) (This)->lpVtbl->Unadvise(This,cookie) #define ITransferSource_SetProperties(This,array) (This)->lpVtbl->SetProperties(This,array) #define ITransferSource_OpenItem(This,item,flags,riid,ppv) (This)->lpVtbl->OpenItem(This,item,flags,riid,ppv) #define ITransferSource_MoveItem(This,item,parent_dest,name_dest,flags,newitem) (This)->lpVtbl->MoveItem(This,item,parent_dest,name_dest,flags,newitem) #define ITransferSource_RecycleItem(This,source,parent_dest,flags,new_dest) (This)->lpVtbl->RecycleItem(This,source,parent_dest,flags,new_dest) #define ITransferSource_RemoveItem(This,source,flags) (This)->lpVtbl->RemoveItem(This,source,flags) #define ITransferSource_RenameItem(This,source,newname,flags,new_dest) (This)->lpVtbl->RenameItem(This,source,newname,flags,new_dest) #define ITransferSource_LinkItem(This,source,parent_dest,new_name,flags,new_dest) (This)->lpVtbl->LinkItem(This,source,parent_dest,new_name,flags,new_dest) #define ITransferSource_ApplyPropertiesToItem(This,source,newitem) (This)->lpVtbl->ApplyPropertiesToItem(This,source,newitem) #define ITransferSource_GetDefaultDestinationName(This,source,parent_dest,dest_name) (This)->lpVtbl->GetDefaultDestinationName(This,source,parent_dest,dest_name) #define ITransferSource_EnterFolder(This,child_folder) (This)->lpVtbl->EnterFolder(This,child_folder) #define ITransferSource_LeaveFolder(This,child_folder) (This)->lpVtbl->LeaveFolder(This,child_folder) #else /*** IUnknown methods ***/ static inline HRESULT ITransferSource_QueryInterface(ITransferSource* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ITransferSource_AddRef(ITransferSource* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ITransferSource_Release(ITransferSource* This) { return This->lpVtbl->Release(This); } /*** ITransferSource methods ***/ static inline HRESULT ITransferSource_Advise(ITransferSource* This,ITransferAdviseSink *sink,DWORD *cookie) { return This->lpVtbl->Advise(This,sink,cookie); } static inline HRESULT ITransferSource_Unadvise(ITransferSource* This,DWORD cookie) { return This->lpVtbl->Unadvise(This,cookie); } static inline HRESULT ITransferSource_SetProperties(ITransferSource* This,IPropertyChangeArray *array) { return This->lpVtbl->SetProperties(This,array); } static inline HRESULT ITransferSource_OpenItem(ITransferSource* This,IShellItem *item,TRANSFER_SOURCE_FLAGS flags,REFIID riid,void **ppv) { return This->lpVtbl->OpenItem(This,item,flags,riid,ppv); } static inline HRESULT ITransferSource_MoveItem(ITransferSource* This,IShellItem *item,IShellItem *parent_dest,LPCWSTR name_dest,TRANSFER_SOURCE_FLAGS flags,IShellItem **newitem) { return This->lpVtbl->MoveItem(This,item,parent_dest,name_dest,flags,newitem); } static inline HRESULT ITransferSource_RecycleItem(ITransferSource* This,IShellItem *source,IShellItem *parent_dest,TRANSFER_SOURCE_FLAGS flags,IShellItem **new_dest) { return This->lpVtbl->RecycleItem(This,source,parent_dest,flags,new_dest); } static inline HRESULT ITransferSource_RemoveItem(ITransferSource* This,IShellItem *source,TRANSFER_SOURCE_FLAGS flags) { return This->lpVtbl->RemoveItem(This,source,flags); } static inline HRESULT ITransferSource_RenameItem(ITransferSource* This,IShellItem *source,LPCWSTR newname,TRANSFER_SOURCE_FLAGS flags,IShellItem **new_dest) { return This->lpVtbl->RenameItem(This,source,newname,flags,new_dest); } static inline HRESULT ITransferSource_LinkItem(ITransferSource* This,IShellItem *source,IShellItem *parent_dest,LPCWSTR new_name,TRANSFER_SOURCE_FLAGS flags,IShellItem **new_dest) { return This->lpVtbl->LinkItem(This,source,parent_dest,new_name,flags,new_dest); } static inline HRESULT ITransferSource_ApplyPropertiesToItem(ITransferSource* This,IShellItem *source,IShellItem **newitem) { return This->lpVtbl->ApplyPropertiesToItem(This,source,newitem); } static inline HRESULT ITransferSource_GetDefaultDestinationName(ITransferSource* This,IShellItem *source,IShellItem *parent_dest,LPWSTR *dest_name) { return This->lpVtbl->GetDefaultDestinationName(This,source,parent_dest,dest_name); } static inline HRESULT ITransferSource_EnterFolder(ITransferSource* This,IShellItem *child_folder) { return This->lpVtbl->EnterFolder(This,child_folder); } static inline HRESULT ITransferSource_LeaveFolder(ITransferSource* This,IShellItem *child_folder) { return This->lpVtbl->LeaveFolder(This,child_folder); } #endif #endif #endif #endif /* __ITransferSource_INTERFACE_DEFINED__ */ /***************************************************************************** * ITransferDestination interface */ #ifndef __ITransferDestination_INTERFACE_DEFINED__ #define __ITransferDestination_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITransferDestination, 0x48addd32, 0x3ca5, 0x4124, 0xab,0xe3, 0xb5,0xa7,0x25,0x31,0xb2,0x07); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("48addd32-3ca5-4124-abe3-b5a72531b207") ITransferDestination : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Advise( ITransferAdviseSink *sink, DWORD *cookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD cookie) = 0; virtual HRESULT STDMETHODCALLTYPE CreateItem( LPCWSTR name, DWORD attr, ULONGLONG size, TRANSFER_SOURCE_FLAGS flags, REFIID riid, void **ppv, REFIID resources, void **presources) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITransferDestination, 0x48addd32, 0x3ca5, 0x4124, 0xab,0xe3, 0xb5,0xa7,0x25,0x31,0xb2,0x07) #endif #else typedef struct ITransferDestinationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITransferDestination *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITransferDestination *This); ULONG (STDMETHODCALLTYPE *Release)( ITransferDestination *This); /*** ITransferDestination methods ***/ HRESULT (STDMETHODCALLTYPE *Advise)( ITransferDestination *This, ITransferAdviseSink *sink, DWORD *cookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( ITransferDestination *This, DWORD cookie); HRESULT (STDMETHODCALLTYPE *CreateItem)( ITransferDestination *This, LPCWSTR name, DWORD attr, ULONGLONG size, TRANSFER_SOURCE_FLAGS flags, REFIID riid, void **ppv, REFIID resources, void **presources); END_INTERFACE } ITransferDestinationVtbl; interface ITransferDestination { CONST_VTBL ITransferDestinationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITransferDestination_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITransferDestination_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITransferDestination_Release(This) (This)->lpVtbl->Release(This) /*** ITransferDestination methods ***/ #define ITransferDestination_Advise(This,sink,cookie) (This)->lpVtbl->Advise(This,sink,cookie) #define ITransferDestination_Unadvise(This,cookie) (This)->lpVtbl->Unadvise(This,cookie) #define ITransferDestination_CreateItem(This,name,attr,size,flags,riid,ppv,resources,presources) (This)->lpVtbl->CreateItem(This,name,attr,size,flags,riid,ppv,resources,presources) #else /*** IUnknown methods ***/ static inline HRESULT ITransferDestination_QueryInterface(ITransferDestination* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG ITransferDestination_AddRef(ITransferDestination* This) { return This->lpVtbl->AddRef(This); } static inline ULONG ITransferDestination_Release(ITransferDestination* This) { return This->lpVtbl->Release(This); } /*** ITransferDestination methods ***/ static inline HRESULT ITransferDestination_Advise(ITransferDestination* This,ITransferAdviseSink *sink,DWORD *cookie) { return This->lpVtbl->Advise(This,sink,cookie); } static inline HRESULT ITransferDestination_Unadvise(ITransferDestination* This,DWORD cookie) { return This->lpVtbl->Unadvise(This,cookie); } static inline HRESULT ITransferDestination_CreateItem(ITransferDestination* This,LPCWSTR name,DWORD attr,ULONGLONG size,TRANSFER_SOURCE_FLAGS flags,REFIID riid,void **ppv,REFIID resources,void **presources) { return This->lpVtbl->CreateItem(This,name,attr,size,flags,riid,ppv,resources,presources); } #endif #endif #endif #endif /* __ITransferDestination_INTERFACE_DEFINED__ */ /***************************************************************************** * IAssocHandlerInvoker interface */ #ifndef __IAssocHandlerInvoker_INTERFACE_DEFINED__ #define __IAssocHandlerInvoker_INTERFACE_DEFINED__ DEFINE_GUID(IID_IAssocHandlerInvoker, 0x92218cab, 0xecaa, 0x4335, 0x81,0x33, 0x80,0x7f,0xd2,0x34,0xc2,0xee); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("92218cab-ecaa-4335-8133-807fd234c2ee") IAssocHandlerInvoker : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SupportsSelection( ) = 0; virtual HRESULT STDMETHODCALLTYPE Invoke( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAssocHandlerInvoker, 0x92218cab, 0xecaa, 0x4335, 0x81,0x33, 0x80,0x7f,0xd2,0x34,0xc2,0xee) #endif #else typedef struct IAssocHandlerInvokerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAssocHandlerInvoker *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAssocHandlerInvoker *This); ULONG (STDMETHODCALLTYPE *Release)( IAssocHandlerInvoker *This); /*** IAssocHandlerInvoker methods ***/ HRESULT (STDMETHODCALLTYPE *SupportsSelection)( IAssocHandlerInvoker *This); HRESULT (STDMETHODCALLTYPE *Invoke)( IAssocHandlerInvoker *This); END_INTERFACE } IAssocHandlerInvokerVtbl; interface IAssocHandlerInvoker { CONST_VTBL IAssocHandlerInvokerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAssocHandlerInvoker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAssocHandlerInvoker_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAssocHandlerInvoker_Release(This) (This)->lpVtbl->Release(This) /*** IAssocHandlerInvoker methods ***/ #define IAssocHandlerInvoker_SupportsSelection(This) (This)->lpVtbl->SupportsSelection(This) #define IAssocHandlerInvoker_Invoke(This) (This)->lpVtbl->Invoke(This) #else /*** IUnknown methods ***/ static inline HRESULT IAssocHandlerInvoker_QueryInterface(IAssocHandlerInvoker* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IAssocHandlerInvoker_AddRef(IAssocHandlerInvoker* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IAssocHandlerInvoker_Release(IAssocHandlerInvoker* This) { return This->lpVtbl->Release(This); } /*** IAssocHandlerInvoker methods ***/ static inline HRESULT IAssocHandlerInvoker_SupportsSelection(IAssocHandlerInvoker* This) { return This->lpVtbl->SupportsSelection(This); } static inline HRESULT IAssocHandlerInvoker_Invoke(IAssocHandlerInvoker* This) { return This->lpVtbl->Invoke(This); } #endif #endif #endif #endif /* __IAssocHandlerInvoker_INTERFACE_DEFINED__ */ /***************************************************************************** * IAssocHandler interface */ #ifndef __IAssocHandler_INTERFACE_DEFINED__ #define __IAssocHandler_INTERFACE_DEFINED__ DEFINE_GUID(IID_IAssocHandler, 0xf04061ac, 0x1659, 0x4a3f, 0xa9,0x54, 0x77,0x5a,0xa5,0x7f,0xc0,0x83); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f04061ac-1659-4a3f-a954-775aa57fc083") IAssocHandler : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetName( LPWSTR *name) = 0; virtual HRESULT STDMETHODCALLTYPE GetUIName( LPWSTR *uiname) = 0; virtual HRESULT STDMETHODCALLTYPE GetIconLocation( LPWSTR *path, int *index) = 0; virtual HRESULT STDMETHODCALLTYPE IsRecommended( ) = 0; virtual HRESULT STDMETHODCALLTYPE MakeDefault( LPCWSTR description) = 0; virtual HRESULT STDMETHODCALLTYPE Invoke( IDataObject *object) = 0; virtual HRESULT STDMETHODCALLTYPE CreateInvoker( IDataObject *object, IAssocHandlerInvoker **invoker) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IAssocHandler, 0xf04061ac, 0x1659, 0x4a3f, 0xa9,0x54, 0x77,0x5a,0xa5,0x7f,0xc0,0x83) #endif #else typedef struct IAssocHandlerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IAssocHandler *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IAssocHandler *This); ULONG (STDMETHODCALLTYPE *Release)( IAssocHandler *This); /*** IAssocHandler methods ***/ HRESULT (STDMETHODCALLTYPE *GetName)( IAssocHandler *This, LPWSTR *name); HRESULT (STDMETHODCALLTYPE *GetUIName)( IAssocHandler *This, LPWSTR *uiname); HRESULT (STDMETHODCALLTYPE *GetIconLocation)( IAssocHandler *This, LPWSTR *path, int *index); HRESULT (STDMETHODCALLTYPE *IsRecommended)( IAssocHandler *This); HRESULT (STDMETHODCALLTYPE *MakeDefault)( IAssocHandler *This, LPCWSTR description); HRESULT (STDMETHODCALLTYPE *Invoke)( IAssocHandler *This, IDataObject *object); HRESULT (STDMETHODCALLTYPE *CreateInvoker)( IAssocHandler *This, IDataObject *object, IAssocHandlerInvoker **invoker); END_INTERFACE } IAssocHandlerVtbl; interface IAssocHandler { CONST_VTBL IAssocHandlerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IAssocHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IAssocHandler_AddRef(This) (This)->lpVtbl->AddRef(This) #define IAssocHandler_Release(This) (This)->lpVtbl->Release(This) /*** IAssocHandler methods ***/ #define IAssocHandler_GetName(This,name) (This)->lpVtbl->GetName(This,name) #define IAssocHandler_GetUIName(This,uiname) (This)->lpVtbl->GetUIName(This,uiname) #define IAssocHandler_GetIconLocation(This,path,index) (This)->lpVtbl->GetIconLocation(This,path,index) #define IAssocHandler_IsRecommended(This) (This)->lpVtbl->IsRecommended(This) #define IAssocHandler_MakeDefault(This,description) (This)->lpVtbl->MakeDefault(This,description) #define IAssocHandler_Invoke(This,object) (This)->lpVtbl->Invoke(This,object) #define IAssocHandler_CreateInvoker(This,object,invoker) (This)->lpVtbl->CreateInvoker(This,object,invoker) #else /*** IUnknown methods ***/ static inline HRESULT IAssocHandler_QueryInterface(IAssocHandler* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IAssocHandler_AddRef(IAssocHandler* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IAssocHandler_Release(IAssocHandler* This) { return This->lpVtbl->Release(This); } /*** IAssocHandler methods ***/ static inline HRESULT IAssocHandler_GetName(IAssocHandler* This,LPWSTR *name) { return This->lpVtbl->GetName(This,name); } static inline HRESULT IAssocHandler_GetUIName(IAssocHandler* This,LPWSTR *uiname) { return This->lpVtbl->GetUIName(This,uiname); } static inline HRESULT IAssocHandler_GetIconLocation(IAssocHandler* This,LPWSTR *path,int *index) { return This->lpVtbl->GetIconLocation(This,path,index); } static inline HRESULT IAssocHandler_IsRecommended(IAssocHandler* This) { return This->lpVtbl->IsRecommended(This); } static inline HRESULT IAssocHandler_MakeDefault(IAssocHandler* This,LPCWSTR description) { return This->lpVtbl->MakeDefault(This,description); } static inline HRESULT IAssocHandler_Invoke(IAssocHandler* This,IDataObject *object) { return This->lpVtbl->Invoke(This,object); } static inline HRESULT IAssocHandler_CreateInvoker(IAssocHandler* This,IDataObject *object,IAssocHandlerInvoker **invoker) { return This->lpVtbl->CreateInvoker(This,object,invoker); } #endif #endif #endif #endif /* __IAssocHandler_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumAssocHandlers interface */ #ifndef __IEnumAssocHandlers_INTERFACE_DEFINED__ #define __IEnumAssocHandlers_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumAssocHandlers, 0x973810ae, 0x9599, 0x4b88, 0x9e,0x4d, 0x6e,0xe9,0x8c,0x95,0x52,0xda); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("973810ae-9599-4b88-9e4d-6ee98c9552da") IEnumAssocHandlers : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG count, IAssocHandler **handlers, ULONG *fetched) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumAssocHandlers, 0x973810ae, 0x9599, 0x4b88, 0x9e,0x4d, 0x6e,0xe9,0x8c,0x95,0x52,0xda) #endif #else typedef struct IEnumAssocHandlersVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumAssocHandlers *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumAssocHandlers *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumAssocHandlers *This); /*** IEnumAssocHandlers methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumAssocHandlers *This, ULONG count, IAssocHandler **handlers, ULONG *fetched); END_INTERFACE } IEnumAssocHandlersVtbl; interface IEnumAssocHandlers { CONST_VTBL IEnumAssocHandlersVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumAssocHandlers_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumAssocHandlers_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumAssocHandlers_Release(This) (This)->lpVtbl->Release(This) /*** IEnumAssocHandlers methods ***/ #define IEnumAssocHandlers_Next(This,count,handlers,fetched) (This)->lpVtbl->Next(This,count,handlers,fetched) #else /*** IUnknown methods ***/ static inline HRESULT IEnumAssocHandlers_QueryInterface(IEnumAssocHandlers* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IEnumAssocHandlers_AddRef(IEnumAssocHandlers* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IEnumAssocHandlers_Release(IEnumAssocHandlers* This) { return This->lpVtbl->Release(This); } /*** IEnumAssocHandlers methods ***/ static inline HRESULT IEnumAssocHandlers_Next(IEnumAssocHandlers* This,ULONG count,IAssocHandler **handlers,ULONG *fetched) { return This->lpVtbl->Next(This,count,handlers,fetched); } #endif #endif #endif #endif /* __IEnumAssocHandlers_INTERFACE_DEFINED__ */ typedef enum ASSOC_FILTER { ASSOC_FILTER_NONE = 0, ASSOC_FILTER_RECOMMENDED = 1 } ASSOC_FILTER; WINSHELLAPI HRESULT WINAPI SHAssocEnumHandlers(PCWSTR extra, ASSOC_FILTER filter, IEnumAssocHandlers **handlersenum); /***************************************************************************** * IItemNameLimits interface */ #ifndef __IItemNameLimits_INTERFACE_DEFINED__ #define __IItemNameLimits_INTERFACE_DEFINED__ DEFINE_GUID(IID_IItemNameLimits, 0x1df0d7f1, 0xb267, 0x4d28, 0x8b,0x10, 0x12,0xe2,0x32,0x02,0xa5,0xc4); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1df0d7f1-b267-4d28-8b10-12e23202a5c4") IItemNameLimits : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetValidCharacters( LPWSTR *validchars, LPWSTR *invalidchars) = 0; virtual HRESULT STDMETHODCALLTYPE GetMaxLength( LPCWSTR name, int *max_length) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IItemNameLimits, 0x1df0d7f1, 0xb267, 0x4d28, 0x8b,0x10, 0x12,0xe2,0x32,0x02,0xa5,0xc4) #endif #else typedef struct IItemNameLimitsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IItemNameLimits *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IItemNameLimits *This); ULONG (STDMETHODCALLTYPE *Release)( IItemNameLimits *This); /*** IItemNameLimits methods ***/ HRESULT (STDMETHODCALLTYPE *GetValidCharacters)( IItemNameLimits *This, LPWSTR *validchars, LPWSTR *invalidchars); HRESULT (STDMETHODCALLTYPE *GetMaxLength)( IItemNameLimits *This, LPCWSTR name, int *max_length); END_INTERFACE } IItemNameLimitsVtbl; interface IItemNameLimits { CONST_VTBL IItemNameLimitsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IItemNameLimits_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IItemNameLimits_AddRef(This) (This)->lpVtbl->AddRef(This) #define IItemNameLimits_Release(This) (This)->lpVtbl->Release(This) /*** IItemNameLimits methods ***/ #define IItemNameLimits_GetValidCharacters(This,validchars,invalidchars) (This)->lpVtbl->GetValidCharacters(This,validchars,invalidchars) #define IItemNameLimits_GetMaxLength(This,name,max_length) (This)->lpVtbl->GetMaxLength(This,name,max_length) #else /*** IUnknown methods ***/ static inline HRESULT IItemNameLimits_QueryInterface(IItemNameLimits* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IItemNameLimits_AddRef(IItemNameLimits* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IItemNameLimits_Release(IItemNameLimits* This) { return This->lpVtbl->Release(This); } /*** IItemNameLimits methods ***/ static inline HRESULT IItemNameLimits_GetValidCharacters(IItemNameLimits* This,LPWSTR *validchars,LPWSTR *invalidchars) { return This->lpVtbl->GetValidCharacters(This,validchars,invalidchars); } static inline HRESULT IItemNameLimits_GetMaxLength(IItemNameLimits* This,LPCWSTR name,int *max_length) { return This->lpVtbl->GetMaxLength(This,name,max_length); } #endif #endif #endif #endif /* __IItemNameLimits_INTERFACE_DEFINED__ */ typedef enum ACTIVATEOPTIONS { AO_NONE = 0x0, AO_DESIGNMODE = 0x1, AO_NOERRORUI = 0x2, AO_NOSPLASHSCREEN = 0x4, AO_PRELAUNCH = 0x2000000 } ACTIVATEOPTIONS; /***************************************************************************** * IApplicationActivationManager interface */ #ifndef __IApplicationActivationManager_INTERFACE_DEFINED__ #define __IApplicationActivationManager_INTERFACE_DEFINED__ DEFINE_GUID(IID_IApplicationActivationManager, 0x2e941141, 0x7f97, 0x4756, 0xba,0x1d, 0x9d,0xec,0xde,0x89,0x4a,0x3d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2e941141-7f97-4756-ba1d-9decde894a3d") IApplicationActivationManager : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ActivateApplication( LPCWSTR appusermodelid, LPCWSTR arguments, ACTIVATEOPTIONS options, DWORD *processid) = 0; virtual HRESULT STDMETHODCALLTYPE ActivateForFile( LPCWSTR appusermodelid, IShellItemArray *itemarray, LPCWSTR verb, DWORD *processid) = 0; virtual HRESULT STDMETHODCALLTYPE ActivateForProtocol( LPCWSTR appusermodelid, IShellItemArray *itemarray, DWORD *processid) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IApplicationActivationManager, 0x2e941141, 0x7f97, 0x4756, 0xba,0x1d, 0x9d,0xec,0xde,0x89,0x4a,0x3d) #endif #else typedef struct IApplicationActivationManagerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IApplicationActivationManager *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IApplicationActivationManager *This); ULONG (STDMETHODCALLTYPE *Release)( IApplicationActivationManager *This); /*** IApplicationActivationManager methods ***/ HRESULT (STDMETHODCALLTYPE *ActivateApplication)( IApplicationActivationManager *This, LPCWSTR appusermodelid, LPCWSTR arguments, ACTIVATEOPTIONS options, DWORD *processid); HRESULT (STDMETHODCALLTYPE *ActivateForFile)( IApplicationActivationManager *This, LPCWSTR appusermodelid, IShellItemArray *itemarray, LPCWSTR verb, DWORD *processid); HRESULT (STDMETHODCALLTYPE *ActivateForProtocol)( IApplicationActivationManager *This, LPCWSTR appusermodelid, IShellItemArray *itemarray, DWORD *processid); END_INTERFACE } IApplicationActivationManagerVtbl; interface IApplicationActivationManager { CONST_VTBL IApplicationActivationManagerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IApplicationActivationManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IApplicationActivationManager_AddRef(This) (This)->lpVtbl->AddRef(This) #define IApplicationActivationManager_Release(This) (This)->lpVtbl->Release(This) /*** IApplicationActivationManager methods ***/ #define IApplicationActivationManager_ActivateApplication(This,appusermodelid,arguments,options,processid) (This)->lpVtbl->ActivateApplication(This,appusermodelid,arguments,options,processid) #define IApplicationActivationManager_ActivateForFile(This,appusermodelid,itemarray,verb,processid) (This)->lpVtbl->ActivateForFile(This,appusermodelid,itemarray,verb,processid) #define IApplicationActivationManager_ActivateForProtocol(This,appusermodelid,itemarray,processid) (This)->lpVtbl->ActivateForProtocol(This,appusermodelid,itemarray,processid) #else /*** IUnknown methods ***/ static inline HRESULT IApplicationActivationManager_QueryInterface(IApplicationActivationManager* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IApplicationActivationManager_AddRef(IApplicationActivationManager* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IApplicationActivationManager_Release(IApplicationActivationManager* This) { return This->lpVtbl->Release(This); } /*** IApplicationActivationManager methods ***/ static inline HRESULT IApplicationActivationManager_ActivateApplication(IApplicationActivationManager* This,LPCWSTR appusermodelid,LPCWSTR arguments,ACTIVATEOPTIONS options,DWORD *processid) { return This->lpVtbl->ActivateApplication(This,appusermodelid,arguments,options,processid); } static inline HRESULT IApplicationActivationManager_ActivateForFile(IApplicationActivationManager* This,LPCWSTR appusermodelid,IShellItemArray *itemarray,LPCWSTR verb,DWORD *processid) { return This->lpVtbl->ActivateForFile(This,appusermodelid,itemarray,verb,processid); } static inline HRESULT IApplicationActivationManager_ActivateForProtocol(IApplicationActivationManager* This,LPCWSTR appusermodelid,IShellItemArray *itemarray,DWORD *processid) { return This->lpVtbl->ActivateForProtocol(This,appusermodelid,itemarray,processid); } #endif #endif #endif #endif /* __IApplicationActivationManager_INTERFACE_DEFINED__ */ /***************************************************************************** * IPreviewHandler interface */ #ifndef __IPreviewHandler_INTERFACE_DEFINED__ #define __IPreviewHandler_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPreviewHandler, 0x8895b1c6, 0xb41f, 0x4c1c, 0xa5,0x62, 0x0d,0x56,0x42,0x50,0x83,0x6f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8895b1c6-b41f-4c1c-a562-0d564250836f") IPreviewHandler : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetWindow( HWND hwnd, const RECT *rect) = 0; virtual HRESULT STDMETHODCALLTYPE SetRect( const RECT *rect) = 0; virtual HRESULT STDMETHODCALLTYPE DoPreview( ) = 0; virtual HRESULT STDMETHODCALLTYPE Unload( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetFocus( ) = 0; virtual HRESULT STDMETHODCALLTYPE QueryFocus( HWND *hwnd) = 0; virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator( MSG *msg) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPreviewHandler, 0x8895b1c6, 0xb41f, 0x4c1c, 0xa5,0x62, 0x0d,0x56,0x42,0x50,0x83,0x6f) #endif #else typedef struct IPreviewHandlerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPreviewHandler *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPreviewHandler *This); ULONG (STDMETHODCALLTYPE *Release)( IPreviewHandler *This); /*** IPreviewHandler methods ***/ HRESULT (STDMETHODCALLTYPE *SetWindow)( IPreviewHandler *This, HWND hwnd, const RECT *rect); HRESULT (STDMETHODCALLTYPE *SetRect)( IPreviewHandler *This, const RECT *rect); HRESULT (STDMETHODCALLTYPE *DoPreview)( IPreviewHandler *This); HRESULT (STDMETHODCALLTYPE *Unload)( IPreviewHandler *This); HRESULT (STDMETHODCALLTYPE *SetFocus)( IPreviewHandler *This); HRESULT (STDMETHODCALLTYPE *QueryFocus)( IPreviewHandler *This, HWND *hwnd); HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( IPreviewHandler *This, MSG *msg); END_INTERFACE } IPreviewHandlerVtbl; interface IPreviewHandler { CONST_VTBL IPreviewHandlerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPreviewHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPreviewHandler_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPreviewHandler_Release(This) (This)->lpVtbl->Release(This) /*** IPreviewHandler methods ***/ #define IPreviewHandler_SetWindow(This,hwnd,rect) (This)->lpVtbl->SetWindow(This,hwnd,rect) #define IPreviewHandler_SetRect(This,rect) (This)->lpVtbl->SetRect(This,rect) #define IPreviewHandler_DoPreview(This) (This)->lpVtbl->DoPreview(This) #define IPreviewHandler_Unload(This) (This)->lpVtbl->Unload(This) #define IPreviewHandler_SetFocus(This) (This)->lpVtbl->SetFocus(This) #define IPreviewHandler_QueryFocus(This,hwnd) (This)->lpVtbl->QueryFocus(This,hwnd) #define IPreviewHandler_TranslateAccelerator(This,msg) (This)->lpVtbl->TranslateAccelerator(This,msg) #else /*** IUnknown methods ***/ static inline HRESULT IPreviewHandler_QueryInterface(IPreviewHandler* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IPreviewHandler_AddRef(IPreviewHandler* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IPreviewHandler_Release(IPreviewHandler* This) { return This->lpVtbl->Release(This); } /*** IPreviewHandler methods ***/ static inline HRESULT IPreviewHandler_SetWindow(IPreviewHandler* This,HWND hwnd,const RECT *rect) { return This->lpVtbl->SetWindow(This,hwnd,rect); } static inline HRESULT IPreviewHandler_SetRect(IPreviewHandler* This,const RECT *rect) { return This->lpVtbl->SetRect(This,rect); } static inline HRESULT IPreviewHandler_DoPreview(IPreviewHandler* This) { return This->lpVtbl->DoPreview(This); } static inline HRESULT IPreviewHandler_Unload(IPreviewHandler* This) { return This->lpVtbl->Unload(This); } static inline HRESULT IPreviewHandler_SetFocus(IPreviewHandler* This) { return This->lpVtbl->SetFocus(This); } static inline HRESULT IPreviewHandler_QueryFocus(IPreviewHandler* This,HWND *hwnd) { return This->lpVtbl->QueryFocus(This,hwnd); } static inline HRESULT IPreviewHandler_TranslateAccelerator(IPreviewHandler* This,MSG *msg) { return This->lpVtbl->TranslateAccelerator(This,msg); } #endif #endif #endif #endif /* __IPreviewHandler_INTERFACE_DEFINED__ */ /***************************************************************************** * IPreviewHandlerFrame interface */ #ifndef __IPreviewHandlerFrame_INTERFACE_DEFINED__ #define __IPreviewHandlerFrame_INTERFACE_DEFINED__ typedef struct PREVIEWHANDLERFRAMEINFO { HACCEL haccel; UINT cAccelEntries; } PREVIEWHANDLERFRAMEINFO; DEFINE_GUID(IID_IPreviewHandlerFrame, 0xfec87aaf, 0x35f9, 0x447a, 0xad,0xb7, 0x20,0x23,0x44,0x91,0x40,0x1a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("fec87aaf-35f9-447a-adb7-20234491401a") IPreviewHandlerFrame : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetWindowContext( PREVIEWHANDLERFRAMEINFO *info) = 0; virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator( MSG *msg) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPreviewHandlerFrame, 0xfec87aaf, 0x35f9, 0x447a, 0xad,0xb7, 0x20,0x23,0x44,0x91,0x40,0x1a) #endif #else typedef struct IPreviewHandlerFrameVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPreviewHandlerFrame *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPreviewHandlerFrame *This); ULONG (STDMETHODCALLTYPE *Release)( IPreviewHandlerFrame *This); /*** IPreviewHandlerFrame methods ***/ HRESULT (STDMETHODCALLTYPE *GetWindowContext)( IPreviewHandlerFrame *This, PREVIEWHANDLERFRAMEINFO *info); HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( IPreviewHandlerFrame *This, MSG *msg); END_INTERFACE } IPreviewHandlerFrameVtbl; interface IPreviewHandlerFrame { CONST_VTBL IPreviewHandlerFrameVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPreviewHandlerFrame_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPreviewHandlerFrame_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPreviewHandlerFrame_Release(This) (This)->lpVtbl->Release(This) /*** IPreviewHandlerFrame methods ***/ #define IPreviewHandlerFrame_GetWindowContext(This,info) (This)->lpVtbl->GetWindowContext(This,info) #define IPreviewHandlerFrame_TranslateAccelerator(This,msg) (This)->lpVtbl->TranslateAccelerator(This,msg) #else /*** IUnknown methods ***/ static inline HRESULT IPreviewHandlerFrame_QueryInterface(IPreviewHandlerFrame* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IPreviewHandlerFrame_AddRef(IPreviewHandlerFrame* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IPreviewHandlerFrame_Release(IPreviewHandlerFrame* This) { return This->lpVtbl->Release(This); } /*** IPreviewHandlerFrame methods ***/ static inline HRESULT IPreviewHandlerFrame_GetWindowContext(IPreviewHandlerFrame* This,PREVIEWHANDLERFRAMEINFO *info) { return This->lpVtbl->GetWindowContext(This,info); } static inline HRESULT IPreviewHandlerFrame_TranslateAccelerator(IPreviewHandlerFrame* This,MSG *msg) { return This->lpVtbl->TranslateAccelerator(This,msg); } #endif #endif #endif #endif /* __IPreviewHandlerFrame_INTERFACE_DEFINED__ */ /***************************************************************************** * IPreviewHandlerVisuals interface */ #ifndef __IPreviewHandlerVisuals_INTERFACE_DEFINED__ #define __IPreviewHandlerVisuals_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPreviewHandlerVisuals, 0x196bf9a5, 0xb346, 0x4ef0, 0xaa,0x1e, 0x5d,0xcd,0xb7,0x67,0x68,0xb1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("196bf9a5-b346-4ef0-aa1e-5dcdb76768b1") IPreviewHandlerVisuals : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetBackgroundColor( COLORREF color) = 0; virtual HRESULT STDMETHODCALLTYPE SetFont( const LOGFONTW *logfont) = 0; virtual HRESULT STDMETHODCALLTYPE SetTextColor( COLORREF color) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPreviewHandlerVisuals, 0x196bf9a5, 0xb346, 0x4ef0, 0xaa,0x1e, 0x5d,0xcd,0xb7,0x67,0x68,0xb1) #endif #else typedef struct IPreviewHandlerVisualsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPreviewHandlerVisuals *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPreviewHandlerVisuals *This); ULONG (STDMETHODCALLTYPE *Release)( IPreviewHandlerVisuals *This); /*** IPreviewHandlerVisuals methods ***/ HRESULT (STDMETHODCALLTYPE *SetBackgroundColor)( IPreviewHandlerVisuals *This, COLORREF color); HRESULT (STDMETHODCALLTYPE *SetFont)( IPreviewHandlerVisuals *This, const LOGFONTW *logfont); HRESULT (STDMETHODCALLTYPE *SetTextColor)( IPreviewHandlerVisuals *This, COLORREF color); END_INTERFACE } IPreviewHandlerVisualsVtbl; interface IPreviewHandlerVisuals { CONST_VTBL IPreviewHandlerVisualsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPreviewHandlerVisuals_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPreviewHandlerVisuals_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPreviewHandlerVisuals_Release(This) (This)->lpVtbl->Release(This) /*** IPreviewHandlerVisuals methods ***/ #define IPreviewHandlerVisuals_SetBackgroundColor(This,color) (This)->lpVtbl->SetBackgroundColor(This,color) #define IPreviewHandlerVisuals_SetFont(This,logfont) (This)->lpVtbl->SetFont(This,logfont) #define IPreviewHandlerVisuals_SetTextColor(This,color) (This)->lpVtbl->SetTextColor(This,color) #else /*** IUnknown methods ***/ static inline HRESULT IPreviewHandlerVisuals_QueryInterface(IPreviewHandlerVisuals* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IPreviewHandlerVisuals_AddRef(IPreviewHandlerVisuals* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IPreviewHandlerVisuals_Release(IPreviewHandlerVisuals* This) { return This->lpVtbl->Release(This); } /*** IPreviewHandlerVisuals methods ***/ static inline HRESULT IPreviewHandlerVisuals_SetBackgroundColor(IPreviewHandlerVisuals* This,COLORREF color) { return This->lpVtbl->SetBackgroundColor(This,color); } static inline HRESULT IPreviewHandlerVisuals_SetFont(IPreviewHandlerVisuals* This,const LOGFONTW *logfont) { return This->lpVtbl->SetFont(This,logfont); } static inline HRESULT IPreviewHandlerVisuals_SetTextColor(IPreviewHandlerVisuals* This,COLORREF color) { return This->lpVtbl->SetTextColor(This,color); } #endif #endif #endif #endif /* __IPreviewHandlerVisuals_INTERFACE_DEFINED__ */ #ifndef __ShellObjects_LIBRARY_DEFINED__ #define __ShellObjects_LIBRARY_DEFINED__ DEFINE_GUID(LIBID_ShellObjects, 0x50a7e9b1, 0x70ef, 0x11d1, 0xb7,0x5a, 0x00,0xa0,0xc9,0x05,0x64,0xfe); /***************************************************************************** * ExplorerBrowser coclass */ DEFINE_GUID(CLSID_ExplorerBrowser, 0x71f96385, 0xddd6, 0x48d3, 0xa0,0xc1, 0xae,0x06,0xe8,0xb0,0x55,0xfb); #ifdef __cplusplus class DECLSPEC_UUID("71f96385-ddd6-48d3-a0c1-ae06e8b055fb") ExplorerBrowser; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ExplorerBrowser, 0x71f96385, 0xddd6, 0x48d3, 0xa0,0xc1, 0xae,0x06,0xe8,0xb0,0x55,0xfb) #endif #endif /***************************************************************************** * FileOpenDialog coclass */ DEFINE_GUID(CLSID_FileOpenDialog, 0xdc1c5a9c, 0xe88a, 0x4dde, 0xa5,0xa1, 0x60,0xf8,0x2a,0x20,0xae,0xf7); #ifdef __cplusplus class DECLSPEC_UUID("dc1c5a9c-e88a-4dde-a5a1-60f82a20aef7") FileOpenDialog; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(FileOpenDialog, 0xdc1c5a9c, 0xe88a, 0x4dde, 0xa5,0xa1, 0x60,0xf8,0x2a,0x20,0xae,0xf7) #endif #endif /***************************************************************************** * FileSaveDialog coclass */ DEFINE_GUID(CLSID_FileSaveDialog, 0xc0b4e2f3, 0xba21, 0x4773, 0x8d,0xba, 0x33,0x5e,0xc9,0x46,0xeb,0x8b); #ifdef __cplusplus class DECLSPEC_UUID("c0b4e2f3-ba21-4773-8dba-335ec946eb8b") FileSaveDialog; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(FileSaveDialog, 0xc0b4e2f3, 0xba21, 0x4773, 0x8d,0xba, 0x33,0x5e,0xc9,0x46,0xeb,0x8b) #endif #endif /***************************************************************************** * NamespaceTreeControl coclass */ DEFINE_GUID(CLSID_NamespaceTreeControl, 0xae054212, 0x3535, 0x4430, 0x83,0xed, 0xd5,0x01,0xaa,0x66,0x80,0xe6); #ifdef __cplusplus class DECLSPEC_UUID("ae054212-3535-4430-83ed-d501aa6680e6") NamespaceTreeControl; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(NamespaceTreeControl, 0xae054212, 0x3535, 0x4430, 0x83,0xed, 0xd5,0x01,0xaa,0x66,0x80,0xe6) #endif #endif /***************************************************************************** * KnownFolderManager coclass */ DEFINE_GUID(CLSID_KnownFolderManager, 0x4df0c730, 0xdf9d, 0x4ae3, 0x91,0x53, 0xaa,0x6b,0x82,0xe9,0x79,0x5a); #ifdef __cplusplus class DECLSPEC_UUID("4df0c730-df9d-4ae3-9153-aa6b82e9795a") KnownFolderManager; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(KnownFolderManager, 0x4df0c730, 0xdf9d, 0x4ae3, 0x91,0x53, 0xaa,0x6b,0x82,0xe9,0x79,0x5a) #endif #endif /***************************************************************************** * ApplicationAssociationRegistration coclass */ DEFINE_GUID(CLSID_ApplicationAssociationRegistration, 0x591209c7, 0x767b, 0x42b2, 0x9f,0xba, 0x44,0xee,0x46,0x15,0xf2,0xc7); #ifdef __cplusplus class DECLSPEC_UUID("591209c7-767b-42b2-9fba-44ee4615f2c7") ApplicationAssociationRegistration; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ApplicationAssociationRegistration, 0x591209c7, 0x767b, 0x42b2, 0x9f,0xba, 0x44,0xee,0x46,0x15,0xf2,0xc7) #endif #endif /***************************************************************************** * ApplicationDestinations coclass */ DEFINE_GUID(CLSID_ApplicationDestinations, 0x86c14003, 0x4d6b, 0x4ef3, 0xa7,0xb4, 0x05,0x06,0x66,0x3b,0x2e,0x68); #ifdef __cplusplus class DECLSPEC_UUID("86c14003-4d6b-4ef3-a7b4-0506663b2e68") ApplicationDestinations; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ApplicationDestinations, 0x86c14003, 0x4d6b, 0x4ef3, 0xa7,0xb4, 0x05,0x06,0x66,0x3b,0x2e,0x68) #endif #endif /***************************************************************************** * ApplicationDocumentLists coclass */ DEFINE_GUID(CLSID_ApplicationDocumentLists, 0x86bec222, 0x30f2, 0x47e0, 0x9f,0x25, 0x60,0xd1,0x1c,0xd7,0x5c,0x28); #ifdef __cplusplus class DECLSPEC_UUID("86bec222-30f2-47e0-9f25-60d11cd75c28") ApplicationDocumentLists; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ApplicationDocumentLists, 0x86bec222, 0x30f2, 0x47e0, 0x9f,0x25, 0x60,0xd1,0x1c,0xd7,0x5c,0x28) #endif #endif /***************************************************************************** * ShellLink coclass */ DEFINE_GUID(CLSID_ShellLink, 0x00021401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #ifdef __cplusplus class DECLSPEC_UUID("00021401-0000-0000-c000-000000000046") ShellLink; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ShellLink, 0x00021401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #endif /***************************************************************************** * TaskbarList coclass */ DEFINE_GUID(CLSID_TaskbarList, 0x56fdf344, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90); #ifdef __cplusplus class DECLSPEC_UUID("56fdf344-fd6d-11d0-958a-006097c9a090") TaskbarList; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(TaskbarList, 0x56fdf344, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90) #endif #endif /***************************************************************************** * DestinationList coclass */ DEFINE_GUID(CLSID_DestinationList, 0x77f10cf0, 0x3db5, 0x4966, 0xb5,0x20, 0xb7,0xc5,0x4f,0xd3,0x5e,0xd6); #ifdef __cplusplus class DECLSPEC_UUID("77f10cf0-3db5-4966-b520-b7c54fd35ed6") DestinationList; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(DestinationList, 0x77f10cf0, 0x3db5, 0x4966, 0xb5,0x20, 0xb7,0xc5,0x4f,0xd3,0x5e,0xd6) #endif #endif /***************************************************************************** * EnumerableObjectCollection coclass */ DEFINE_GUID(CLSID_EnumerableObjectCollection, 0x2d3468c1, 0x36a7, 0x43b6, 0xac,0x24, 0xd3,0xf0,0x2f,0xd9,0x60,0x7a); #ifdef __cplusplus class DECLSPEC_UUID("2d3468c1-36a7-43b6-ac24-d3f02fd9607a") EnumerableObjectCollection; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(EnumerableObjectCollection, 0x2d3468c1, 0x36a7, 0x43b6, 0xac,0x24, 0xd3,0xf0,0x2f,0xd9,0x60,0x7a) #endif #endif /***************************************************************************** * QueryCancelAutoPlay coclass */ DEFINE_GUID(CLSID_QueryCancelAutoPlay, 0x331f1768, 0x05a9, 0x4ddd, 0xb8,0x6e, 0xda,0xe3,0x4d,0xdc,0x99,0x8a); #ifdef __cplusplus class DECLSPEC_UUID("331f1768-05a9-4ddd-b86e-dae34ddc998a") QueryCancelAutoPlay; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(QueryCancelAutoPlay, 0x331f1768, 0x05a9, 0x4ddd, 0xb8,0x6e, 0xda,0xe3,0x4d,0xdc,0x99,0x8a) #endif #endif /***************************************************************************** * ApplicationActivationManager coclass */ DEFINE_GUID(CLSID_ApplicationActivationManager, 0x45ba127d, 0x10a8, 0x46ea, 0x8a,0xb7, 0x56,0xea,0x90,0x78,0x94,0x3c); #ifdef __cplusplus class DECLSPEC_UUID("45ba127d-10a8-46ea-8ab7-56ea9078943c") ApplicationActivationManager; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ApplicationActivationManager, 0x45ba127d, 0x10a8, 0x46ea, 0x8a,0xb7, 0x56,0xea,0x90,0x78,0x94,0x3c) #endif #endif /***************************************************************************** * FileOperation coclass */ DEFINE_GUID(CLSID_FileOperation, 0x3ad05575, 0x8857, 0x4850, 0x92,0x77, 0x11,0xb8,0x5b,0xdb,0x8e,0x09); #ifdef __cplusplus class DECLSPEC_UUID("3ad05575-8857-4850-9277-11b85bdb8e09") FileOperation; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(FileOperation, 0x3ad05575, 0x8857, 0x4850, 0x92,0x77, 0x11,0xb8,0x5b,0xdb,0x8e,0x09) #endif #endif #endif /* __ShellObjects_LIBRARY_DEFINED__ */ enum _OPPROGDLGF { OPPROGDLG_DEFAULT = 0x0, OPPROGDLG_ENABLEPAUSE = 0x80, OPPROGDLG_ALLOWUNDO = 0x100, OPPROGDLG_DONTDISPLAYSOURCEPATH = 0x200, OPPROGDLG_DONTDISPLAYDESTPATH = 0x400, OPPROGDLG_NOMULTIDAYESTIMATES = 0x800, OPPROGDLG_DONTDISPLAYLOCATIONS = 0x1000 }; typedef DWORD OPPROGDLGF; typedef enum _SPACTION { SPACTION_NONE = 0, SPACTION_MOVING = 1, SPACTION_COPYING = 2, SPACTION_RECYCLING = 3, SPACTION_APPLYINGATTRIBS = 4, SPACTION_DOWNLOADING = 5, SPACTION_SEARCHING_INTERNET = 6, SPACTION_CALCULATING = 7, SPACTION_UPLOADING = 8, SPACTION_SEARCHING_FILES = 9, SPACTION_DELETING = 10, SPACTION_RENAMING = 11, SPACTION_FORMATTING = 12, SPACTION_COPY_MOVING = 13 } SPACTION; /***************************************************************************** * IOperationsProgressDialog interface */ #ifndef __IOperationsProgressDialog_INTERFACE_DEFINED__ #define __IOperationsProgressDialog_INTERFACE_DEFINED__ enum _PDMODE { PDM_DEFAULT = 0x0, PDM_RUN = 0x1, PDM_PREFLIGHT = 0x2, PDM_UNDOING = 0x4, PDM_ERRORSBLOCKING = 0x8, PDM_INDETERMINATE = 0x10 }; typedef DWORD PDMODE; typedef enum PDOPSTATUS { PDOPS_RUNNING = 1, PDOPS_PAUSED = 2, PDOPS_CANCELLED = 3, PDOPS_STOPPED = 4, PDOPS_ERRORS = 5 } PDOPSTATUS; DEFINE_GUID(IID_IOperationsProgressDialog, 0x0c9fb851, 0xe5c9, 0x43eb, 0xa3,0x70, 0xf0,0x67,0x7b,0x13,0x87,0x4c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0c9fb851-e5c9-43eb-a370-f0677b13874c") IOperationsProgressDialog : public IUnknown { virtual HRESULT STDMETHODCALLTYPE StartProgressDialog( HWND owner, OPPROGDLGF flags) = 0; virtual HRESULT STDMETHODCALLTYPE StopProgressDialog( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetOperation( SPACTION action) = 0; virtual HRESULT STDMETHODCALLTYPE SetMode( PDMODE mode) = 0; virtual HRESULT STDMETHODCALLTYPE UpdateProgress( ULONGLONG current_points, ULONGLONG total_points, ULONGLONG current_size, ULONGLONG total_size, ULONGLONG current_item, ULONGLONG total_item) = 0; virtual HRESULT STDMETHODCALLTYPE UpdateLocations( IShellItem *source, IShellItem *target, IShellItem *item) = 0; virtual HRESULT STDMETHODCALLTYPE ResetTimer( ) = 0; virtual HRESULT STDMETHODCALLTYPE PauseTimer( ) = 0; virtual HRESULT STDMETHODCALLTYPE ResumeTimer( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetMilliseconds( ULONGLONG *elapsed, ULONGLONG *remaining) = 0; virtual HRESULT STDMETHODCALLTYPE GetOperationStatus( PDOPSTATUS *status) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IOperationsProgressDialog, 0x0c9fb851, 0xe5c9, 0x43eb, 0xa3,0x70, 0xf0,0x67,0x7b,0x13,0x87,0x4c) #endif #else typedef struct IOperationsProgressDialogVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IOperationsProgressDialog *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IOperationsProgressDialog *This); ULONG (STDMETHODCALLTYPE *Release)( IOperationsProgressDialog *This); /*** IOperationsProgressDialog methods ***/ HRESULT (STDMETHODCALLTYPE *StartProgressDialog)( IOperationsProgressDialog *This, HWND owner, OPPROGDLGF flags); HRESULT (STDMETHODCALLTYPE *StopProgressDialog)( IOperationsProgressDialog *This); HRESULT (STDMETHODCALLTYPE *SetOperation)( IOperationsProgressDialog *This, SPACTION action); HRESULT (STDMETHODCALLTYPE *SetMode)( IOperationsProgressDialog *This, PDMODE mode); HRESULT (STDMETHODCALLTYPE *UpdateProgress)( IOperationsProgressDialog *This, ULONGLONG current_points, ULONGLONG total_points, ULONGLONG current_size, ULONGLONG total_size, ULONGLONG current_item, ULONGLONG total_item); HRESULT (STDMETHODCALLTYPE *UpdateLocations)( IOperationsProgressDialog *This, IShellItem *source, IShellItem *target, IShellItem *item); HRESULT (STDMETHODCALLTYPE *ResetTimer)( IOperationsProgressDialog *This); HRESULT (STDMETHODCALLTYPE *PauseTimer)( IOperationsProgressDialog *This); HRESULT (STDMETHODCALLTYPE *ResumeTimer)( IOperationsProgressDialog *This); HRESULT (STDMETHODCALLTYPE *GetMilliseconds)( IOperationsProgressDialog *This, ULONGLONG *elapsed, ULONGLONG *remaining); HRESULT (STDMETHODCALLTYPE *GetOperationStatus)( IOperationsProgressDialog *This, PDOPSTATUS *status); END_INTERFACE } IOperationsProgressDialogVtbl; interface IOperationsProgressDialog { CONST_VTBL IOperationsProgressDialogVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IOperationsProgressDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IOperationsProgressDialog_AddRef(This) (This)->lpVtbl->AddRef(This) #define IOperationsProgressDialog_Release(This) (This)->lpVtbl->Release(This) /*** IOperationsProgressDialog methods ***/ #define IOperationsProgressDialog_StartProgressDialog(This,owner,flags) (This)->lpVtbl->StartProgressDialog(This,owner,flags) #define IOperationsProgressDialog_StopProgressDialog(This) (This)->lpVtbl->StopProgressDialog(This) #define IOperationsProgressDialog_SetOperation(This,action) (This)->lpVtbl->SetOperation(This,action) #define IOperationsProgressDialog_SetMode(This,mode) (This)->lpVtbl->SetMode(This,mode) #define IOperationsProgressDialog_UpdateProgress(This,current_points,total_points,current_size,total_size,current_item,total_item) (This)->lpVtbl->UpdateProgress(This,current_points,total_points,current_size,total_size,current_item,total_item) #define IOperationsProgressDialog_UpdateLocations(This,source,target,item) (This)->lpVtbl->UpdateLocations(This,source,target,item) #define IOperationsProgressDialog_ResetTimer(This) (This)->lpVtbl->ResetTimer(This) #define IOperationsProgressDialog_PauseTimer(This) (This)->lpVtbl->PauseTimer(This) #define IOperationsProgressDialog_ResumeTimer(This) (This)->lpVtbl->ResumeTimer(This) #define IOperationsProgressDialog_GetMilliseconds(This,elapsed,remaining) (This)->lpVtbl->GetMilliseconds(This,elapsed,remaining) #define IOperationsProgressDialog_GetOperationStatus(This,status) (This)->lpVtbl->GetOperationStatus(This,status) #else /*** IUnknown methods ***/ static inline HRESULT IOperationsProgressDialog_QueryInterface(IOperationsProgressDialog* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IOperationsProgressDialog_AddRef(IOperationsProgressDialog* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IOperationsProgressDialog_Release(IOperationsProgressDialog* This) { return This->lpVtbl->Release(This); } /*** IOperationsProgressDialog methods ***/ static inline HRESULT IOperationsProgressDialog_StartProgressDialog(IOperationsProgressDialog* This,HWND owner,OPPROGDLGF flags) { return This->lpVtbl->StartProgressDialog(This,owner,flags); } static inline HRESULT IOperationsProgressDialog_StopProgressDialog(IOperationsProgressDialog* This) { return This->lpVtbl->StopProgressDialog(This); } static inline HRESULT IOperationsProgressDialog_SetOperation(IOperationsProgressDialog* This,SPACTION action) { return This->lpVtbl->SetOperation(This,action); } static inline HRESULT IOperationsProgressDialog_SetMode(IOperationsProgressDialog* This,PDMODE mode) { return This->lpVtbl->SetMode(This,mode); } static inline HRESULT IOperationsProgressDialog_UpdateProgress(IOperationsProgressDialog* This,ULONGLONG current_points,ULONGLONG total_points,ULONGLONG current_size,ULONGLONG total_size,ULONGLONG current_item,ULONGLONG total_item) { return This->lpVtbl->UpdateProgress(This,current_points,total_points,current_size,total_size,current_item,total_item); } static inline HRESULT IOperationsProgressDialog_UpdateLocations(IOperationsProgressDialog* This,IShellItem *source,IShellItem *target,IShellItem *item) { return This->lpVtbl->UpdateLocations(This,source,target,item); } static inline HRESULT IOperationsProgressDialog_ResetTimer(IOperationsProgressDialog* This) { return This->lpVtbl->ResetTimer(This); } static inline HRESULT IOperationsProgressDialog_PauseTimer(IOperationsProgressDialog* This) { return This->lpVtbl->PauseTimer(This); } static inline HRESULT IOperationsProgressDialog_ResumeTimer(IOperationsProgressDialog* This) { return This->lpVtbl->ResumeTimer(This); } static inline HRESULT IOperationsProgressDialog_GetMilliseconds(IOperationsProgressDialog* This,ULONGLONG *elapsed,ULONGLONG *remaining) { return This->lpVtbl->GetMilliseconds(This,elapsed,remaining); } static inline HRESULT IOperationsProgressDialog_GetOperationStatus(IOperationsProgressDialog* This,PDOPSTATUS *status) { return This->lpVtbl->GetOperationStatus(This,status); } #endif #endif #endif #endif /* __IOperationsProgressDialog_INTERFACE_DEFINED__ */ /***************************************************************************** * IFileOperation interface */ #ifndef __IFileOperation_INTERFACE_DEFINED__ #define __IFileOperation_INTERFACE_DEFINED__ DEFINE_GUID(IID_IFileOperation, 0x947aab5f, 0x0a5c, 0x4c13, 0xb4,0xd6, 0x4b,0xf7,0x83,0x6f,0xc9,0xf8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("947aab5f-0a5c-4c13-b4d6-4bf7836fc9f8") IFileOperation : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Advise( IFileOperationProgressSink *sink, DWORD *cookie) = 0; virtual HRESULT STDMETHODCALLTYPE Unadvise( DWORD cookie) = 0; virtual HRESULT STDMETHODCALLTYPE SetOperationFlags( DWORD flags) = 0; virtual HRESULT STDMETHODCALLTYPE SetProgressMessage( LPCWSTR message) = 0; virtual HRESULT STDMETHODCALLTYPE SetProgressDialog( IOperationsProgressDialog *dialog) = 0; virtual HRESULT STDMETHODCALLTYPE SetProperties( IPropertyChangeArray *array) = 0; virtual HRESULT STDMETHODCALLTYPE SetOwnerWindow( HWND owner) = 0; virtual HRESULT STDMETHODCALLTYPE ApplyPropertiesToItem( IShellItem *item) = 0; virtual HRESULT STDMETHODCALLTYPE ApplyPropertiesToItems( IUnknown *items) = 0; virtual HRESULT STDMETHODCALLTYPE RenameItem( IShellItem *item, LPCWSTR name, IFileOperationProgressSink *sink) = 0; virtual HRESULT STDMETHODCALLTYPE RenameItems( IUnknown *items, LPCWSTR name) = 0; virtual HRESULT STDMETHODCALLTYPE MoveItem( IShellItem *item, IShellItem *folder, LPCWSTR name, IFileOperationProgressSink *sink) = 0; virtual HRESULT STDMETHODCALLTYPE MoveItems( IUnknown *items, IShellItem *folder) = 0; virtual HRESULT STDMETHODCALLTYPE CopyItem( IShellItem *item, IShellItem *folder, LPCWSTR name, IFileOperationProgressSink *sink) = 0; virtual HRESULT STDMETHODCALLTYPE CopyItems( IUnknown *items, IShellItem *folder) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteItem( IShellItem *item, IFileOperationProgressSink *sink) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteItems( IUnknown *items) = 0; virtual HRESULT STDMETHODCALLTYPE NewItem( IShellItem *folder, DWORD attributes, LPCWSTR name, LPCWSTR template_name, IFileOperationProgressSink *sink) = 0; virtual HRESULT STDMETHODCALLTYPE PerformOperations( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetAnyOperationsAborted( BOOL *aborted) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IFileOperation, 0x947aab5f, 0x0a5c, 0x4c13, 0xb4,0xd6, 0x4b,0xf7,0x83,0x6f,0xc9,0xf8) #endif #else typedef struct IFileOperationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IFileOperation *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IFileOperation *This); ULONG (STDMETHODCALLTYPE *Release)( IFileOperation *This); /*** IFileOperation methods ***/ HRESULT (STDMETHODCALLTYPE *Advise)( IFileOperation *This, IFileOperationProgressSink *sink, DWORD *cookie); HRESULT (STDMETHODCALLTYPE *Unadvise)( IFileOperation *This, DWORD cookie); HRESULT (STDMETHODCALLTYPE *SetOperationFlags)( IFileOperation *This, DWORD flags); HRESULT (STDMETHODCALLTYPE *SetProgressMessage)( IFileOperation *This, LPCWSTR message); HRESULT (STDMETHODCALLTYPE *SetProgressDialog)( IFileOperation *This, IOperationsProgressDialog *dialog); HRESULT (STDMETHODCALLTYPE *SetProperties)( IFileOperation *This, IPropertyChangeArray *array); HRESULT (STDMETHODCALLTYPE *SetOwnerWindow)( IFileOperation *This, HWND owner); HRESULT (STDMETHODCALLTYPE *ApplyPropertiesToItem)( IFileOperation *This, IShellItem *item); HRESULT (STDMETHODCALLTYPE *ApplyPropertiesToItems)( IFileOperation *This, IUnknown *items); HRESULT (STDMETHODCALLTYPE *RenameItem)( IFileOperation *This, IShellItem *item, LPCWSTR name, IFileOperationProgressSink *sink); HRESULT (STDMETHODCALLTYPE *RenameItems)( IFileOperation *This, IUnknown *items, LPCWSTR name); HRESULT (STDMETHODCALLTYPE *MoveItem)( IFileOperation *This, IShellItem *item, IShellItem *folder, LPCWSTR name, IFileOperationProgressSink *sink); HRESULT (STDMETHODCALLTYPE *MoveItems)( IFileOperation *This, IUnknown *items, IShellItem *folder); HRESULT (STDMETHODCALLTYPE *CopyItem)( IFileOperation *This, IShellItem *item, IShellItem *folder, LPCWSTR name, IFileOperationProgressSink *sink); HRESULT (STDMETHODCALLTYPE *CopyItems)( IFileOperation *This, IUnknown *items, IShellItem *folder); HRESULT (STDMETHODCALLTYPE *DeleteItem)( IFileOperation *This, IShellItem *item, IFileOperationProgressSink *sink); HRESULT (STDMETHODCALLTYPE *DeleteItems)( IFileOperation *This, IUnknown *items); HRESULT (STDMETHODCALLTYPE *NewItem)( IFileOperation *This, IShellItem *folder, DWORD attributes, LPCWSTR name, LPCWSTR template_name, IFileOperationProgressSink *sink); HRESULT (STDMETHODCALLTYPE *PerformOperations)( IFileOperation *This); HRESULT (STDMETHODCALLTYPE *GetAnyOperationsAborted)( IFileOperation *This, BOOL *aborted); END_INTERFACE } IFileOperationVtbl; interface IFileOperation { CONST_VTBL IFileOperationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IFileOperation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IFileOperation_AddRef(This) (This)->lpVtbl->AddRef(This) #define IFileOperation_Release(This) (This)->lpVtbl->Release(This) /*** IFileOperation methods ***/ #define IFileOperation_Advise(This,sink,cookie) (This)->lpVtbl->Advise(This,sink,cookie) #define IFileOperation_Unadvise(This,cookie) (This)->lpVtbl->Unadvise(This,cookie) #define IFileOperation_SetOperationFlags(This,flags) (This)->lpVtbl->SetOperationFlags(This,flags) #define IFileOperation_SetProgressMessage(This,message) (This)->lpVtbl->SetProgressMessage(This,message) #define IFileOperation_SetProgressDialog(This,dialog) (This)->lpVtbl->SetProgressDialog(This,dialog) #define IFileOperation_SetProperties(This,array) (This)->lpVtbl->SetProperties(This,array) #define IFileOperation_SetOwnerWindow(This,owner) (This)->lpVtbl->SetOwnerWindow(This,owner) #define IFileOperation_ApplyPropertiesToItem(This,item) (This)->lpVtbl->ApplyPropertiesToItem(This,item) #define IFileOperation_ApplyPropertiesToItems(This,items) (This)->lpVtbl->ApplyPropertiesToItems(This,items) #define IFileOperation_RenameItem(This,item,name,sink) (This)->lpVtbl->RenameItem(This,item,name,sink) #define IFileOperation_RenameItems(This,items,name) (This)->lpVtbl->RenameItems(This,items,name) #define IFileOperation_MoveItem(This,item,folder,name,sink) (This)->lpVtbl->MoveItem(This,item,folder,name,sink) #define IFileOperation_MoveItems(This,items,folder) (This)->lpVtbl->MoveItems(This,items,folder) #define IFileOperation_CopyItem(This,item,folder,name,sink) (This)->lpVtbl->CopyItem(This,item,folder,name,sink) #define IFileOperation_CopyItems(This,items,folder) (This)->lpVtbl->CopyItems(This,items,folder) #define IFileOperation_DeleteItem(This,item,sink) (This)->lpVtbl->DeleteItem(This,item,sink) #define IFileOperation_DeleteItems(This,items) (This)->lpVtbl->DeleteItems(This,items) #define IFileOperation_NewItem(This,folder,attributes,name,template_name,sink) (This)->lpVtbl->NewItem(This,folder,attributes,name,template_name,sink) #define IFileOperation_PerformOperations(This) (This)->lpVtbl->PerformOperations(This) #define IFileOperation_GetAnyOperationsAborted(This,aborted) (This)->lpVtbl->GetAnyOperationsAborted(This,aborted) #else /*** IUnknown methods ***/ static inline HRESULT IFileOperation_QueryInterface(IFileOperation* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IFileOperation_AddRef(IFileOperation* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IFileOperation_Release(IFileOperation* This) { return This->lpVtbl->Release(This); } /*** IFileOperation methods ***/ static inline HRESULT IFileOperation_Advise(IFileOperation* This,IFileOperationProgressSink *sink,DWORD *cookie) { return This->lpVtbl->Advise(This,sink,cookie); } static inline HRESULT IFileOperation_Unadvise(IFileOperation* This,DWORD cookie) { return This->lpVtbl->Unadvise(This,cookie); } static inline HRESULT IFileOperation_SetOperationFlags(IFileOperation* This,DWORD flags) { return This->lpVtbl->SetOperationFlags(This,flags); } static inline HRESULT IFileOperation_SetProgressMessage(IFileOperation* This,LPCWSTR message) { return This->lpVtbl->SetProgressMessage(This,message); } static inline HRESULT IFileOperation_SetProgressDialog(IFileOperation* This,IOperationsProgressDialog *dialog) { return This->lpVtbl->SetProgressDialog(This,dialog); } static inline HRESULT IFileOperation_SetProperties(IFileOperation* This,IPropertyChangeArray *array) { return This->lpVtbl->SetProperties(This,array); } static inline HRESULT IFileOperation_SetOwnerWindow(IFileOperation* This,HWND owner) { return This->lpVtbl->SetOwnerWindow(This,owner); } static inline HRESULT IFileOperation_ApplyPropertiesToItem(IFileOperation* This,IShellItem *item) { return This->lpVtbl->ApplyPropertiesToItem(This,item); } static inline HRESULT IFileOperation_ApplyPropertiesToItems(IFileOperation* This,IUnknown *items) { return This->lpVtbl->ApplyPropertiesToItems(This,items); } static inline HRESULT IFileOperation_RenameItem(IFileOperation* This,IShellItem *item,LPCWSTR name,IFileOperationProgressSink *sink) { return This->lpVtbl->RenameItem(This,item,name,sink); } static inline HRESULT IFileOperation_RenameItems(IFileOperation* This,IUnknown *items,LPCWSTR name) { return This->lpVtbl->RenameItems(This,items,name); } static inline HRESULT IFileOperation_MoveItem(IFileOperation* This,IShellItem *item,IShellItem *folder,LPCWSTR name,IFileOperationProgressSink *sink) { return This->lpVtbl->MoveItem(This,item,folder,name,sink); } static inline HRESULT IFileOperation_MoveItems(IFileOperation* This,IUnknown *items,IShellItem *folder) { return This->lpVtbl->MoveItems(This,items,folder); } static inline HRESULT IFileOperation_CopyItem(IFileOperation* This,IShellItem *item,IShellItem *folder,LPCWSTR name,IFileOperationProgressSink *sink) { return This->lpVtbl->CopyItem(This,item,folder,name,sink); } static inline HRESULT IFileOperation_CopyItems(IFileOperation* This,IUnknown *items,IShellItem *folder) { return This->lpVtbl->CopyItems(This,items,folder); } static inline HRESULT IFileOperation_DeleteItem(IFileOperation* This,IShellItem *item,IFileOperationProgressSink *sink) { return This->lpVtbl->DeleteItem(This,item,sink); } static inline HRESULT IFileOperation_DeleteItems(IFileOperation* This,IUnknown *items) { return This->lpVtbl->DeleteItems(This,items); } static inline HRESULT IFileOperation_NewItem(IFileOperation* This,IShellItem *folder,DWORD attributes,LPCWSTR name,LPCWSTR template_name,IFileOperationProgressSink *sink) { return This->lpVtbl->NewItem(This,folder,attributes,name,template_name,sink); } static inline HRESULT IFileOperation_PerformOperations(IFileOperation* This) { return This->lpVtbl->PerformOperations(This); } static inline HRESULT IFileOperation_GetAnyOperationsAborted(IFileOperation* This,BOOL *aborted) { return This->lpVtbl->GetAnyOperationsAborted(This,aborted); } #endif #endif #endif #endif /* __IFileOperation_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumObjects interface */ #ifndef __IEnumObjects_INTERFACE_DEFINED__ #define __IEnumObjects_INTERFACE_DEFINED__ DEFINE_GUID(IID_IEnumObjects, 0x2c1c7e2e, 0x2d0e, 0x4059, 0x83,0x1e, 0x1e,0x6f,0x82,0x33,0x5c,0x2e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2c1c7e2e-2d0e-4059-831e-1e6f82335c2e") IEnumObjects : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, REFIID riid, void **rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumObjects **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumObjects, 0x2c1c7e2e, 0x2d0e, 0x4059, 0x83,0x1e, 0x1e,0x6f,0x82,0x33,0x5c,0x2e) #endif #else typedef struct IEnumObjectsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumObjects *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumObjects *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumObjects *This); /*** IEnumObjects methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumObjects *This, ULONG celt, REFIID riid, void **rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumObjects *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumObjects *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumObjects *This, IEnumObjects **ppenum); END_INTERFACE } IEnumObjectsVtbl; interface IEnumObjects { CONST_VTBL IEnumObjectsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumObjects_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumObjects_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumObjects_Release(This) (This)->lpVtbl->Release(This) /*** IEnumObjects methods ***/ #define IEnumObjects_Next(This,celt,riid,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,riid,rgelt,pceltFetched) #define IEnumObjects_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumObjects_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumObjects_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static inline HRESULT IEnumObjects_QueryInterface(IEnumObjects* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static inline ULONG IEnumObjects_AddRef(IEnumObjects* This) { return This->lpVtbl->AddRef(This); } static inline ULONG IEnumObjects_Release(IEnumObjects* This) { return This->lpVtbl->Release(This); } /*** IEnumObjects methods ***/ static inline HRESULT IEnumObjects_Next(IEnumObjects* This,ULONG celt,REFIID riid,void **rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,riid,rgelt,pceltFetched); } static inline HRESULT IEnumObjects_Skip(IEnumObjects* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static inline HRESULT IEnumObjects_Reset(IEnumObjects* This) { return This->lpVtbl->Reset(This); } static inline HRESULT IEnumObjects_Clone(IEnumObjects* This,IEnumObjects **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IEnumObjects_RemoteNext_Proxy( IEnumObjects* This, ULONG celt, REFIID riid, void **rgelt, ULONG *pceltFetched); void __RPC_STUB IEnumObjects_RemoteNext_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IEnumObjects_Next_Proxy( IEnumObjects* This, ULONG celt, REFIID riid, void **rgelt, ULONG *pceltFetched); HRESULT __RPC_STUB IEnumObjects_Next_Stub( IEnumObjects* This, ULONG celt, REFIID riid, void **rgelt, ULONG *pceltFetched); #endif /* __IEnumObjects_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ ULONG __RPC_USER HWND_UserSize (ULONG *, ULONG, HWND *); unsigned char * __RPC_USER HWND_UserMarshal (ULONG *, unsigned char *, HWND *); unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *); void __RPC_USER HWND_UserFree (ULONG *, HWND *); ULONG __RPC_USER VARIANT_UserSize (ULONG *, ULONG, VARIANT *); unsigned char * __RPC_USER VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *); unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *); void __RPC_USER VARIANT_UserFree (ULONG *, VARIANT *); 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 *); ULONG __RPC_USER HBITMAP_UserSize (ULONG *, ULONG, HBITMAP *); unsigned char * __RPC_USER HBITMAP_UserMarshal (ULONG *, unsigned char *, HBITMAP *); unsigned char * __RPC_USER HBITMAP_UserUnmarshal(ULONG *, unsigned char *, HBITMAP *); void __RPC_USER HBITMAP_UserFree (ULONG *, HBITMAP *); ULONG __RPC_USER HMENU_UserSize (ULONG *, ULONG, HMENU *); unsigned char * __RPC_USER HMENU_UserMarshal (ULONG *, unsigned char *, HMENU *); unsigned char * __RPC_USER HMENU_UserUnmarshal(ULONG *, unsigned char *, HMENU *); void __RPC_USER HMENU_UserFree (ULONG *, HMENU *); ULONG __RPC_USER HGLOBAL_UserSize (ULONG *, ULONG, HGLOBAL *); unsigned char * __RPC_USER HGLOBAL_UserMarshal (ULONG *, unsigned char *, HGLOBAL *); unsigned char * __RPC_USER HGLOBAL_UserUnmarshal(ULONG *, unsigned char *, HGLOBAL *); void __RPC_USER HGLOBAL_UserFree (ULONG *, HGLOBAL *); ULONG __RPC_USER HICON_UserSize (ULONG *, ULONG, HICON *); unsigned char * __RPC_USER HICON_UserMarshal (ULONG *, unsigned char *, HICON *); unsigned char * __RPC_USER HICON_UserUnmarshal(ULONG *, unsigned char *, HICON *); void __RPC_USER HICON_UserFree (ULONG *, HICON *); ULONG __RPC_USER HACCEL_UserSize (ULONG *, ULONG, HACCEL *); unsigned char * __RPC_USER HACCEL_UserMarshal (ULONG *, unsigned char *, HACCEL *); unsigned char * __RPC_USER HACCEL_UserUnmarshal(ULONG *, unsigned char *, HACCEL *); void __RPC_USER HACCEL_UserFree (ULONG *, HACCEL *); /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __shobjidl_h__ */