diff --git a/TVRename/Forms/UI.cs b/TVRename/Forms/UI.cs index 7ab0b2f9..439a41cc 100644 --- a/TVRename/Forms/UI.cs +++ b/TVRename/Forms/UI.cs @@ -379,7 +379,7 @@ private string GroupItemsTitleDelegate(object groupKey) case "B-Rename": // ReSharper disable once MergeSequentialPatterns (I think it's clearer this way) - int renameCount = mDoc.TheActionList.Count(action => action is ActionCopyMoveRename cmr && cmr.Operation == ActionCopyMoveRename.Op.rename); + int renameCount = mDoc.TheActionList.Count(action => action is ActionCopyMoveRename cmr && cmr.Operation == ActionCopyMoveRename.Op.rename) + mDoc.TheActionList.Count(action => action is ActionMoveRenameDirectory); return HeaderName("Rename", renameCount); case "C-Copy": @@ -3836,7 +3836,7 @@ private void UpdateActionCheckboxes() ItemList all = mDoc.TheActionList; List chk = olvAction.CheckedObjects.OfType().ToList(); - SetCheckbox(mcbRename, all.OfType().Where(a => a.Operation==ActionCopyMoveRename.Op.rename), chk.OfType().Where(a => a.Operation == ActionCopyMoveRename.Op.rename)); + SetCheckbox(mcbRename, RenameActions(all), RenameActions(chk)); SetCheckbox(mcbCopyMove, all.OfType().Where(a => a.Operation != ActionCopyMoveRename.Op.rename), chk.OfType().Where(a => a.Operation != ActionCopyMoveRename.Op.rename)); SetCheckbox(mcbDeleteFiles, all.OfType(), chk.OfType()); SetCheckbox(mcbSaveImages, all.OfType(), chk.OfType()); @@ -3845,18 +3845,13 @@ private void UpdateActionCheckboxes() SetCheckbox(mcbDownload, all.TorrentActions, chk.Where(item => item is ActionTRemove || item is ActionTDownload)); SetCheckbox(mcbAll, all.Actions, chk.OfType()); - /* - int numberOfActions = all.Actions.Count; - int numberOfCheckedActions = chk.OfType().Count(); + } - if (numberOfCheckedActions == 0) - { - mcbAll.CheckState = CheckState.Unchecked; - } - else - { - mcbAll.CheckState = numberOfCheckedActions == numberOfActions ? CheckState.Checked : CheckState.Indeterminate; - }*/ + private IEnumerable RenameActions(IEnumerable all) + { + return all.Where(a => + (a is ActionCopyMoveRename cmr && cmr.Operation == ActionCopyMoveRename.Op.rename) || + (a is ActionMoveRenameDirectory)); } private static void SetCheckbox([NotNull] ToolStripMenuItem box,[NotNull] IEnumerable all, [NotNull] IEnumerable chk) @@ -4290,7 +4285,7 @@ private void McbAll_Click(object sender, EventArgs e) } private void McbRename_Click(object sender, EventArgs e) { - UpdateCheckboxGroup(mcbRename, i => i is ActionCopyMoveRename {Operation: ActionCopyMoveRename.Op.rename}); + UpdateCheckboxGroup(mcbRename, i => i is ActionCopyMoveRename {Operation: ActionCopyMoveRename.Op.rename} || i is ActionMoveRenameDirectory); } private void McbCopyMove_Click(object sender, EventArgs e) diff --git a/TVRename/ItemsAndActions/ActionMoveRenameDirectory.cs b/TVRename/ItemsAndActions/ActionMoveRenameDirectory.cs index c4e3247b..d40bc7a8 100644 --- a/TVRename/ItemsAndActions/ActionMoveRenameDirectory.cs +++ b/TVRename/ItemsAndActions/ActionMoveRenameDirectory.cs @@ -97,5 +97,7 @@ public override ActionOutcome Go(TVRenameStats stats) } public override string Produces => targetFolder; + + public override string SourceDetails => sourceFolder; } }