//Функції позначення файлів

//SetHardSymLinkMode(int mode) - встановлення режиму позначення файлів і виконання дії
SetHardSymLinkMode(1)//символічні посилання
SetHardSymLinkMode(0)//жорсткі посилання

//SelectAll(bool setSelection) - позначення / зняття позначок із усіх файлів
SelectAll(true)//позначити
SelectAll(false)//зняти позначки

//SelectFirstFiles(bool setSelection) - позначення / зняття позначок із 1-их файлів кожної групи
SelectFirstFiles(true)//позначити
SelectFirstFiles(false)//зняти позначки

//SelectLastFiles(bool setSelection) - позначення / зняття позначок із останніх файлів кожної групи
SelectLastFiles(true)//позначити
SelectLastFiles(false)//зняти позначки

//SelectFile(bool setSelection,string filePathOrWildCard) - позначення / зняття позначок із указаних файлів за шляхом, іменем або маскою
SelectFile(true,'c:\test\1.txt')//позначити файл "c:\\test\1.txt" за наявності в переліку результатів
SelectFile(true,'picture.jpg')//позначити файли з іменем "picture.jpg" за наявності в переліку результатів
SelectFile(false,'picture*.jpg')//зняти позначки з усіх файлів із маскою "picture*.jpg" за наявності в переліку результатів

//SelectFilesInFolder(bool setSelection,string folder) - позначення / зняття позначок із указаних файлів указаної теки
SelectFilesInFolder(true,'c:\test\')//позначити всі знайдені файли теки "c:\test\"
SelectFilesInFolder(false,'c:\test\')//зняти позначки з усіх знайдених файлів теки "c:\test\"

//SelectFilesInFolderAndSubfolders(bool setSelection,string folder) - позначення / зняття позначок із файлів указаних тек і підтек
SelectFilesInFolderAndSubfolders(true,'c:\test\')//позначити всі знайдені файли теки "c:\test\" та підтек
SelectFilesInFolderAndSubfolders(false,'c:\test\')//зняти позначки з усіх знайдених файлів теки "c:\test\" та підтек

//SelectFilesByExt(bool setSelection,string extension) - позначення / зняття позначок із файлів указаного формату
SelectFilesByExt(true,'.jpg')//позначити всі .jpg-файли
SelectFilesByExt(false,'.jpg')//зняти позначки з усіх .jpg-файлів

//SelectAllLinksIfAnyFileIsUnchecked(bool setSelection) - позначення / зняття позначок із усіх жорстких або символічних посилань за наявності хоча б одного позначеного / непозначеного, для встановлення однакового стану
SelectAllLinksIfAnyFileIsUnchecked(true)//позначити всі жорсткі чи символічні посилання за наявності хоча б одного позначеного
SelectAllLinksIfAnyFileIsUnchecked(false)//зняти позначки з усіх жорстких або символічних посилань за наявності хоча б одного непозначеного

//SelectAllReadonly(bool setSelection) - позначення / зняття позначок із файлів лише для читання чи системних
SelectAllReadonly(true)//позначити файли лише для читання чи системні
SelectAllReadonly(false)//зняти позначки з файлів лише для читання чи системних

//SelectTheNewestFileInEachGroup(bool setSelection) - позначення / зняття позначок із найновішого файлу кожної групи за датою зміни
SelectTheNewestFileInEachGroup(true)//позначити найновіший файл кожної групи за датою зміни
SelectTheNewestFileInEachGroup(false)//зняти позначки з найновішого файлу кожної групи за датою зміни

UnselectMinimallyFragmentedFiles()//зняти позначки з одного мінімально фрагментованого файлу кожної групи

UnselectTheNewestFileInEachGroup()//зняти позначки з одного найновішого файлу кожної групи за датою зміни

UnselectFilesProtectedFromModification()//зняти позначки з захищених від зміни додатком файлів

InvertSelection()//інвертувати позначення


//Позначення файлів як точок з'єднання жорстких або символічних посилань

SelectFirstFilesAsLinkTargets()//позначення 1-их файлів кожної групи як точок з'єднання жорстких або символічних посилань

SelectLastFilesAsLinkTargets()//позначення останніх файлів кожної групи як точок з'єднання жорстких або символічних посилань

//SelectFilesInFolderAsLinkTargets(string path) - позначення файлів указаної теки як точок з'єднання жорстких або символічних посилань (1 файл групи)
SelectFilesInFolderAsLinkTargets('c:\test\')//позначити файли теки "c:\test\" як точки з'єднання жорстких або символічних посилань (1 файл групи)

//SelectFilesInFolderOrSubfolderAsLinkTargets(string path) - позначення файлів указаної теки чи підтек як точок з'єднання жорстких або символічних посилань (1 файл групи)
SelectFilesInFolderOrSubfolderAsLinkTargets('c:\test\')//позначити файли теки "c:\test\" чи підтек як точки з'єднання жорстких або символічних посилань (1 файл групи)

SelectMinimallyFragmentedFilesAsLinkTargets()//позначити один мінімально фрагментований файл кожної групи як точку з'єднання жорстких або символічних посилань

SelectTheNewestFileInEachGroupAsLinkTargets()//позначити найновіший файл кожної групи як точку з'єднання жорстких або символічних посилань

SelectReadonlyAndSystemFilesAsLinkTargets()//позначити файли лише для читання чи системні як точки з'єднання жорстких або символічних посилань

SelectFilesProtectedFromModificationAsLinkTargets())//позначити захищені від зміни додатком файли як точки з'єднання жорстких або символічних посилань


//Дії

ExcludeSelectedFilesFromTheList()//вилучити позначені файли з переліку

RunReplaceFileWithLinkAction()//замінити файли жорсткими чи символічними (залежно від поточного режиму) посиланнями на позначені точки з'єднання

RunDetachFileLinksAction()//замінити жорсткі чи символічні посилання файлами

//RunDeleteFilesAction(bool deleteToRecycle,bool deleteEmptyFolders) - видалення позначених файлів, опційно - переміщення до кошика, опційно - видалення порожніх тек
RunDeleteFilesAction(false,false)//видалити файли
RunDeleteFilesAction(false,true)//видалити файли та порожні теки
RunDeleteFilesAction(true,false)//перемістити файли до кошика
RunDeleteFilesAction(true,true)//перемістити файли та порожні теки до кошика

//RunCompressFilesAction(bool skipIncompressibleFiles) - NTFS-стиснення позначених файлів
RunCompressFilesAction(false)//стиснути NTFS-файли без оцінки стиснення
RunCompressFilesAction(true)//стиснути NTFS-файли з оцінкою стиснення при визначенму розмірі < 90 % оригіналу