ADD: SyncDirs - option to disable file mask saving

This commit is contained in:
Alexander Koblov 2023-05-06 12:55:27 +03:00
commit 6246b879eb
2 changed files with 17 additions and 2 deletions

View file

@ -754,8 +754,11 @@ begin
gSyncDirsShowFilterCopyLeft := sbCopyLeft.Down;
gSyncDirsShowFilterDuplicates := sbDuplicates.Down;
gSyncDirsShowFilterSingles := sbSingles.Down;
if not IsMaskSearchTemplate(cbExtFilter.Text) then
gSyncDirsFileMask := cbExtFilter.Text;
if gSyncDirsFileMaskSave = True then
begin
if not IsMaskSearchTemplate(cbExtFilter.Text) then
gSyncDirsFileMask := cbExtFilter.Text;
end;
if chkByContent.Enabled then
gSyncDirsByContent := chkByContent.Checked;
glsMaskHistory.Assign(cbExtFilter.Items);
@ -811,6 +814,14 @@ begin
sbCopyLeft.Down := gSyncDirsShowFilterCopyLeft;
sbDuplicates.Down := gSyncDirsShowFilterDuplicates;
sbSingles.Down := gSyncDirsShowFilterSingles;
if gSyncDirsFileMaskSave = False then
begin
Index := glsMaskHistory.IndexOf(gSyncDirsFileMask);
if Index <> -1 then
glsMaskHistory.Move(Index, 0)
else
glsMaskHistory.Insert(0, gSyncDirsFileMask);
end;
cbExtFilter.Items.Assign(glsMaskHistory);
cbExtFilter.Text := gSyncDirsFileMask;

View file

@ -677,6 +677,7 @@ var
gSyncDirsShowFilterDuplicates,
gSyncDirsShowFilterSingles: Boolean;
gSyncDirsFileMask: string;
gSyncDirsFileMaskSave: Boolean;
{ Internal Associations}
gFileAssociationLastCustomAction: string;
@ -2125,6 +2126,7 @@ begin
gSyncDirsShowFilterDuplicates := True;
gSyncDirsShowFilterSingles := True;
gSyncDirsFileMask := '*';
gSyncDirsFileMaskSave := True;
{ Internal Associations}
gFileAssociationLastCustomAction := rsMsgDefaultCustomActionName;
@ -3261,6 +3263,7 @@ begin
gSyncDirsShowFilterDuplicates := GetValue(Node, 'FilterDuplicates', gSyncDirsShowFilterDuplicates);
gSyncDirsShowFilterSingles := GetValue(Node, 'FilterSingles', gSyncDirsShowFilterSingles);
gSyncDirsFileMask := GetValue(Node, 'FileMask', gSyncDirsFileMask);
gSyncDirsFileMaskSave := GetAttr(Node, 'FileMask/Save', gSyncDirsFileMaskSave);
SubNode := FindNode(Node, 'Colors');
if Assigned(SubNode) then
begin
@ -3884,6 +3887,7 @@ begin
SetValue(Node, 'FilterDuplicates', gSyncDirsShowFilterDuplicates);
SetValue(Node, 'FilterSingles', gSyncDirsShowFilterSingles);
SetValue(Node, 'FileMask', gSyncDirsFileMask);
SetAttr(Node, 'FileMask/Save', gSyncDirsFileMaskSave);
SubNode := FindNode(Node, 'Colors', True);
SetValue(SubNode, 'Left', gSyncLeftColor);
SetValue(SubNode, 'Right', gSyncRightColor);