private void OverwriteExecute(OverwritePromptInfo aInfo) { DialogResult dr; using (var form = new OverwriteForm( aInfo.dest.FullName, aInfo.dest.Length.ToFormattedSize(), aInfo.entry.Name, aInfo.entry.Size.ToFormattedSize() )) { form.Owner = this; dr = form.ShowDialog(); aInfo.Action = form.Action; } switch (dr) { case DialogResult.Retry: aInfo.task.Action = aInfo.Action; break; case DialogResult.Abort: actionRemembered = aInfo.Action; break; default: break; } }
private OverwriteAction OverwritePrompt(Task task, FileInfo Dest, IArchiveEntry Entry) { overwritePromptMutex.WaitOne(); try { if (task.Action != OverwriteAction.Unspecified) { return(task.Action); } if (actionRemembered != OverwriteAction.Unspecified) { return(actionRemembered); } using (var oi = new OverwritePromptInfo(task, Dest, Entry)) { Invoke(new OverwriteExecuteDelegate(OverwriteExecute), oi); return(oi.Action); } } finally { overwritePromptMutex.ReleaseMutex(); } }
private OverwriteAction OverwritePrompt(Task task, FileInfo Dest, IArchiveEntry Entry) { overwritePromptMutex.WaitOne(); try { if (task.Action != OverwriteAction.Unspecified) { return task.Action; } if (actionRemembered != OverwriteAction.Unspecified) { return actionRemembered; } using (var oi = new OverwritePromptInfo(task, Dest, Entry)) { Invoke(new OverwriteExecuteDelegate(OverwriteExecute), oi); return oi.Action; } } finally { overwritePromptMutex.ReleaseMutex(); } }