private async void ArchiveTasks() { try { _taskFileService.LoadingState = TaskLoadingState.Syncing; await _archiveFileService.Sync(); // TODO Have setting for preserving line numbers var completedTasks = _taskFileService.TaskList.RemoveCompletedTasks(false); foreach (var completedTask in completedTasks) { _archiveFileService.TaskList.Add(completedTask); } _archiveFileService.SaveTasks(); _taskFileService.SaveTasks(); await _archiveFileService.Sync(); await _taskFileService.Sync(); Debug.WriteLine($">>>>> MainViewModel ArchiveTasks 257: {LocalHasChanges}"); } catch (Exception ex) { Messenger.Default.Send(new ArchiveErrorMessage(ex)); } finally { _taskFileService.LoadingState = TaskLoadingState.Ready; } }
private void RemoveSelectedTasks() { if (_selectedTasks.Count == 0) { return; } _workingWithSelectedTasks = true; foreach (var task in _selectedTasks) { if (task != null) { TaskList.Delete(task); } } _selectedTasks.Clear(); _taskFileService.SaveTasks(); _workingWithSelectedTasks = false; }