private void OSMoveRename(TVRenameStats stats) { try { if (Helpers.Same(this.From, this.To)) { // XP won't actually do a rename if its only a case difference string tempName = TempFor(this.To); this.From.MoveTo(tempName); File.Move(tempName, this.To.FullName); } else { this.From.MoveTo(this.To.FullName); } KeepTimestamps(this.From, this.To); this.Done = true; System.Diagnostics.Debug.Assert((this.Operation == ActionCopyMoveRename.Op.Move) || (this.Operation == ActionCopyMoveRename.Op.Rename)); if (this.Operation == ActionCopyMoveRename.Op.Move) { stats.FilesMoved++; } else if (this.Operation == ActionCopyMoveRename.Op.Rename) { stats.FilesRenamed++; } } catch (System.Exception e) { this.Done = true; this.Error = true; this.ErrorText = e.Message; } }
public bool SameSource(ActionCopyMoveRename o) { return(Helpers.Same(this.From, o.From)); }
public bool SameAs(Item o) { ActionCopyMoveRename cmr = o as ActionCopyMoveRename; return((cmr != null) && (this.Operation == cmr.Operation) && Helpers.Same(this.From, cmr.From) && Helpers.Same(this.To, cmr.To)); }