62 lines
1.3 KiB
C#
62 lines
1.3 KiB
C#
namespace TaskbarLauncher.Models;
|
|
|
|
public sealed class LauncherConfig
|
|
{
|
|
public string Hotkey { get; set; } = "Ctrl+Alt+Space";
|
|
|
|
public LauncherDisplayMode DisplayMode { get; set; } = LauncherDisplayMode.CompactList;
|
|
|
|
public LauncherThemeScheme ThemeScheme { get; set; } = LauncherThemeScheme.MarkHaven;
|
|
|
|
public List<LauncherItem> RecentItems { get; set; } = [];
|
|
|
|
public List<LauncherItem> Items { get; set; } = [];
|
|
}
|
|
|
|
public sealed class LauncherItem
|
|
{
|
|
public string Title { get; set; } = "";
|
|
|
|
public LauncherItemType Type { get; set; } = LauncherItemType.App;
|
|
|
|
public string Target { get; set; } = "";
|
|
|
|
public string? Arguments { get; set; }
|
|
|
|
public string? IconPath { get; set; }
|
|
|
|
public bool IsFavorite { get; set; }
|
|
|
|
public bool IsDisabled { get; set; }
|
|
|
|
public LauncherDisplayMode DisplayMode { get; set; } = LauncherDisplayMode.CompactList;
|
|
|
|
public List<LauncherItem> Children { get; set; } = [];
|
|
}
|
|
|
|
public enum LauncherItemType
|
|
{
|
|
App,
|
|
Folder,
|
|
File,
|
|
Website,
|
|
Menu
|
|
}
|
|
|
|
public enum LauncherDisplayMode
|
|
{
|
|
LargeIconOnly,
|
|
SmallIconWithText,
|
|
LargeIconWithText,
|
|
CompactList
|
|
}
|
|
|
|
public enum LauncherThemeScheme
|
|
{
|
|
MarkHaven,
|
|
MGETBlueOrange,
|
|
MGETOrange,
|
|
System,
|
|
WindowsClassic
|
|
}
|