bool SaveAs() { if (ProgramProvider.Program == null) { return(true); } var filename = FilenameProvider.GetSaveFileName(Resources.Strings.TitleBarViewModel_SaveProgramAs); if (!string.IsNullOrEmpty(filename)) { return(false); } Mouse.OverrideCursor = Cursors.Wait; var result = ProgramAccessor.Save(filename, ProgramProvider.Program); Mouse.OverrideCursor = null; if (result) { StatusUpdateProvider.Publish(string.Format(Resources.Strings.TitleBarViewModel_SavedProgramAs, ProgramProvider.Program.FileName)); return(true); } StatusUpdateProvider.Publish(string.Format(Resources.Strings.TitleBarViewModel_CouldNotSaveProgram, ProgramProvider.Program.FileName)); return(false); }
public void GivenFileWithoutExtension_FilePrefixIsAdded() { var provider = new FilenameProvider(); var outputFilename = provider.GetOutputFilename("input"); Assert.AreEqual("input-sorted.txt", outputFilename); }
bool Load() { var filename = FilenameProvider.GetLoadFileName(); if (string.IsNullOrEmpty(filename)) { return(false); } Mouse.OverrideCursor = Cursors.Wait; ProgramProvider.Program = ProgramAccessor.Load(filename); Mouse.OverrideCursor = null; StatusUpdateProvider.Publish(string.Format(Resources.Strings.TitleBarViewModel_LoadedProgram, filename)); return(true); }
bool EnsureSaved() { if (ProgramProvider.Program == null || ProgramProvider.Program.IsModified == false) { return(true); } var fileName = "Untitled"; if (ProgramProvider.Program != null && !string.IsNullOrEmpty(ProgramProvider.Program.FileName)) { fileName = Path.GetFileName(ProgramProvider.Program.FileName); } var title = string.Format(Resources.Strings.TitleBarViewModel_DoYouWantToSave, fileName); var filename = FilenameProvider.GetSaveFileName(title, fileName); return(!string.IsNullOrEmpty(filename) && Save()); }
public void Path_with_subdirectory() { var result = new FilenameProvider().GetFilenames("testdata"); Assert.That(result, Is.EquivalentTo(new[] { "testdata\\A.cs", "testdata\\folder\\B.cs" })); }