public static FileInfo SaveFileDialog(string currentFile, string path, FilesystemFilterSet filterSet, IDialogParent parent) { if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } using var sfd = new SaveFileDialog { FileName = Path.GetFileName(currentFile), InitialDirectory = path, Filter = filterSet.ToString(), RestoreDirectory = true }; var result = parent.ShowDialogWithTempMute(sfd); return(result.IsOk() ? new FileInfo(sfd.FileName) : null); }
public FileInfo OpenFileDialog(string currentFile, string path, FilesystemFilterSet filterSet) { if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } using var ofd = new OpenFileDialog { FileName = !string.IsNullOrWhiteSpace(currentFile) ? Path.GetFileName(currentFile) : $"{Game.FilesystemSafeName()}.{filterSet.Filters.FirstOrDefault()?.Extensions.FirstOrDefault()}", InitialDirectory = path, Filter = filterSet.ToString(), RestoreDirectory = true }; var result = this.ShowDialogWithTempMute(ofd); return(result.IsOk() ? new FileInfo(ofd.FileName) : null); }