using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Controls; using Tango.Core.Commands; using Tango.FileSystem; namespace Tango.FSE.Common.Storage { /// /// Represents a local storage provider for browsing through the local file system. /// public interface IStorageProvider { /// /// Gets or sets a value indicating whether use the native file system dialogs. /// bool UseNativeDialogs { get; set; } /// /// Invokes a single file open dialog. /// /// The title. /// The filter. /// The initial folder. /// Task OpenFile(String title, String filter = null, String initialFolder = null); /// /// Invokes a multi select file open dialog. /// /// The title. /// The filter. /// The initial folder. /// Task OpenFiles(String title, String filter = null, String initialFolder = null); /// /// Invokes a multi select file/folder open dialog. /// /// The title. /// The filter. /// The initial folder. /// Task SelectFilesAndFolders(String title, String filter = null, String initialFolder = null); /// /// Invokes a file save dialog. /// /// The title. /// The filter. /// Default name of the file. /// The default extension. /// The initial folder. /// Task SaveFile(String title, String filter = null, String defaultFileName = null, String defaultExtension = null, String initialFolder = null); /// /// Invokes a single folder selection dialog. /// /// The title. /// The initial folder. /// Task SelectFolder(String title, String initialFolder = null); /// /// Opens the windows explorer and select the specified file or folder. /// /// The file or folder path. /// Task ShowInExplorer(String path); } }