public async Task AutoSave() { if (!IsDirty) { return; } if (Document == null) { var index = 1; string path; do { path = Path.Combine(_workingDirectory, DocumentViewModel.GetAutoSaveName("Program" + index++)); } while (File.Exists(path)); Document = DocumentViewModel.CreateAutoSave(path); } await SaveDocument(Document.GetAutoSavePath()).ConfigureAwait(false); }
public async Task AutoSave() { if (!IsDirty) { return; } if (Document == null) { var index = 1; string path; do { path = Path.Combine(_workingDirectory, DocumentViewModel.GetAutoSaveName("Program" + index++)); } while (File.Exists(path)); Document = DocumentViewModel.CreateAutoSave(MainViewModel, path); } await SaveDocument(Document.IsAutoSave?Document.Path // ReSharper disable once AssignNullToNotNullAttribute : Path.Combine(Path.GetDirectoryName(Document.Path), DocumentViewModel.GetAutoSaveName(Document.Name))).ConfigureAwait(false); }
public IEnumerable <OpenDocumentViewModel> LoadAutoSaves(string root) { return(Directory.EnumerateFiles(root, DocumentViewModel.GetAutoSaveName("*"), SearchOption.AllDirectories) .Select(x => new OpenDocumentViewModel(this, DocumentViewModel.CreateAutoSave(this, x)))); }
private IEnumerable <OpenDocumentViewModel> LoadAutoSavedDocuments(string root) { return(EnumerateFilesWithCatch(root, DocumentViewModel.GetAutoSaveName("*")).Select(x => new OpenDocumentViewModel(this, DocumentViewModel.CreateAutoSave(x)))); }