private void FinishSavingArchive(object obj, LoadingStateChangedEventArgs args) { if (args.LoadingState == TaskLoadingState.Ready) { _archiveFileService.LoadingStateChanged -= FinishSavingArchive; _taskFileService.Sync(); } }
public void InvokeLoadingStateChanged(LoadingStateChangedEventArgs e) { var handler = LoadingStateChanged; handler?.Invoke(this, e); }
private void ArchiveTasks(object obj, LoadingStateChangedEventArgs args) { if (args.LoadingState != TaskLoadingState.Ready) { return; } _archiveFileService.LoadingStateChanged -= ArchiveTasks; // 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(); _archiveFileService.LoadingStateChanged += FinishSavingArchive; _archiveFileService.Sync(); }