using Wino.Core.Domain.Enums; namespace Wino.Core.Domain.Models; /// /// Result returned from keyboard shortcut dialog. /// public class KeyboardShortcutDialogResult { /// /// Whether the dialog was completed successfully. /// public bool IsSuccess { get; set; } /// /// The application mode selected by the user. /// public WinoApplicationMode Mode { get; set; } = WinoApplicationMode.Mail; /// /// The key combination entered by the user. /// public string Key { get; set; } = string.Empty; /// /// The modifier keys selected by the user. /// public ModifierKeys ModifierKeys { get; set; } /// /// The shortcut action selected by the user. /// public KeyboardShortcutAction Action { get; set; } /// /// Creates a successful result. /// public static KeyboardShortcutDialogResult Success(WinoApplicationMode mode, string key, ModifierKeys modifierKeys, KeyboardShortcutAction action) { return new KeyboardShortcutDialogResult { IsSuccess = true, Mode = mode, Key = key, ModifierKeys = modifierKeys, Action = action }; } /// /// Creates a canceled result. /// public static KeyboardShortcutDialogResult Canceled() { return new KeyboardShortcutDialogResult { IsSuccess = false }; } }