#![allow(non_camel_case_types, non_upper_case_globals)]
use crate::co::*;
const_ordinary! { FDEOR: u32;
=>
DEFAULT 0
ACCEPT 1
REFUSE 2
}
const_ordinary! { FDESVR: u32;
=>
DEFAULT 0
ACCEPT 1
REFUSE 2
}
const_ordinary! { FO: u32;
=>
MOVE 0x0001
COPY 0x0002
DELETE 0x0003
RENAME 0x0004
}
const_bitflag! { FOF: u16;
=>
MULTIDESTFILES 0x0001
CONFIRMMOUSE 0x0002
SILENT 0x0004
RENAMEONCOLLISION 0x0008
NOCONFIRMATION 0x0010
WANTMAPPINGHANDLE 0x0020
ALLOWUNDO 0x0040
FILESONLY 0x0080
SIMPLEPROGRESS 0x0100
NOCONFIRMMKDIR 0x0200
NOERRORUI 0x0400
NOCOPYSECURITYATTRIBS 0x0800
NORECURSION 0x1000
NO_CONNECTED_ELEMENTS 0x2000
WANTNUKEWARNING 0x4000
NORECURSEREPARSE 0x8000
NO_UI Self::SILENT.0 | Self::NOCONFIRMATION.0 | Self::NOERRORUI.0 | Self::NOCONFIRMMKDIR.0
}
const_bitflag! { FOS: u32;
=>
OVERWRITEPROMPT 0x2
STRICTFILETYPES 0x4
NOCHANGEDIR 0x8
PICKFOLDERS 0x20
FORCEFILESYSTEM 0x40
ALLNONSTORAGEITEMS 0x80
NOVALIDATE 0x100
ALLOWMULTISELECT 0x200
PATHMUSTEXIST 0x800
FILEMUSTEXIST 0x1000
CREATEPROMPT 0x2000
SHAREAWARE 0x4000
NOREADONLYRETURN 0x8000
NOTESTFILECREATE 0x1_0000
HIDEMRUPLACES 0x2_0000
HIDEPINNEDPLACES 0x4_0000
NODEREFERENCELINKS 0x10_0000
OKBUTTONNEEDSINTERACTION 0x20_0000
DONTADDTORECENT 0x200_0000
FORCESHOWHIDDEN 0x1000_0000
DEFAULTNOMINIMODE 0x2000_0000
FORCEPREVIEWPANEON 0x4000_0000
SUPPORTSTREAMABLEITEMS 0x8000_0000
}
const_ordinary! { FDAP: u32;
=>
BOTTOM 0
TOP 1
}
const_bitflag! { GPS: u32;
=>
DEFAULT 0
HANDLERPROPERTIESONLY 0x1
READWRITE 0x2
TEMPORARY 0x4
FASTPROPERTIESONLY 0x8
OPENSLOWITEM 0x10
DELAYCREATION 0x20
BESTEFFORT 0x40
NO_OPLOCK 0x80
PREFERQUERYPROPERTIES 0x100
EXTRINSICPROPERTIES 0x200
EXTRINSICPROPERTIESONLY 0x400
VOLATILEPROPERTIES 0x800
VOLATILEPROPERTIESONLY 0x1000
MASK_VALID 0x1fff
}
const_bitflag! { KF: u32;
=>
DEFAULT 0x0000_0000
FORCE_APP_DATA_REDIRECTION 0x0008_0000
RETURN_FILTER_REDIRECTION_TARGET 0x0004_0000
FORCE_PACKAGE_REDIRECTION 0x0002_0000
NO_PACKAGE_REDIRECTION 0x0001_0000
FORCE_APPCONTAINER_REDIRECTION 0x0002_0000
NO_APPCONTAINER_REDIRECTION 0x0001_0000
CREATE 0x0000_8000
DONT_VERIFY 0x0000_4000
DONT_UNEXPAND 0x0000_2000
NO_ALIAS 0x0000_1000
INIT 0x0000_0800
DEFAULT_PATH 0x0000_0400
NOT_PARENT_RELATIVE 0x0000_0200
SIMPLE_IDLIST 0x0000_0100
ALIAS_ONLY 0x8000_0000
}
const_bitflag! { NIF: u32;
=>
MESSAGE 0x0000_0001
ICON 0x0000_0002
TIP 0x0000_0004
STATE 0x0000_0008
INFO 0x0000_0010
GUID 0x0000_0020
REALTIME 0x0000_0040
SHOWTIP 0x0000_0080
}
const_bitflag! { NIIF: u32;
=>
NONE 0x0000_0000
INFO 0x0000_0001
WARNING 0x0000_0002
ERROR 0x0000_0003
USER 0x0000_0004
NOSOUND 0x0000_0010
LARGE_ICON 0x0000_0020
RESPECT_QUIET_TIME 0x0000_0080
}
const_ordinary! { NIM: u32;
=>
ADD 0x0000_0000
MODIFY 0x0000_0001
DELETE 0x0000_0002
SETFOCUS 0x0000_0003
SETVERSION 0x0000_0004
}
const_bitflag! { NIS: u32;
=>
HIDDEN 0x0000_0001
SHAREDICON 0x0000_0002
}
const_ordinary! { PDM: u32;
=>
DEFAULT 0
RUN 0x1
PREFLIGHT 0x2
UNDOING 0x4
ERRORSBLOCKING 0x8
INDETERMINATE 0x10
}
const_ordinary! { PDOPS: u32;
=>
RUNNING 1
PAUSED 2
CANCELLED 3
STOPPED 4
ERRORS 5
}
const_bitflag! { PROGDLG: u32;
=>
NORMAL 0x0000_0000
MODAL 0x0000_0001
AUTOTIME 0x0000_0002
NOTIME 0x0000_0004
NOMINIMIZE 0x0000_0008
NOPROGRESSBAR 0x0000_0010
MARQUEEPROGRESS 0x0000_0020
NOCANCEL 0x0000_0040
}
const_bitflag! { SFGAO: u32;
=>
CANCOPY DROPEFFECT::COPY.raw()
CANMOVE DROPEFFECT::MOVE.raw()
CANLINK DROPEFFECT::LINK.raw()
STORAGE 0x0000_0008
CANRENAME 0x0000_0010
CANDELETE 0x0000_0020
HASPROPSHEET 0x0000_0040
DROPTARGET 0x0000_0100
CAPABILITYMASK 0x0000_0177
SYSTEM 0x0000_1000
ENCRYPTED 0x0000_2000
ISSLOW 0x0000_4000
GHOSTED 0x0000_8000
LINK 0x0001_0000
SHARE 0x0002_0000
READONLY 0x0004_0000
HIDDEN 0x0008_0000
FILESYSANCESTOR 0x1000_0000
FOLDER 0x2000_0000
FILESYSTEM 0x4000_0000
HASSUBFOLDER 0x8000_0000
CONTENTSMASK 0x8000_0000
VALIDATE 0x0100_0000
REMOVABLE 0x0200_0000
COMPRESSED 0x0400_0000
BROWSABLE 0x0800_0000
NONENUMERATED 0x0010_0000
NEWCONTENT 0x0020_0000
CANMONIKER 0x0040_0000
HASSTORAGE 0x0040_0000
STREAM 0x0040_0000
STORAGEANCESTOR 0x0080_0000
STORAGECAPMASK 0x70c5_0008
PKEYSFGAOMASK 0x8104_4000
}
const_ordinary! { SHARD: u32;
=>
PIDL 0x0000_0001
PATHA 0x0000_0002
PATHW 0x0000_0003
APPIDINFO 0x0000_0004
APPIDINFOIDLIST 0x0000_0005
LINK 0x0000_0006
APPIDINFOLINK 0x0000_0007
SHELLITEM 0x0000_0008
}
const_bitflag! { SHCIDS: u32;
=>
ALLFIELDS 0x8000_0000
CANONICALONLY 0x1000_0000
}
const_bitflag! { SHCONTF: u32;
=>
CHECKING_FOR_CHILDREN 0x10
FOLDERS 0x20
NONFOLDERS 0x40
INCLUDEHIDDEN 0x80
INIT_ON_FIRST_NEXT 0x100
NETPRINTERSRCH 0x200
SHAREABLE 0x400
STORAGE 0x800
NAVIGATION_ENUM 0x1000
FASTITEMS 0x2000
FLATLIST 0x4000
ENABLE_ASYNC 0x8000
INCLUDESUPERHIDDEN 0x1_0000
}
const_bitflag! { SHGFI: u32;
=>
ICON 0x0000_0100
DISPLAYNAME 0x0000_0200
TYPENAME 0x0000_0400
ATTRIBUTES 0x0000_0800
ICONLOCATION 0x0000_1000
EXETYPE 0x0000_2000
SYSICONINDEX 0x0000_4000
LINKOVERLAY 0x0000_8000
SELECTED 0x0001_0000
ATTR_SPECIFIED 0x0002_0000
LARGEICON 0x0000_0000
SMALLICON 0x0000_0001
OPENICON 0x0000_0002
SHELLICONSIZE 0x0000_0004
PIDL 0x0000_0008
USEFILEATTRIBUTES 0x0000_0010
ADDOVERLAYS 0x0000_0020
OVERLAYINDEX 0x0000_0040
}
const_bitflag! { SHGSI: u32;
=>
NoValue 0
ICONLOCATION 0
ICON SHGFI::ICON.0
SYSICONINDEX SHGFI::SYSICONINDEX.0
LINKOVERLAY SHGFI::LINKOVERLAY.0
SELECTED SHGFI::SELECTED.0
LARGEICON SHGFI::LARGEICON.0
SMALLICON SHGFI::SMALLICON.0
SHELLICONSIZE SHGFI::SHELLICONSIZE.0
}
const_ordinary! { SICHINTF: u32;
=>
DISPLAY 0
ALLFIELDS 0x8000_0000
CANONICAL 0x1000_0000
TEST_FILESYSPATH_IF_NOT_EQUAL 0x2000_0000
}
const_ordinary! { SIGDN: u32;
=>
NORMALDISPLAY 0
PARENTRELATIVEPARSING 0x8001_8001
DESKTOPABSOLUTEPARSING 0x8002_8000
PARENTRELATIVEEDITING 0x8003_1001
DESKTOPABSOLUTEEDITING 0x8004_c000
FILESYSPATH 0x8005_8000
URL 0x8006_8000
PARENTRELATIVEFORADDRESSBAR 0x8007_c001
PARENTRELATIVE 0x8008_0001
PARENTRELATIVEFORUI 0x8009_4001
}
const_ordinary! { SIID: u32;
=>
DOCNOASSOC 0
DOCASSOC 1
APPLICATION 2
FOLDER 3
FOLDEROPEN 4
DRIVE525 5
DRIVE35 6
DRIVEREMOVE 7
DRIVEFIXED 8
DRIVENET 9
DRIVENETDISABLED 10
DRIVECD 11
DRIVERAM 12
WORLD 13
SERVER 15
PRINTER 16
MYNETWORK 17
FIND 22
HELP 23
SHARE 28
LINK 29
SLOWFILE 30
RECYCLER 31
RECYCLERFULL 32
MEDIACDAUDIO 40
LOCK 47
AUTOLIST 49
PRINTERNET 50
SERVERSHARE 51
PRINTERFAX 52
PRINTERFAXNET 53
PRINTERFILE 54
STACK 55
MEDIASVCD 56
STUFFEDFOLDER 57
DRIVEUNKNOWN 58
DRIVEDVD 59
MEDIADVD 60
MEDIADVDRAM 61
MEDIADVDRW 62
MEDIADVDR 63
MEDIADVDROM 64
MEDIACDAUDIOPLUS 65
MEDIACDRW 66
MEDIACDR 67
MEDIACDBURN 68
MEDIABLANKCD 69
MEDIACDROM 70
AUDIOFILES 71
IMAGEFILES 72
VIDEOFILES 73
MIXEDFILES 74
FOLDERBACK 75
FOLDERFRONT 76
SHIELD 77
WARNING 78
INFO 79
ERROR 80
KEY 81
SOFTWARE 82
RENAME 83
DELETE 84
MEDIAAUDIODVD 85
MEDIAMOVIEDVD 86
MEDIAENHANCEDCD 87
MEDIAENHANCEDDVD 88
MEDIAHDDVD 89
MEDIABLURAY 90
MEDIAVCD 91
MEDIADVDPLUSR 92
MEDIADVDPLUSRW 93
DESKTOPPC 94
MOBILEPC 95
USERS 96
MEDIASMARTMEDIA 97
MEDIACOMPACTFLASH 98
DEVICECELLPHONE 99
DEVICECAMERA 100
DEVICEVIDEOCAMERA 101
DEVICEAUDIOPLAYER 102
NETWORKCONNECT 103
INTERNET 104
ZIPFILE 105
SETTINGS 106
DRIVEHDDVD 132
DRIVEBD 133
MEDIAHDDVDROM 134
MEDIAHDDVDR 135
MEDIAHDDVDRAM 136
MEDIABDROM 137
MEDIABDR 138
MEDIABDRE 139
CLUSTEREDDRIVE 140
MAX_ICONS 181
}
const_bitflag! { SLGP: u32;
=>
SHORTPATH 0x1
UNCPRIORITY 0x2
RAWPATH 0x4
RELATIVEPRIORITY 0x8
}
const_ordinary! { SPACTION: u32;
=>
NONE 0
MOVING Self::NONE.raw() + 1
COPYING Self::MOVING.raw() + 1
RECYCLING Self::COPYING.raw() + 1
APPLYINGATTRIBS Self::RECYCLING.raw() + 1
DOWNLOADING Self::APPLYINGATTRIBS.raw() + 1
SEARCHING_INTERNET Self::DOWNLOADING.raw() + 1
CALCULATING Self::SEARCHING_INTERNET.raw() + 1
UPLOADING Self::CALCULATING.raw() + 1
SEARCHING_FILES Self::UPLOADING.raw() + 1
DELETING Self::SEARCHING_FILES.raw() + 1
RENAMING Self::DELETING.raw() + 1
FORMATTING Self::RENAMING.raw() + 1
COPY_MOVING Self::FORMATTING.raw() + 1
}
const_ordinary! { STPFLAG: u32;
=>
NONE 0
USEAPPTHUMBNAILALWAYS 0x1
USEAPPTHUMBNAILWHENACTIVE 0x2
USEAPPPEEKALWAYS 0x4
USEAPPPEEKWHENACTIVE 0x8
}
const_ordinary! { TBPF: u32;
=>
NOPROGRESS 0
INDETERMINATE 0x1
NORMAL 0x2
ERROR 0x4
PAUSED 0x8
}
const_bitflag! { TSF: u32;
=>
NORMAL 0
FAIL_EXIST 0
RENAME_EXIST 0x1
OVERWRITE_EXIST 0x2
ALLOW_DECRYPTION 0x4
NO_SECURITY 0x8
COPY_CREATION_TIME 0x10
COPY_WRITE_TIME 0x20
USE_FULL_ACCESS 0x40
DELETE_RECYCLE_IF_POSSIBLE 0x80
COPY_HARD_LINK 0x100
COPY_LOCALIZED_NAME 0x200
MOVE_AS_COPY_DELETE 0x400
SUSPEND_SHELLEVENTS 0x800
}