| 1 |
/** |
| 2 |
* This file is part of the mingw-w64 runtime package. |
| 3 |
* No warranty is given; refer to the file DISCLAIMER within this package. |
| 4 |
*/ |
| 5 |
|
| 6 |
import "oaidl.idl"; |
| 7 |
import "fsrmenums.idl"; |
| 8 |
import "fsrm.idl"; |
| 9 |
|
| 10 |
cpp_quote("#include <winapifamily.h>") |
| 11 |
cpp_quote("") |
| 12 |
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") |
| 13 |
|
| 14 |
interface IFsrmFileGroup; |
| 15 |
interface IFsrmFileGroupImported; |
| 16 |
interface IFsrmFileGroupManager; |
| 17 |
interface IFsrmFileScreen; |
| 18 |
interface IFsrmFileScreenBase; |
| 19 |
interface IFsrmFileScreenException; |
| 20 |
interface IFsrmFileScreenManager; |
| 21 |
interface IFsrmFileScreenTemplate; |
| 22 |
interface IFsrmFileScreenTemplateImported; |
| 23 |
interface IFsrmFileScreenTemplateManager; |
| 24 |
|
| 25 |
const DISPID FSRM_DISPID_FILEGROUP = FSRM_DISPID_FEATURE_FILESCREEN | 0x100000; |
| 26 |
const DISPID FSRM_DISPID_FILEGROUP_IMPORTED = FSRM_DISPID_FILEGROUP | 0x10000; |
| 27 |
const DISPID FSRM_DISPID_FILEGROUP_MANAGER = FSRM_DISPID_FEATURE_FILESCREEN | 0x200000; |
| 28 |
const DISPID FSRM_DISPID_FILESCREEN_BASE = FSRM_DISPID_FEATURE_FILESCREEN | 0x300000; |
| 29 |
const DISPID FSRM_DISPID_FILESCREEN = FSRM_DISPID_FILESCREEN_BASE | 0x10000; |
| 30 |
const DISPID FSRM_DISPID_FILESCREEN_TEMPLATE = FSRM_DISPID_FILESCREEN_BASE | 0x20000; |
| 31 |
const DISPID FSRM_DISPID_FILESCREEN_TEMPLATE_IMPORTED = FSRM_DISPID_FILESCREEN_TEMPLATE | 0x1000; |
| 32 |
const DISPID FSRM_DISPID_FILESCREEN_EXCEPTION = FSRM_DISPID_FEATURE_FILESCREEN | 0x400000; |
| 33 |
const DISPID FSRM_DISPID_FILESCREEN_MANAGER = FSRM_DISPID_FEATURE_FILESCREEN | 0x500000; |
| 34 |
const DISPID FSRM_DISPID_FILESCREEN_TEMPLATE_MANAGER = FSRM_DISPID_FEATURE_FILESCREEN | 0x600000; |
| 35 |
|
| 36 |
[object, uuid (426677d5-018c-485c-8a51-20b86d00bdc4), dual, pointer_default (unique)] |
| 37 |
interface IFsrmFileGroupManager : IDispatch { |
| 38 |
[id (FSRM_DISPID_FILEGROUP_MANAGER | 0x1)] HRESULT CreateFileGroup ([out, retval] IFsrmFileGroup **fileGroup); |
| 39 |
[id (FSRM_DISPID_FILEGROUP_MANAGER | 0x2)] HRESULT GetFileGroup ([in] BSTR name,[out, retval] IFsrmFileGroup **fileGroup); |
| 40 |
[id (FSRM_DISPID_FILEGROUP_MANAGER | 0x3)] HRESULT EnumFileGroups ([in, defaultvalue (FsrmEnumOptions_None)] FsrmEnumOptions options,[out, retval] IFsrmCommittableCollection **fileGroups); |
| 41 |
[id (FSRM_DISPID_FILEGROUP_MANAGER | 0x4)] HRESULT ExportFileGroups ([in, defaultvalue (NULL)] VARIANT *fileGroupNamesArray,[out, retval] BSTR *serializedFileGroups); |
| 42 |
[id (FSRM_DISPID_FILEGROUP_MANAGER | 0x5)] HRESULT ImportFileGroups ([in] BSTR serializedFileGroups,[in, defaultvalue (NULL)] VARIANT *fileGroupNamesArray,[out, retval] IFsrmCommittableCollection **fileGroups); |
| 43 |
}; |
| 44 |
|
| 45 |
[object, uuid (ff4fa04e-5a94-4bda-a3a0-d5b4d3c52eba), dual, pointer_default (unique)] |
| 46 |
interface IFsrmFileScreenManager : IDispatch { |
| 47 |
[propget, id (FSRM_DISPID_FILESCREEN_MANAGER | 0x81)] HRESULT ActionVariables ([out, retval] SAFEARRAY (VARIANT) *variables); |
| 48 |
[propget, id (FSRM_DISPID_FILESCREEN_MANAGER | 0x82)] HRESULT ActionVariableDescriptions ([out, retval] SAFEARRAY (VARIANT) *descriptions); |
| 49 |
[id (FSRM_DISPID_FILESCREEN_MANAGER | 0x1)] HRESULT CreateFileScreen ([in] BSTR path,[out, retval] IFsrmFileScreen **fileScreen); |
| 50 |
[id (FSRM_DISPID_FILESCREEN_MANAGER | 0x2)] HRESULT GetFileScreen ([in] BSTR path,[out, retval] IFsrmFileScreen **fileScreen); |
| 51 |
[id (FSRM_DISPID_FILESCREEN_MANAGER | 0x3)] HRESULT EnumFileScreens ([in, defaultvalue (L"")] BSTR path,[in, defaultvalue (FsrmEnumOptions_None)] FsrmEnumOptions options,[out, retval] IFsrmCommittableCollection **fileScreens); |
| 52 |
[id (FSRM_DISPID_FILESCREEN_MANAGER | 0x4)] HRESULT CreateFileScreenException ([in] BSTR path,[out, retval] IFsrmFileScreenException **fileScreenException); |
| 53 |
[id (FSRM_DISPID_FILESCREEN_MANAGER | 0x5)] HRESULT GetFileScreenException ([in] BSTR path,[out, retval] IFsrmFileScreenException **fileScreenException); |
| 54 |
[id (FSRM_DISPID_FILESCREEN_MANAGER | 0x6)] HRESULT EnumFileScreenExceptions ([in, defaultvalue (L"")] BSTR path,[in, defaultvalue (FsrmEnumOptions_None)] FsrmEnumOptions options,[out, retval] IFsrmCommittableCollection **fileScreenExceptions); |
| 55 |
[id (FSRM_DISPID_FILESCREEN_MANAGER | 0x7)] HRESULT CreateFileScreenCollection ([out, retval] IFsrmCommittableCollection **collection); |
| 56 |
}; |
| 57 |
|
| 58 |
[object, uuid (cfe36cba-1949-4e74-a14f-f1d580ceaf13), dual, pointer_default (unique)] |
| 59 |
interface IFsrmFileScreenTemplateManager : IDispatch { |
| 60 |
[id (FSRM_DISPID_FILESCREEN_TEMPLATE_MANAGER | 0x1)] HRESULT CreateTemplate ([out, retval] IFsrmFileScreenTemplate **fileScreenTemplate); |
| 61 |
[id (FSRM_DISPID_FILESCREEN_TEMPLATE_MANAGER | 0x2)] HRESULT GetTemplate ([in] BSTR name,[out, retval] IFsrmFileScreenTemplate **fileScreenTemplate); |
| 62 |
[id (FSRM_DISPID_FILESCREEN_TEMPLATE_MANAGER | 0x3)] HRESULT EnumTemplates ([in, defaultvalue (FsrmEnumOptions_None)] FsrmEnumOptions options,[out, retval] IFsrmCommittableCollection **fileScreenTemplates); |
| 63 |
[id (FSRM_DISPID_FILESCREEN_TEMPLATE_MANAGER | 0x4)] HRESULT ExportTemplates ([in, defaultvalue (NULL)] VARIANT *fileScreenTemplateNamesArray,[out, retval] BSTR *serializedFileScreenTemplates); |
| 64 |
[id (FSRM_DISPID_FILESCREEN_TEMPLATE_MANAGER | 0x5)] HRESULT ImportTemplates ([in] BSTR serializedFileScreenTemplates,[in, defaultvalue (NULL)] VARIANT *fileScreenTemplateNamesArray,[out, retval] IFsrmCommittableCollection **fileScreenTemplates); |
| 65 |
}; |
| 66 |
|
| 67 |
[object, uuid (8dd04909-0e34-4d55-afaa-89e1f1a1bbb9), dual, pointer_default (unique)] |
| 68 |
interface IFsrmFileGroup : IFsrmObject { |
| 69 |
[propget, id (FSRM_DISPID_FILEGROUP | 0x81)] HRESULT Name ([out, retval] BSTR *name); |
| 70 |
[propput, id (FSRM_DISPID_FILEGROUP | 0x81)] HRESULT Name ([in] BSTR name); |
| 71 |
[propget, id (FSRM_DISPID_FILEGROUP | 0x82)] HRESULT Members ([out, retval] IFsrmMutableCollection **members); |
| 72 |
[propput, id (FSRM_DISPID_FILEGROUP | 0x82)] HRESULT Members ([in] IFsrmMutableCollection *members); |
| 73 |
[propget, id (FSRM_DISPID_FILEGROUP | 0x83)] HRESULT NonMembers ([out, retval] IFsrmMutableCollection **nonMembers); |
| 74 |
[propput, id (FSRM_DISPID_FILEGROUP | 0x83)] HRESULT NonMembers ([in] IFsrmMutableCollection *nonMembers); |
| 75 |
}; |
| 76 |
|
| 77 |
[object, uuid (f3637e80-5b22-4a2b-a637-bbb642b41cfc), dual, pointer_default (unique)] |
| 78 |
interface IFsrmFileScreenBase : IFsrmObject { |
| 79 |
[propget, id (FSRM_DISPID_FILESCREEN_BASE | 0x81)] HRESULT BlockedFileGroups ([out, retval] IFsrmMutableCollection **blockList); |
| 80 |
[propput, id (FSRM_DISPID_FILESCREEN_BASE | 0x81)] HRESULT BlockedFileGroups ([in] IFsrmMutableCollection *blockList); |
| 81 |
[propget, id (FSRM_DISPID_FILESCREEN_BASE | 0x82)] HRESULT FileScreenFlags ([out, retval] long *fileScreenFlags); |
| 82 |
[propput, id (FSRM_DISPID_FILESCREEN_BASE | 0x82)] HRESULT FileScreenFlags ([in] long fileScreenFlags); |
| 83 |
[id (FSRM_DISPID_FILESCREEN_BASE | 0x1)] HRESULT CreateAction ([in] FsrmActionType actionType,[out, retval] IFsrmAction **action); |
| 84 |
[id (FSRM_DISPID_FILESCREEN_BASE | 0x2)] HRESULT EnumActions ([out, retval] IFsrmCollection **actions); |
| 85 |
}; |
| 86 |
|
| 87 |
[object, uuid (bee7ce02-df77-4515-9389-78f01c5afc1a), dual, pointer_default (unique)] |
| 88 |
interface IFsrmFileScreenException : IFsrmObject { |
| 89 |
[propget, id (FSRM_DISPID_FILESCREEN_EXCEPTION | 0x81)] HRESULT Path ([out, retval] BSTR *path); |
| 90 |
[propget, id (FSRM_DISPID_FILESCREEN_EXCEPTION | 0x82)] HRESULT AllowedFileGroups ([out, retval] IFsrmMutableCollection **allowList); |
| 91 |
[propput, id (FSRM_DISPID_FILESCREEN_EXCEPTION | 0x82)] HRESULT AllowedFileGroups ([in] IFsrmMutableCollection *allowList); |
| 92 |
}; |
| 93 |
|
| 94 |
[object, uuid (5f6325d3-ce88-4733-84c1-2d6aefc5ea07), dual, pointer_default (unique)] |
| 95 |
interface IFsrmFileScreen : IFsrmFileScreenBase { |
| 96 |
[propget, id (FSRM_DISPID_FILESCREEN | 0x81)] HRESULT Path ([out, retval] BSTR *path); |
| 97 |
[propget, id (FSRM_DISPID_FILESCREEN | 0x82)] HRESULT SourceTemplateName ([out, retval] BSTR *fileScreenTemplateName); |
| 98 |
[propget, id (FSRM_DISPID_FILESCREEN | 0x83)] HRESULT MatchesSourceTemplate ([out, retval] VARIANT_BOOL *matches); |
| 99 |
[propget, id (FSRM_DISPID_FILESCREEN | 0x84)] HRESULT UserSid ([out, retval] BSTR *userSid); |
| 100 |
[propget, id (FSRM_DISPID_FILESCREEN | 0x85)] HRESULT UserAccount ([out, retval] BSTR *userAccount); |
| 101 |
[id (FSRM_DISPID_FILESCREEN | 0x1)] HRESULT ApplyTemplate ([in] BSTR fileScreenTemplateName); |
| 102 |
}; |
| 103 |
|
| 104 |
[object, uuid (ad55f10b-5f11-4be7-94ef-d9ee2e470ded), dual, pointer_default (unique)] |
| 105 |
interface IFsrmFileGroupImported : IFsrmFileGroup { |
| 106 |
[propget, id (FSRM_DISPID_FILEGROUP_IMPORTED | 0x81)] HRESULT OverwriteOnCommit ([out, retval] VARIANT_BOOL *overwrite); |
| 107 |
[propput, id (FSRM_DISPID_FILEGROUP_IMPORTED | 0x81)] HRESULT OverwriteOnCommit ([in] VARIANT_BOOL overwrite); |
| 108 |
}; |
| 109 |
|
| 110 |
[object, uuid (205bebf8-dd93-452a-95a6-32b566b35828), dual, pointer_default (unique)] |
| 111 |
interface IFsrmFileScreenTemplate : IFsrmFileScreenBase { |
| 112 |
[propget, id (FSRM_DISPID_FILESCREEN_TEMPLATE | 0x81)] HRESULT Name ([out, retval] BSTR *name); |
| 113 |
[propput, id (FSRM_DISPID_FILESCREEN_TEMPLATE | 0x81)] HRESULT Name ([in] BSTR name); |
| 114 |
[id (FSRM_DISPID_FILESCREEN_TEMPLATE | 0x1)] HRESULT CopyTemplate ([in] BSTR fileScreenTemplateName); |
| 115 |
[id (FSRM_DISPID_FILESCREEN_TEMPLATE | 0x2)] HRESULT CommitAndUpdateDerived ([in] FsrmCommitOptions commitOptions,[in] FsrmTemplateApplyOptions applyOptions,[out, retval] IFsrmDerivedObjectsResult **derivedObjectsResult); |
| 116 |
}; |
| 117 |
|
| 118 |
[object, uuid (e1010359-3e5d-4ecd-9fe4-ef48622fdf30), dual, pointer_default (unique)] |
| 119 |
interface IFsrmFileScreenTemplateImported : IFsrmFileScreenTemplate { |
| 120 |
[propget, id (FSRM_DISPID_FILESCREEN_TEMPLATE_IMPORTED | 0x81)] HRESULT OverwriteOnCommit ([out, retval] VARIANT_BOOL *overwrite); |
| 121 |
[propput, id (FSRM_DISPID_FILESCREEN_TEMPLATE_IMPORTED | 0x81)] HRESULT OverwriteOnCommit ([in] VARIANT_BOOL overwrite); |
| 122 |
}; |
| 123 |
cpp_quote("#endif") |