diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CloseTabCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CloseTabCommand.cs index bd66306..cb37b9b 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CloseTabCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CloseTabCommand.cs @@ -10,4 +10,6 @@ public sealed class CloseTabCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Close tab"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyBase64Command.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyBase64Command.cs index a671883..6d3df4f 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyBase64Command.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyBase64Command.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class CopyBase64Command : IIdentifiableUserCommand +public sealed class CopyBase64Command : IIdentifiableUserCommand { public const string CommandName = "copy_base64"; public static CopyBase64Command Instance { get; } = new(); @@ -10,4 +10,6 @@ public class CopyBase64Command : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Copy content as base64 text"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyCommand.cs index 069a69c..5a97be7 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyCommand.cs @@ -10,4 +10,6 @@ public sealed class CopyCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Copy"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyFilesToClipboardCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyFilesToClipboardCommand.cs index 73d500c..037b32d 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyFilesToClipboardCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyFilesToClipboardCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class CopyFilesToClipboardCommand : IIdentifiableUserCommand +public sealed class CopyFilesToClipboardCommand : IIdentifiableUserCommand { public const string CommandName = "copy_to_clipboard"; @@ -11,4 +11,6 @@ public class CopyFilesToClipboardCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Copy to clipbaord"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyNativePathCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyNativePathCommand.cs index b04c54d..ae640ea 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyNativePathCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CopyNativePathCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class CopyNativePathCommand : IIdentifiableUserCommand +public sealed class CopyNativePathCommand : IIdentifiableUserCommand { public const string CommandName = "copy_path"; public static CopyNativePathCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class CopyNativePathCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Copy path"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CreateContainer.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CreateContainer.cs index 00927b0..3473c31 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CreateContainer.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CreateContainer.cs @@ -10,4 +10,6 @@ public sealed class CreateContainer : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Create container"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CreateElementCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CreateElementCommand.cs index 99e2204..d88585f 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CreateElementCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/CreateElementCommand.cs @@ -10,4 +10,6 @@ public sealed class CreateElementCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Create element"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/DeleteCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/DeleteCommand.cs index cd85e39..fab7884 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/DeleteCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/DeleteCommand.cs @@ -1,19 +1,21 @@ namespace FileTime.App.Core.UserCommand; -public class DeleteCommand : IIdentifiableUserCommand +public sealed class DeleteCommand : IIdentifiableUserCommand { public const string SoftDeleteCommandName = "soft_delete"; public const string HardDeleteCommandName = "hard_delete"; - public static DeleteCommand SoftDelete { get; } = new(SoftDeleteCommandName, false); - public static DeleteCommand HardDelete { get; } = new(HardDeleteCommandName, true); + public static DeleteCommand SoftDelete { get; } = new(SoftDeleteCommandName, false, "Delete (soft)"); + public static DeleteCommand HardDelete { get; } = new(HardDeleteCommandName, true, "Delete (hard)"); - private DeleteCommand(string commandName, bool hardDelete) + private DeleteCommand(string commandName, bool hardDelete, string title) { UserCommandID = commandName; IsHardDelete = hardDelete; + Title = title; } public string UserCommandID { get; } public bool IsHardDelete { get; } + public string Title { get; } } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/EnterRapidTravelCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/EnterRapidTravelCommand.cs index 594d6de..e791b74 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/EnterRapidTravelCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/EnterRapidTravelCommand.cs @@ -10,4 +10,6 @@ public sealed class EnterRapidTravelCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Enter rapid travel mode"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/ExitRapidTravelCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/ExitRapidTravelCommand.cs index f352ec6..0647103 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/ExitRapidTravelCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/ExitRapidTravelCommand.cs @@ -10,4 +10,6 @@ public sealed class ExitRapidTravelCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Exit rapid travel mode"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoByFrequencyCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoByFrequencyCommand.cs index f8ae600..e7fe8b2 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoByFrequencyCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoByFrequencyCommand.cs @@ -1,14 +1,16 @@ namespace FileTime.App.Core.UserCommand; -public class GoByFrequencyCommand : IIdentifiableUserCommand +public sealed class GoByFrequencyCommand : IIdentifiableUserCommand { public const string CommandName = "go_by_frequency"; - + public static GoByFrequencyCommand Instance { get; } = new(); - + private GoByFrequencyCommand() { } public string UserCommandID => CommandName; + + public string Title => "Go to frequent place"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToHomeCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToHomeCommand.cs index 7e095a3..94d6202 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToHomeCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToHomeCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class GoToHomeCommand : IIdentifiableUserCommand +public sealed class GoToHomeCommand : IIdentifiableUserCommand { public const string CommandName = "go_to_home"; public static GoToHomeCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class GoToHomeCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Go home"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToPathCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToPathCommand.cs index 4015a27..646c487 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToPathCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToPathCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class GoToPathCommand : IIdentifiableUserCommand +public sealed class GoToPathCommand : IIdentifiableUserCommand { public const string CommandName = "go_to_path"; public static GoToPathCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class GoToPathCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Go to path"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToProviderCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToProviderCommand.cs index e1bc6b3..c32ae1d 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToProviderCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToProviderCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class GoToProviderCommand : IIdentifiableUserCommand +public sealed class GoToProviderCommand : IIdentifiableUserCommand { public const string CommandName = "go_to_provider"; public static GoToProviderCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class GoToProviderCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Go to provider"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToRootCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToRootCommand.cs index 4bee60f..dcd2ed0 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToRootCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoToRootCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class GoToRootCommand : IIdentifiableUserCommand +public sealed class GoToRootCommand : IIdentifiableUserCommand { public const string CommandName = "go_to_root"; public static GoToRootCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class GoToRootCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Go to root"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoUpCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoUpCommand.cs index e73a32c..a028312 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoUpCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/GoUpCommand.cs @@ -10,4 +10,6 @@ public sealed class GoUpCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Go up"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/IIdentifiableUserCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/IIdentifiableUserCommand.cs index 4cfd70d..f56ee90 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/IIdentifiableUserCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/IIdentifiableUserCommand.cs @@ -3,5 +3,5 @@ namespace FileTime.App.Core.UserCommand; public interface IIdentifiableUserCommand : IUserCommand { string UserCommandID { get; } - //string Title { get; } + string Title { get; } } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/IUserCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/IUserCommand.cs index 1354295..506f24b 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/IUserCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/IUserCommand.cs @@ -3,69 +3,4 @@ namespace FileTime.App.Core.UserCommand; public interface IUserCommand { -} - -/*public enum Command -{ - None, - - AutoRefresh, - ChangeTimelineMode, - CloseTab, - Compress, - Copy, - CopyHash, - CopyPath, - CreateContainer, - CreateElement, - Cut, - Edit, - EnterRapidTravel, - ExitRapidTravel, - FindByName, - FindByNameRegex, - GoToHome, - GoToPath, - GoToProvider, - GoToRoot, - GoUp, - HardDelete, - Mark, - MoveCursorDown, - MoveCursorDownPage, - MoveCursorUp, - MoveCursorUpPage, - MoveToFirst, - MoveToLast, - NextTimelineBlock, - NextTimelineCommand, - Open, - OpenInFileBrowser, - OpenOrRun, - PasteMerge, - PasteOverwrite, - PasteSkip, - PinFavorite, - PreviousTimelineBlock, - PreviousTimelineCommand, - Refresh, - Rename, - RunCommand, - ScanContainerSize, - ShowAllShortcut, - SoftDelete, - SwitchToLastTab, - SwitchToTab1, - SwitchToTab2, - SwitchToTab3, - SwitchToTab4, - SwitchToTab5, - SwitchToTab6, - SwitchToTab7, - SwitchToTab8, - TimelinePause, - TimelineRefresh, - TimelineStart, - ToggleAdvancedIcons, - ToggleHidden, -}*/ \ No newline at end of file +} \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MarkCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MarkCommand.cs index 250f2cc..65109a2 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MarkCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MarkCommand.cs @@ -10,4 +10,6 @@ public sealed class MarkCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Select item"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorDownCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorDownCommand.cs index 656040b..17862f8 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorDownCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorDownCommand.cs @@ -10,4 +10,6 @@ public sealed class MoveCursorDownCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Move down"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorDownPageCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorDownPageCommand.cs index 25d7d73..4165321 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorDownPageCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorDownPageCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class MoveCursorDownPageCommand : IIdentifiableUserCommand +public sealed class MoveCursorDownPageCommand : IIdentifiableUserCommand { public const string CommandName = "move_cursor_down_page"; public static MoveCursorDownPageCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class MoveCursorDownPageCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Move down a page"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorToFirstCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorToFirstCommand.cs index a0a7bf7..ad1ac23 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorToFirstCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorToFirstCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class MoveCursorToFirstCommand : IIdentifiableUserCommand +public sealed class MoveCursorToFirstCommand : IIdentifiableUserCommand { public const string CommandName = "move_cursor_to_first"; public static MoveCursorToFirstCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class MoveCursorToFirstCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Move to first"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorToLastCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorToLastCommand.cs index 58b3e4e..7127e50 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorToLastCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorToLastCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class MoveCursorToLastCommand : IIdentifiableUserCommand +public sealed class MoveCursorToLastCommand : IIdentifiableUserCommand { public const string CommandName = "move_cursor_to_last"; public static MoveCursorToLastCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class MoveCursorToLastCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Move to last"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorUpCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorUpCommand.cs index f47df46..f301158 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorUpCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorUpCommand.cs @@ -10,4 +10,6 @@ public sealed class MoveCursorUpCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Move up"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorUpPageCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorUpPageCommand.cs index 4e9f221..86978be 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorUpPageCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/MoveCursorUpPageCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class MoveCursorUpPageCommand : IIdentifiableUserCommand +public sealed class MoveCursorUpPageCommand : IIdentifiableUserCommand { public const string CommandName = "move_cursor_up_page"; public static MoveCursorUpPageCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class MoveCursorUpPageCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Move up by page"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenCommandPaletteCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenCommandPaletteCommand.cs index 459b8e6..9736af7 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenCommandPaletteCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenCommandPaletteCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class OpenCommandPaletteCommand : IIdentifiableUserCommand +public sealed class OpenCommandPaletteCommand : IIdentifiableUserCommand { public const string CommandName = "open_command_palette"; public static OpenCommandPaletteCommand Instance { get; } = new (); @@ -10,4 +10,6 @@ public class OpenCommandPaletteCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Open command palette"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenInDefaultFileExplorerCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenInDefaultFileExplorerCommand.cs index 713947d..fdf41ca 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenInDefaultFileExplorerCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenInDefaultFileExplorerCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class OpenInDefaultFileExplorerCommand : IIdentifiableUserCommand +public sealed class OpenInDefaultFileExplorerCommand : IIdentifiableUserCommand { public const string CommandName = "open_in_default_explorer"; public static OpenInDefaultFileExplorerCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class OpenInDefaultFileExplorerCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Open in default file browser"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenSelectedCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenSelectedCommand.cs index eb6a211..d7228ba 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenSelectedCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/OpenSelectedCommand.cs @@ -10,4 +10,6 @@ public sealed class OpenSelectedCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Open"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PasteCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PasteCommand.cs index 6630feb..eab90af 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PasteCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PasteCommand.cs @@ -8,17 +8,19 @@ public sealed class PasteCommand : IIdentifiableUserCommand public const string PasteOverwriteCommandName = "paste_overwrite"; public const string PasteSkipCommandName = "paste_skip"; - public static readonly PasteCommand Merge = new(PasteMode.Merge, PasteMergeCommandName); - public static readonly PasteCommand Overwrite = new(PasteMode.Overwrite, PasteOverwriteCommandName); - public static readonly PasteCommand Skip = new(PasteMode.Skip, PasteSkipCommandName); + public static readonly PasteCommand Merge = new(PasteMode.Merge, PasteMergeCommandName, "Paste (merge)"); + public static readonly PasteCommand Overwrite = new(PasteMode.Overwrite, PasteOverwriteCommandName, "Paste (overwrite)"); + public static readonly PasteCommand Skip = new(PasteMode.Skip, PasteSkipCommandName, "Paste (skip)"); public PasteMode PasteMode { get; } - private PasteCommand(PasteMode pasteMode, string commandName) + private PasteCommand(PasteMode pasteMode, string commandName, string title) { PasteMode = pasteMode; UserCommandID = commandName; + Title = title; } public string UserCommandID { get; } + public string Title { get; } } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PasteFilesFromClipboardCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PasteFilesFromClipboardCommand.cs index 6d28976..ad72674 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PasteFilesFromClipboardCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PasteFilesFromClipboardCommand.cs @@ -2,22 +2,28 @@ using FileTime.App.Core.Models.Enums; namespace FileTime.App.Core.UserCommand; -public class PasteFilesFromClipboardCommand : IIdentifiableUserCommand +public sealed class PasteFilesFromClipboardCommand : IIdentifiableUserCommand { public const string PasteMergeCommandName = "paste_clipboard_merge"; public const string PasteOverwriteCommandName = "paste_clipboard_overwrite"; public const string PasteSkipCommandName = "paste_clipboard_skip"; - - public static readonly PasteFilesFromClipboardCommand Merge = new(PasteMode.Merge, PasteMergeCommandName); - public static readonly PasteFilesFromClipboardCommand Overwrite = new(PasteMode.Overwrite, PasteOverwriteCommandName); - public static readonly PasteFilesFromClipboardCommand Skip = new(PasteMode.Skip, PasteSkipCommandName); + + public static readonly PasteFilesFromClipboardCommand Merge + = new(PasteMode.Merge, PasteMergeCommandName, "Paste from clipboard (merge)"); + public static readonly PasteFilesFromClipboardCommand Overwrite + = new(PasteMode.Overwrite, PasteOverwriteCommandName, "Paste from clipboard (overwrite)"); + public static readonly PasteFilesFromClipboardCommand Skip + = new(PasteMode.Skip, PasteSkipCommandName, "Paste from clipboard (skip)"); public PasteMode PasteMode { get; } - private PasteFilesFromClipboardCommand(PasteMode pasteMode, string commandName) + private PasteFilesFromClipboardCommand(PasteMode pasteMode, string commandName, string title) { PasteMode = pasteMode; UserCommandID = commandName; + Title = title; } public string UserCommandID { get; } + + public string Title { get; } } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PauseCommandSchedulerCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PauseCommandSchedulerCommand.cs index f897d5d..062fe32 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PauseCommandSchedulerCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/PauseCommandSchedulerCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class PauseCommandSchedulerCommand : IIdentifiableUserCommand +public sealed class PauseCommandSchedulerCommand : IIdentifiableUserCommand { public const string CommandName = "pause_command_scheduler"; public static PauseCommandSchedulerCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class PauseCommandSchedulerCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Pause command scheduler"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RefreshCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RefreshCommand.cs index ace54a1..4a05d8e 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RefreshCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RefreshCommand.cs @@ -10,4 +10,6 @@ public sealed class RefreshCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Refresh"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RenameCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RenameCommand.cs index a2cced2..69310f5 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RenameCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RenameCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class RenameCommand : IIdentifiableUserCommand +public sealed class RenameCommand : IIdentifiableUserCommand { public const string CommandName = "rename"; public static RenameCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class RenameCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Rename"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RunOrOpenCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RunOrOpenCommand.cs index 1e865dc..8f05811 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RunOrOpenCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/RunOrOpenCommand.cs @@ -1,6 +1,6 @@ namespace FileTime.App.Core.UserCommand; -public class RunOrOpenCommand : IIdentifiableUserCommand +public sealed class RunOrOpenCommand : IIdentifiableUserCommand { public const string CommandName = "run_or_open"; public static RunOrOpenCommand Instance { get; } = new(); @@ -10,4 +10,6 @@ public class RunOrOpenCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + + public string Title => "Open or run"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SearchCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SearchCommand.cs index 16c6868..1ea18fc 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SearchCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SearchCommand.cs @@ -18,21 +18,24 @@ public class SearchCommand : IUserCommand } } -public class IdentifiableSearchCommand : SearchCommand, IIdentifiableUserCommand +public sealed class IdentifiableSearchCommand : SearchCommand, IIdentifiableUserCommand { public const string SearchByNameContainsCommandName = "search_name_contains"; public static readonly IdentifiableSearchCommand SearchByNameContains = - new(null, SearchType.NameContains, SearchByNameContainsCommandName); + new(null, SearchType.NameContains, SearchByNameContainsCommandName, "Search by name"); private IdentifiableSearchCommand( string? searchText, SearchType searchType, - string commandId) + string commandId, + string title) : base(searchText, searchType) { UserCommandID = commandId; + Title = title; } public string UserCommandID { get; } + public string Title { get; } } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SortItemsCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SortItemsCommand.cs index af2eef9..0401972 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SortItemsCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SortItemsCommand.cs @@ -2,32 +2,33 @@ namespace FileTime.App.Core.UserCommand; -public class SortItemsCommand : IIdentifiableUserCommand +public sealed class SortItemsCommand : IIdentifiableUserCommand { public const string OrderByNameCommandName = "order_by_name"; public const string OrderByNameDescCommandName = "order_by_name_desc"; public const string OrderByDateCommandName = "order_by_date"; public const string OrderByDateDescCommandName = "order_by_date_desc"; - public static readonly SortItemsCommand OrderByNameCommand = - new(OrderByNameCommandName, ItemOrdering.Name); + new(OrderByNameCommandName, ItemOrdering.Name, "Order by name"); public static readonly SortItemsCommand OrderByNameDescCommand = - new(OrderByNameDescCommandName, ItemOrdering.NameDesc); + new(OrderByNameDescCommandName, ItemOrdering.NameDesc, "Order by name (descending)"); public static readonly SortItemsCommand OrderByDateCommand = - new(OrderByDateCommandName, ItemOrdering.LastModifyDate); + new(OrderByDateCommandName, ItemOrdering.LastModifyDate, "Order by date"); public static readonly SortItemsCommand OrderByDateDescCommand = - new(OrderByDateDescCommandName, ItemOrdering.LastModifyDateDesc); + new(OrderByDateDescCommandName, ItemOrdering.LastModifyDateDesc, "Order by date (descending)"); - private SortItemsCommand(string userCommandId, ItemOrdering ordering) + private SortItemsCommand(string userCommandId, ItemOrdering ordering, string title) { UserCommandID = userCommandId; Ordering = ordering; + Title = title; } public string UserCommandID { get; } public ItemOrdering Ordering { get; } + public string Title { get; } } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/StartCommandSchedulerCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/StartCommandSchedulerCommand.cs index f9941be..83b5941 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/StartCommandSchedulerCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/StartCommandSchedulerCommand.cs @@ -10,4 +10,5 @@ public sealed class StartCommandSchedulerCommand : IIdentifiableUserCommand } public string UserCommandID => CommandName; + public string Title => "Start command scheduler"; } \ No newline at end of file diff --git a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SwitchToTabCommand.cs b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SwitchToTabCommand.cs index 2ee13f7..d9fa2f6 100644 --- a/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SwitchToTabCommand.cs +++ b/src/AppCommon/FileTime.App.Core.Abstraction/UserCommand/SwitchToTabCommand.cs @@ -27,8 +27,12 @@ public sealed class SwitchToTabCommand : IIdentifiableUserCommand { TabNumber = tabNumber; UserCommandID = commandName; + Title = tabNumber == -1 + ? "Switch to last tab" + : $"Switch to tab {tabNumber}"; } public string UserCommandID { get; } public int TabNumber { get; } + public string Title { get; } } \ No newline at end of file