public ExecuteFileOperationEventArgs(FileOperation action, IFileListPaneViewModel sourcePane, IFileListPaneViewModel targetPane, IEnumerable <FileSystemItem> items) { Action = action; SourcePane = sourcePane; TargetPane = targetPane; Items = items; }
public void Delete(IFileListPaneViewModel sourcePane, IEnumerable <FileSystemItem> queue) { SourcePane = sourcePane; TargetPane = null; AsyncJob(() => SourcePane.PopulateQueue(FileOperation.Delete, queue), q => InitializeTransfer(q, FileOperation.Delete), PopulationError); }
private void OnExecuteFileOperation(FileOperation action, IFileListPaneViewModel sourcePane, IFileListPaneViewModel targetPane, IEnumerable <FileSystemItem> items) { switch (action) { case FileOperation.Copy: _transferManager.Copy(sourcePane, targetPane, items); break; case FileOperation.Move: _transferManager.Move(sourcePane, targetPane, items); break; case FileOperation.Delete: _transferManager.Delete(sourcePane, items); break; } }
private void OnCanExecuteFileOperation(CanExecuteFileOperationEventArgs e) { var source = e.Sender as IFileListPaneViewModel; IFileListPaneViewModel target = null; if (e.Sender == LeftPane) { target = RightPane as IFileListPaneViewModel; } if (e.Sender == RightPane) { target = LeftPane as IFileListPaneViewModel; } switch (e.Action) { case FileOperation.Copy: if (!CanExecuteCopyCommand(source, target)) { e.Cancelled = true; } break; case FileOperation.Move: if (!CanExecuteMoveCommand(source, target)) { e.Cancelled = true; } break; case FileOperation.Delete: if (!CanExecuteDeleteCommand(source)) { e.Cancelled = true; } break; } }
public TransferFinishedEventArgs(object sender, IFileListPaneViewModel source, IFileListPaneViewModel target) : base(sender) { Source = source; Target = target; }
private bool CanExecuteMoveCommand(IFileListPaneViewModel sourcePane, IFileListPaneViewModel targetPane) { return(targetPane != null && sourcePane != null && sourcePane.HasValidSelection && !sourcePane.IsBusy && !targetPane.IsBusy && !targetPane.IsReadOnly && !sourcePane.IsReadOnly && !sourcePane.IsInEditMode); }