private async Task<IReadOnlyList<IFile>> OpenFilesAsync( OpenFileInteraction openFile ) { Contract.Requires( openFile != null ); Contract.Ensures( Contract.Result<Task<IReadOnlyList<IFile>>>() != null ); var saveButton = openFile.DefaultCommand; var dialog = new FileOpenPicker(); dialog.FileTypeFilter.AddRange( openFile.FileTypeFilter.FixUpExtensions() ); dialog.SuggestedStartLocation = SuggestedStartLocation; dialog.ViewMode = ViewMode; if ( !string.IsNullOrEmpty( SettingsIdentifier ) ) dialog.SettingsIdentifier = SettingsIdentifier; if ( saveButton != null ) dialog.CommitButtonText = saveButton.Name; if ( openFile.Multiselect ) return ( await dialog.PickMultipleFilesAsync() ).Select( f => f.AsFile() ).ToArray(); var file = await dialog.PickSingleFileAsync(); if ( file != null ) return new[] { file.AsFile() }; return new IFile[0]; }
private string QueryLoadFileName() { var interaction = new OpenFileInteraction(); interaction.Filter = _translation.IniFileFilter; interaction.FileName = "PDFCreator.ini"; _interactionInvoker.Invoke(interaction); return(interaction.Success ? interaction.FileName : ""); }
private string QueryLoadFileName() { var interaction = new OpenFileInteraction(); interaction.Filter = _translator.GetTranslation("ApplicationSettingsWindow", "IniFileFilter"); interaction.FileName = "PDFCreator.ini"; _interactionInvoker.Invoke(interaction); return(interaction.Success ? interaction.FileName : ""); }
private void ConvertFileExecute() { var interaction = new OpenFileInteraction(); _interactionInvoker.Invoke(interaction); if (!interaction.Success) { return; } var file = interaction.FileName; _fileConversionHandler.HandleFileList(new List <string> { file }); }
private static void InvokeCallbackCommand( OpenFileInteraction openFile, IReadOnlyList<IFile> files ) { Contract.Requires( openFile != null ); Contract.Requires( files != null ); if ( files.Any() ) { // set file and execute accept openFile.Files.ReplaceAll( files ); openFile.ExecuteDefaultCommand(); } else { // execute cancel openFile.ExecuteCancelCommand(); } }
public string StartOpenFileInteraction(string currentPath, string title, string filter) { var interaction = new OpenFileInteraction(); interaction.Title = title; interaction.Filter = filter; if (!string.IsNullOrWhiteSpace(currentPath)) { interaction.FileName = currentPath; try { interaction.InitialDirectory = Path.GetDirectoryName(currentPath); } catch (ArgumentException) { } } _interactionInvoker.Invoke(interaction); return(interaction.Success ? interaction.FileName : currentPath); }
public void Invoke(OpenFileInteraction interaction) { throw new NotImplementedException(); }