| using System; |
| using System; |
| using System.Collections.Generic; |
| using System.Collections.Generic; |
| using System.Linq; |
| using System.Linq; |
| using System.Text; |
| using System.Text; |
| using System.Threading; |
| using System.Threading; |
| using System.Threading.Tasks; |
| using System.Threading.Tasks; |
| using System.Windows; |
| using System.Windows; |
| using System.Windows.Threading; |
| using System.Windows.Threading; |
| |
| |
| namespace Playnite.SDK |
| namespace Playnite.SDK |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Represents message box response options. |
| /// Represents message box response options. |
| /// </summary> |
| /// </summary> |
| public class MessageBoxOption |
| public class MessageBoxOption |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Gets or sets title of response option. |
| /// Gets or sets title of response option. |
| /// </summary> |
| /// </summary> |
| public string Title { get; set; } |
| public string Title { get; set; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets or sets value indicating whether this is default option. |
| /// Gets or sets value indicating whether this is default option. |
| /// </summary> |
| /// </summary> |
| public bool IsDefault { get; set; } |
| public bool IsDefault { get; set; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets or sets value indicating whether this is option to cancel the request. |
| /// Gets or sets value indicating whether this is option to cancel the request. |
| /// </summary> |
| /// </summary> |
| public bool IsCancel { get; set; } |
| public bool IsCancel { get; set; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new instance of <see cref="MessageBoxOption"/>. |
| /// Creates new instance of <see cref="MessageBoxOption"/>. |
| /// </summary> |
| /// </summary> |
| /// <param name="title"></param> |
| /// <param name="title"></param> |
| /// <param name="isDefault"></param> |
| /// <param name="isDefault"></param> |
| /// <param name="isCancel"></param> |
| /// <param name="isCancel"></param> |
| public MessageBoxOption(string title, bool isDefault = false, bool isCancel = false) |
| public MessageBoxOption(string title, bool isDefault = false, bool isCancel = false) |
| { |
| { |
| Title = title; |
| Title = title; |
| IsDefault = isDefault; |
| IsDefault = isDefault; |
| IsCancel = isCancel; |
| IsCancel = isCancel; |
| } |
| } |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
. | |
| /// Represents message box toggle option. |
| |
| /// </summary> |
| |
| public class MessageBoxToggle : ObservableObject |
| |
| { |
| |
| /// <summary> |
| |
| /// Gets or sets title toggle option. |
| |
| /// </summary> |
| |
| public string Title { get; set; } |
| |
| |
| |
| private bool selected; |
| |
| /// <summary> |
| |
| /// Gets or sets value indicating whether this is option is selected. |
| |
| /// </summary> |
| |
| public bool Selected |
| |
| { |
| |
| get => selected; |
| |
| set |
| |
| { |
| |
| selected = value; |
| |
| OnPropertyChanged(); |
| |
| } |
| |
| } |
| |
| |
| |
| /// <summary> |
| |
| /// |
| |
| /// </summary> |
| |
| /// <param name="title"></param> |
| |
| /// <param name="selected"></param> |
| |
| public MessageBoxToggle(string title, bool selected = false) |
| |
| { |
| |
| Title = title.StartsWith("LOC") ? ResourceProvider.GetString(title) : title; |
| |
| Selected = selected; |
| |
| } |
| |
| } |
| |
| |
| |
| /// <summary> |
| /// Represents arguments for global progress action. |
| /// Represents arguments for global progress action. |
| /// </summary> |
| /// </summary> |
| public class GlobalProgressActionArgs : ObservableObject |
| public class GlobalProgressActionArgs : ObservableObject |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Gets synchronization context of main thread. |
| /// Gets synchronization context of main thread. |
| /// </summary> |
| /// </summary> |
| public SynchronizationContext MainContext { get; } |
| public SynchronizationContext MainContext { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets dispatcher for main UI thread. |
| /// Gets dispatcher for main UI thread. |
| /// </summary> |
| /// </summary> |
| public Dispatcher MainDispatcher { get; } |
| public Dispatcher MainDispatcher { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets cancelation token source. |
| /// Gets cancelation token source. |
| /// </summary> |
| /// </summary> |
. | public CancellationTokenSource CancelToken { get; } |
| public CancellationToken CancelToken { get; } |
| |
| |
| private double progressMaxValue = 0; |
| private double progressMaxValue = 0; |
| /// <summary> |
| /// <summary> |
| /// Gets or sets maximum value represented on progress track. |
| /// Gets or sets maximum value represented on progress track. |
| /// </summary> |
| /// </summary> |
| public double ProgressMaxValue |
| public double ProgressMaxValue |
| { |
| { |
| get => progressMaxValue; |
| get => progressMaxValue; |
| set |
| set |
| { |
| { |
| progressMaxValue = value; |
| progressMaxValue = value; |
| MainDispatcher?.Invoke(() => OnPropertyChanged(), DispatcherPriority.Send); |
| MainDispatcher?.Invoke(() => OnPropertyChanged(), DispatcherPriority.Send); |
| } |
| } |
| } |
| } |
| |
| |
| private double currentProgressValue = 0; |
| private double currentProgressValue = 0; |
| /// <summary> |
| /// <summary> |
| /// Gets or sets currect value represented on progress track. |
| /// Gets or sets currect value represented on progress track. |
| /// </summary> |
| /// </summary> |
| public double CurrentProgressValue |
| public double CurrentProgressValue |
| { |
| { |
| get => currentProgressValue; |
| get => currentProgressValue; |
| set |
| set |
| { |
| { |
| currentProgressValue = value; |
| currentProgressValue = value; |
| MainDispatcher?.Invoke(() => OnPropertyChanged(), DispatcherPriority.Send); |
| MainDispatcher?.Invoke(() => OnPropertyChanged(), DispatcherPriority.Send); |
| } |
| } |
| } |
| } |
| |
| |
| private string text; |
| private string text; |
| /// <summary> |
| /// <summary> |
| /// Gets or sets progress text. |
| /// Gets or sets progress text. |
| /// </summary> |
| /// </summary> |
| public string Text |
| public string Text |
| { |
| { |
| get => text; |
| get => text; |
| set |
| set |
| { |
| { |
| text = value; |
| text = value; |
| MainDispatcher?.Invoke(() => OnPropertyChanged(), DispatcherPriority.Send); |
| MainDispatcher?.Invoke(() => OnPropertyChanged(), DispatcherPriority.Send); |
| } |
| } |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new instance of <see cref="GlobalProgressActionArgs"/>. |
| /// Creates new instance of <see cref="GlobalProgressActionArgs"/>. |
| /// </summary> |
| /// </summary> |
| /// <param name="mainContext"></param> |
| /// <param name="mainContext"></param> |
| /// <param name="mainDispatcher"></param> |
| /// <param name="mainDispatcher"></param> |
| /// <param name="cancelToken"></param> |
| /// <param name="cancelToken"></param> |
. | public GlobalProgressActionArgs(SynchronizationContext mainContext, Dispatcher mainDispatcher, CancellationTokenSource cancelToken) |
| public GlobalProgressActionArgs(SynchronizationContext mainContext, Dispatcher mainDispatcher, CancellationToken cancelToken) |
| { |
| { |
| MainContext = mainContext; |
| MainContext = mainContext; |
| MainDispatcher = mainDispatcher; |
| MainDispatcher = mainDispatcher; |
| CancelToken = cancelToken; |
| CancelToken = cancelToken; |
| } |
| } |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Represents result of global progress dialog. |
| /// Represents result of global progress dialog. |
| /// </summary> |
| /// </summary> |
| public class GlobalProgressResult |
| public class GlobalProgressResult |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Gets failure exception record. |
| /// Gets failure exception record. |
| /// </summary> |
| /// </summary> |
| public Exception Error { get; } |
| public Exception Error { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets execution result. |
| /// Gets execution result. |
| /// </summary> |
| /// </summary> |
| public bool? Result { get; } |
| public bool? Result { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets value indicating whether the action was canceled by user. |
| /// Gets value indicating whether the action was canceled by user. |
| /// </summary> |
| /// </summary> |
| public bool Canceled { get; } |
| public bool Canceled { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new instance of <see cref="GlobalProgressResult"/>. |
| /// Creates new instance of <see cref="GlobalProgressResult"/>. |
| /// </summary> |
| /// </summary> |
| /// <param name="result"></param> |
| /// <param name="result"></param> |
| /// <param name="canceled"></param> |
| /// <param name="canceled"></param> |
| /// <param name="error"></param> |
| /// <param name="error"></param> |
| public GlobalProgressResult(bool? result, bool canceled, Exception error) |
| public GlobalProgressResult(bool? result, bool canceled, Exception error) |
| { |
| { |
| Result = result; |
| Result = result; |
| Error = error; |
| Error = error; |
| Canceled = canceled; |
| Canceled = canceled; |
| } |
| } |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Represents option for global progress dialog. |
| /// Represents option for global progress dialog. |
| /// </summary> |
| /// </summary> |
| public class GlobalProgressOptions |
| public class GlobalProgressOptions |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Gets or sets progress text. |
| /// Gets or sets progress text. |
| /// </summary> |
| /// </summary> |
| public string Text { get; set; } |
| public string Text { get; set; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets or sets value indicating whether the progress can be canceled. |
| /// Gets or sets value indicating whether the progress can be canceled. |
| /// </summary> |
| /// </summary> |
| public bool Cancelable { get; set; } |
| public bool Cancelable { get; set; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets or sets value indicating whether the progress is indeterminated. |
| /// Gets or sets value indicating whether the progress is indeterminated. |
| /// </summary> |
| /// </summary> |
| public bool IsIndeterminate { get; set; } = true; |
| public bool IsIndeterminate { get; set; } = true; |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new instance of <see cref="GlobalProgressOptions"/>. |
| /// Creates new instance of <see cref="GlobalProgressOptions"/>. |
| /// </summary> |
| /// </summary> |
| /// <param name="text"></param> |
| /// <param name="text"></param> |
| public GlobalProgressOptions(string text) |
| public GlobalProgressOptions(string text) |
| { |
| { |
| Text = text; |
| Text = text; |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new instance of <see cref="GlobalProgressOptions"/>. |
| /// Creates new instance of <see cref="GlobalProgressOptions"/>. |
| /// </summary> |
| /// </summary> |
| /// <param name="text"></param> |
| /// <param name="text"></param> |
| /// <param name="cancelable"></param> |
| /// <param name="cancelable"></param> |
| public GlobalProgressOptions(string text, bool cancelable) : this(text) |
| public GlobalProgressOptions(string text, bool cancelable) : this(text) |
| { |
| { |
| Cancelable = cancelable; |
| Cancelable = cancelable; |
| } |
| } |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Represents item for image selection dialog. |
| /// Represents item for image selection dialog. |
| /// </summary> |
| /// </summary> |
| public class ImageFileOption : GenericItemOption |
| public class ImageFileOption : GenericItemOption |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Gets or sets image path or URL. |
| /// Gets or sets image path or URL. |
| /// </summary> |
| /// </summary> |
| public string Path { get; set; } |
| public string Path { get; set; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new instance of <see cref="ImageFileOption"/>. |
| /// Creates new instance of <see cref="ImageFileOption"/>. |
| /// </summary> |
| /// </summary> |
| public ImageFileOption() : base() |
| public ImageFileOption() : base() |
| { |
| { |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new instance of <see cref="ImageFileOption"/>. |
| /// Creates new instance of <see cref="ImageFileOption"/>. |
| /// </summary> |
| /// </summary> |
| /// <param name="path"></param> |
| /// <param name="path"></param> |
| public ImageFileOption(string path) |
| public ImageFileOption(string path) |
| { |
| { |
| Path = path; |
| Path = path; |
| } |
| } |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Represents item for item selection dialogs. |
| /// Represents item for item selection dialogs. |
| /// </summary> |
| /// </summary> |
| public class GenericItemOption |
| public class GenericItemOption |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Gets or sets game name. |
| /// Gets or sets game name. |
| /// </summary> |
| /// </summary> |
| public string Name { get; set; } |
| public string Name { get; set; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets or sets search result's description. |
| /// Gets or sets search result's description. |
| /// </summary> |
| /// </summary> |
| public string Description { get; set; } |
| public string Description { get; set; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new instance of <see cref="GenericItemOption"/>. |
| /// Creates new instance of <see cref="GenericItemOption"/>. |
| /// </summary> |
| /// </summary> |
| public GenericItemOption() |
| public GenericItemOption() |
| { |
| { |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new instance of <see cref="GenericItemOption"/>. |
| /// Creates new instance of <see cref="GenericItemOption"/>. |
| /// </summary> |
| /// </summary> |
| /// <param name="name"></param> |
| /// <param name="name"></param> |
| /// <param name="description"></param> |
| /// <param name="description"></param> |
| public GenericItemOption(string name, string description) |
| public GenericItemOption(string name, string description) |
| { |
| { |
| Name = name; |
| Name = name; |
| Description = description; |
| Description = description; |
| } |
| } |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Refresents result of selection string dialog operation. |
| /// Refresents result of selection string dialog operation. |
| /// </summary> |
| /// </summary> |
| public class StringSelectionDialogResult |
| public class StringSelectionDialogResult |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Gets or sets dialog result. True if user confirmed selected otherwise false. |
| /// Gets or sets dialog result. True if user confirmed selected otherwise false. |
| /// </summary> |
| /// </summary> |
. | public bool Result |
| public bool Result { get; set; } |
| { |
| |
| get; set; |
| |
| } |
| |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets or sets string selected by user. |
| /// Gets or sets string selected by user. |
| /// </summary> |
| /// </summary> |
. | public string SelectedString |
| public string SelectedString { get; set; } |
| { |
| |
| get; set; |
| |
| } |
| |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new instance of StringSelectionDialogResult. |
| /// Creates new instance of StringSelectionDialogResult. |
| /// </summary> |
| /// </summary> |
| /// <param name="result">Dialog result.</param> |
| /// <param name="result">Dialog result.</param> |
| /// <param name="selectedString">Selected string.</param> |
| /// <param name="selectedString">Selected string.</param> |
| public StringSelectionDialogResult(bool result, string selectedString) |
| public StringSelectionDialogResult(bool result, string selectedString) |
| { |
| { |
| Result = result; |
| Result = result; |
| SelectedString = selectedString; |
| SelectedString = selectedString; |
| } |
| } |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Represents option for new window creation. |
| /// Represents option for new window creation. |
| /// </summary> |
| /// </summary> |
| public class WindowCreationOptions |
| public class WindowCreationOptions |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Gets or sets value indicating whether the minimize button should be shown. |
| /// Gets or sets value indicating whether the minimize button should be shown. |
| /// </summary> |
| /// </summary> |
| public bool ShowMinimizeButton { get; set; } = true; |
| public bool ShowMinimizeButton { get; set; } = true; |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets or sets value indicating whether the maximize button should be shown. |
| /// Gets or sets value indicating whether the maximize button should be shown. |
| /// </summary> |
| /// </summary> |
| public bool ShowMaximizeButton { get; set; } = true; |
| public bool ShowMaximizeButton { get; set; } = true; |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets or sets value indicating whether the close button should be shown. |
| /// Gets or sets value indicating whether the close button should be shown. |
| /// </summary> |
| /// </summary> |
| public bool ShowCloseButton { get; set; } = true; |
| public bool ShowCloseButton { get; set; } = true; |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Describes object providing methods for dialog based actions. |
| /// Describes object providing methods for dialog based actions. |
| /// </summary> |
| /// </summary> |
| public interface IDialogsFactory |
| public interface IDialogsFactory |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Displays errod dialog window with text message. |
| /// Displays errod dialog window with text message. |
| /// </summary> |
| /// </summary> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <returns></returns> |
| /// <returns></returns> |
| MessageBoxResult ShowErrorMessage(string messageBoxText, string caption); |
| MessageBoxResult ShowErrorMessage(string messageBoxText, string caption); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays dialog window with text message. |
| /// Displays dialog window with text message. |
| /// </summary> |
| /// </summary> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="button">Available response button.</param> |
| /// <param name="button">Available response button.</param> |
| /// <param name="icon">Dialog icon.</param> |
| /// <param name="icon">Dialog icon.</param> |
| /// <returns>Selected dialog response.</returns> |
| /// <returns>Selected dialog response.</returns> |
| MessageBoxResult ShowMessage(string messageBoxText, string caption, MessageBoxButton button, MessageBoxImage icon); |
| MessageBoxResult ShowMessage(string messageBoxText, string caption, MessageBoxButton button, MessageBoxImage icon); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays dialog window with text message. |
| /// Displays dialog window with text message. |
| /// </summary> |
| /// </summary> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="button">Available response button.</param> |
| /// <param name="button">Available response button.</param> |
| /// <returns>Selected dialog response.</returns> |
| /// <returns>Selected dialog response.</returns> |
| MessageBoxResult ShowMessage(string messageBoxText, string caption, MessageBoxButton button); |
| MessageBoxResult ShowMessage(string messageBoxText, string caption, MessageBoxButton button); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays dialog window with text message. |
| /// Displays dialog window with text message. |
| /// </summary> |
| /// </summary> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <returns>Selected dialog response.</returns> |
| /// <returns>Selected dialog response.</returns> |
| MessageBoxResult ShowMessage(string messageBoxText, string caption); |
| MessageBoxResult ShowMessage(string messageBoxText, string caption); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays dialog window with text message. |
| /// Displays dialog window with text message. |
| /// </summary> |
| /// </summary> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <returns>Selected dialog response.</returns> |
| /// <returns>Selected dialog response.</returns> |
| MessageBoxResult ShowMessage(string messageBoxText); |
| MessageBoxResult ShowMessage(string messageBoxText); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays dialog window custom response options. |
| /// Displays dialog window custom response options. |
| /// </summary> |
| /// </summary> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="icon">Dialog icon.</param> |
| /// <param name="icon">Dialog icon.</param> |
| /// <param name="options">Response options.</param> |
| /// <param name="options">Response options.</param> |
| /// <returns>Selected dialog option.</returns> |
| /// <returns>Selected dialog option.</returns> |
| MessageBoxOption ShowMessage(string messageBoxText, string caption, MessageBoxImage icon, List<MessageBoxOption> options); |
| MessageBoxOption ShowMessage(string messageBoxText, string caption, MessageBoxImage icon, List<MessageBoxOption> options); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays system dialog for folder selection. |
| /// Displays system dialog for folder selection. |
| /// </summary> |
| /// </summary> |
| /// <returns>Selected folder path or empty string if user cancels the dialog.</returns> |
| /// <returns>Selected folder path or empty string if user cancels the dialog.</returns> |
| string SelectFolder(); |
| string SelectFolder(); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays system open file dialog. |
| /// Displays system open file dialog. |
| /// </summary> |
| /// </summary> |
| /// <param name="filter">File filter, for example "ZIP Archive|*.zip"</param> |
| /// <param name="filter">File filter, for example "ZIP Archive|*.zip"</param> |
| /// <returns>Selected file path or empty string if user cancels the dialog.</returns> |
| /// <returns>Selected file path or empty string if user cancels the dialog.</returns> |
| string SelectFile(string filter); |
| string SelectFile(string filter); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays system open file dialog allowing to select multiple files. |
| /// Displays system open file dialog allowing to select multiple files. |
| /// </summary> |
| /// </summary> |
| /// <param name="filter">File filter, for example "ZIP Archive|*.zip"</param> |
| /// <param name="filter">File filter, for example "ZIP Archive|*.zip"</param> |
| /// <returns>List of paths or null if user cancels the dialog.</returns> |
| /// <returns>List of paths or null if user cancels the dialog.</returns> |
| List<string> SelectFiles(string filter); |
| List<string> SelectFiles(string filter); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays file open dialog with file filter set to show only image files used for icons. |
| /// Displays file open dialog with file filter set to show only image files used for icons. |
| /// </summary> |
| /// </summary> |
| /// <returns>Selected icon path or empty string if user cancels the dialog.</returns> |
| /// <returns>Selected icon path or empty string if user cancels the dialog.</returns> |
| string SelectIconFile(); |
| string SelectIconFile(); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays file open dialog with file filter set to show only image files. |
| /// Displays file open dialog with file filter set to show only image files. |
| /// </summary> |
| /// </summary> |
| /// <returns>Selected image path or empty string if user cancels the dialog.</returns> |
| /// <returns>Selected image path or empty string if user cancels the dialog.</returns> |
| string SelectImagefile(); |
| string SelectImagefile(); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays system file save dialog. |
| /// Displays system file save dialog. |
| /// </summary> |
| /// </summary> |
| /// <param name="filter">File filter, for example "ZIP Archive|*.zip"</param> |
| /// <param name="filter">File filter, for example "ZIP Archive|*.zip"</param> |
| /// <returns>Selected file path or empty string if user cancels the dialog.</returns> |
| /// <returns>Selected file path or empty string if user cancels the dialog.</returns> |
| string SaveFile(string filter); |
| string SaveFile(string filter); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays system file save dialog. |
| /// Displays system file save dialog. |
| /// </summary> |
| /// </summary> |
| /// <param name="filter">File filter, for example "ZIP Archive|*.zip"</param> |
| /// <param name="filter">File filter, for example "ZIP Archive|*.zip"</param> |
| /// <param name="promptOverwrite">Indicates whether to ask user for file overrite if selected path exists.</param> |
| /// <param name="promptOverwrite">Indicates whether to ask user for file overrite if selected path exists.</param> |
| /// <returns>Selected file path or empty string if user cancels the dialog.</returns> |
| /// <returns>Selected file path or empty string if user cancels the dialog.</returns> |
| string SaveFile(string filter, bool promptOverwrite); |
| string SaveFile(string filter, bool promptOverwrite); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays dialog asking user to input text string. |
| /// Displays dialog asking user to input text string. |
| /// </summary> |
| /// </summary> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="defaultInput">Default string presented in input field.</param> |
| /// <param name="defaultInput">Default string presented in input field.</param> |
| /// <returns>Selection result.</returns> |
| /// <returns>Selection result.</returns> |
| StringSelectionDialogResult SelectString(string messageBoxText, string caption, string defaultInput); |
| StringSelectionDialogResult SelectString(string messageBoxText, string caption, string defaultInput); |
. | |
| |
| |
| /// <summary> |
| |
| /// |
| |
| /// </summary> |
| |
| /// <param name="messageBoxText"></param> |
| |
| /// <param name="caption"></param> |
| |
| /// <param name="defaultInput"></param> |
| |
| /// <param name="options"></param> |
| |
| /// <returns></returns> |
| |
| StringSelectionDialogResult SelectString(string messageBoxText, string caption, string defaultInput, List<MessageBoxToggle> options); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays dialog with textbox allowing to select/copy text. |
| /// Displays dialog with textbox allowing to select/copy text. |
| /// </summary> |
| /// </summary> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="messageBoxText">Dialog message text.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="caption">Dialog window caption.</param> |
| /// <param name="defaultInput">String added into selectable field.</param> |
| /// <param name="defaultInput">String added into selectable field.</param> |
| /// <returns>Selection result.</returns> |
| /// <returns>Selection result.</returns> |
| void ShowSelectableString(string messageBoxText, string caption, string defaultInput); |
| void ShowSelectableString(string messageBoxText, string caption, string defaultInput); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays dialog with an option to choose single image. |
| /// Displays dialog with an option to choose single image. |
| /// </summary> |
| /// </summary> |
| /// <param name="files"></param> |
| /// <param name="files"></param> |
| /// <param name="caption"></param> |
| /// <param name="caption"></param> |
| /// <param name="itemWidth"></param> |
| /// <param name="itemWidth"></param> |
| /// <param name="itemHeight"></param> |
| /// <param name="itemHeight"></param> |
| /// <returns>Null if dialog was canceled otherwise selected <see cref="ImageFileOption"/> object.</returns> |
| /// <returns>Null if dialog was canceled otherwise selected <see cref="ImageFileOption"/> object.</returns> |
| ImageFileOption ChooseImageFile(List<ImageFileOption> files, string caption = null, double itemWidth = 240, double itemHeight = 180); |
| ImageFileOption ChooseImageFile(List<ImageFileOption> files, string caption = null, double itemWidth = 240, double itemHeight = 180); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Displays dialog with an option to choose single item and option to search for different items. |
| /// Displays dialog with an option to choose single item and option to search for different items. |
| /// </summary> |
| /// </summary> |
| /// <param name="items"></param> |
| /// <param name="items"></param> |
| /// <param name="searchFunction"></param> |
| /// <param name="searchFunction"></param> |
| /// <param name="defaultSearch"></param> |
| /// <param name="defaultSearch"></param> |
| /// <param name="caption"></param> |
| /// <param name="caption"></param> |
| /// <returns>Null if dialog was canceled otherwise selected <see cref="GenericItemOption"/> object.</returns> |
| /// <returns>Null if dialog was canceled otherwise selected <see cref="GenericItemOption"/> object.</returns> |
| GenericItemOption ChooseItemWithSearch(List<GenericItemOption> items, Func<string, List<GenericItemOption>> searchFunction, string defaultSearch = null, string caption = null); |
| GenericItemOption ChooseItemWithSearch(List<GenericItemOption> items, Func<string, List<GenericItemOption>> searchFunction, string defaultSearch = null, string caption = null); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Activates progress dialog blocking app interaction until progress is finished or canceled. |
| /// Activates progress dialog blocking app interaction until progress is finished or canceled. |
| /// </summary> |
| /// </summary> |
| /// <param name="progresAction">Action to be executed.</param> |
| /// <param name="progresAction">Action to be executed.</param> |
| /// <param name="progressOptions">Options for progress dialog.</param> |
| /// <param name="progressOptions">Options for progress dialog.</param> |
| /// <returns>Status of the action execution.</returns> |
| /// <returns>Status of the action execution.</returns> |
| GlobalProgressResult ActivateGlobalProgress(Action<GlobalProgressActionArgs> progresAction, GlobalProgressOptions progressOptions); |
| GlobalProgressResult ActivateGlobalProgress(Action<GlobalProgressActionArgs> progresAction, GlobalProgressOptions progressOptions); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Creates new window with Playnite's default styling applied. |
| /// Creates new window with Playnite's default styling applied. |
| /// </summary> |
| /// </summary> |
| /// <param name="options">Custom window options.</param> |
| /// <param name="options">Custom window options.</param> |
| /// <returns>New window instance.</returns> |
| /// <returns>New window instance.</returns> |
| Window CreateWindow(WindowCreationOptions options); |
| Window CreateWindow(WindowCreationOptions options); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets a window which currently in use an active. |
| /// Gets a window which currently in use an active. |
| /// </summary> |
| /// </summary> |
| /// <returns>Window object.</returns> |
| /// <returns>Window object.</returns> |
| Window GetCurrentAppWindow(); |
| Window GetCurrentAppWindow(); |
| } |
| } |
| } |
| } |
| |
| |