diff options
Diffstat (limited to 'algorithm.h')
-rw-r--r-- | algorithm.h | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/algorithm.h b/algorithm.h index 16bb11eb..f85d1639 100644 --- a/algorithm.h +++ b/algorithm.h @@ -8,12 +8,10 @@ #define ALGORITHM_H_INCLUDED #include "file_hierarchy.h" - +#include "library/soft_filter.h" namespace zen { -class SoftFilter; - void swapGrids(const MainConfiguration& config, FolderComparison& folderCmp); struct DeterminationProblem //callback @@ -21,7 +19,9 @@ struct DeterminationProblem //callback virtual ~DeterminationProblem() {} virtual void reportWarning(const wxString& text) = 0; }; -void redetermineSyncDirection(const SyncConfig& config, BaseDirMapping& baseDirectory, DeterminationProblem* handler); //handler may be NULL +std::vector<DirectionConfig> extractDirectionCfg(const MainConfiguration& mainCfg); + +void redetermineSyncDirection(const DirectionConfig& directConfig, BaseDirMapping& baseDirectory, DeterminationProblem* handler); //handler may be NULL void redetermineSyncDirection(const MainConfiguration& mainCfg, FolderComparison& folderCmp, DeterminationProblem* handler); void setSyncDirectionRec(SyncDirection newDirection, FileSystemObject& fsObj); //set new direction (recursively) @@ -33,6 +33,8 @@ void applyFiltering (FolderComparison& folderCmp, const MainConfiguration& main void addHardFiltering(BaseDirMapping& baseMap, const Zstring& excludeFilter); //exclude additional entries only void addSoftFiltering(BaseDirMapping& baseMap, const SoftFilter& timeSizeFilter); //exclude additional entries only +void applyTimeSpanFilter(FolderComparison& folderCmp, const Int64& timeFrom, const Int64& timeTo); //overwrite current active/inactive settings + void setActiveStatus(bool newStatus, FolderComparison& folderCmp); //activate or deactivate all rows void setActiveStatus(bool newStatus, FileSystemObject& fsObj); //activate or deactivate row: (not recursively anymore) @@ -41,7 +43,7 @@ void setActiveStatus(bool newStatus, FileSystemObject& fsObj); //activate or std::pair<wxString, int> deleteFromGridAndHDPreview( //returns wxString with elements to be deleted and total count of selected(!) objects, NOT total files/dirs! const std::vector<FileSystemObject*>& rowsToDeleteOnLeft, //all pointers need to be bound! const std::vector<FileSystemObject*>& rowsToDeleteOnRight, // - const bool deleteOnBothSides); + bool deleteOnBothSides); class DeleteFilesHandler { @@ -59,11 +61,12 @@ public: //virtual void totalFilesToDelete(int objectsTotal) = 0; //informs about the total number of files to be deleted virtual void notifyDeletion(const Zstring& currentObject) = 0; //called for each file/folder that has been deleted }; -void deleteFromGridAndHD(FolderComparison& folderCmp, //attention: rows will be physically deleted! - std::vector<FileSystemObject*>& rowsToDeleteOnLeft, //refresh GUI grid after deletion to remove invalid rows +void deleteFromGridAndHD(std::vector<FileSystemObject*>& rowsToDeleteOnLeft, //refresh GUI grid after deletion to remove invalid rows std::vector<FileSystemObject*>& rowsToDeleteOnRight, //all pointers need to be bound! - const bool deleteOnBothSides, - const bool useRecycleBin, + FolderComparison& folderCmp, //attention: rows will be physically deleted! + const std::vector<DirectionConfig>& directCfgs, + bool deleteOnBothSides, + bool useRecycleBin, DeleteFilesHandler& statusHandler); } |