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);
        }
示例#3
0
 public IEnumerable <OpenDocumentViewModel> LoadAutoSaves(string root)
 {
     return(Directory.EnumerateFiles(root, DocumentViewModel.GetAutoSaveName("*"), SearchOption.AllDirectories)
            .Select(x => new OpenDocumentViewModel(this, DocumentViewModel.CreateAutoSave(this, x))));
 }
示例#4
0
 private IEnumerable <OpenDocumentViewModel> LoadAutoSavedDocuments(string root)
 {
     return(EnumerateFilesWithCatch(root, DocumentViewModel.GetAutoSaveName("*")).Select(x =>
                                                                                         new OpenDocumentViewModel(this, DocumentViewModel.CreateAutoSave(x))));
 }