|
|
@ -1,4 +1,7 @@ |
|
|
|
namespace StabilityMatrix.Avalonia.Models; |
|
|
|
using System; |
|
|
|
|
|
|
|
using CommandLine; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
namespace StabilityMatrix.Avalonia.Models; |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// Command line arguments passed to the application. |
|
|
|
/// Command line arguments passed to the application. |
|
|
@ -8,41 +11,70 @@ public class AppArgs |
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// Whether to enable debug mode |
|
|
|
/// Whether to enable debug mode |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("debug", HelpText = "Enable debug mode")] |
|
|
|
public bool DebugMode { get; set; } |
|
|
|
public bool DebugMode { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// Whether to use the exception dialog while debugger is attached. |
|
|
|
/// Whether to use the exception dialog while debugger is attached. |
|
|
|
/// When no debugger is attached, the exception dialog is always used. |
|
|
|
/// When no debugger is attached, the exception dialog is always used. |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("debug-exception-dialog", HelpText = "Use exception dialog while debugger is attached")] |
|
|
|
public bool DebugExceptionDialog { get; set; } |
|
|
|
public bool DebugExceptionDialog { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// Whether to use Sentry when a debugger is attached. |
|
|
|
/// Whether to use Sentry when a debugger is attached. |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("debug-sentry", HelpText = "Use Sentry when debugger is attached")] |
|
|
|
public bool DebugSentry { get; set; } |
|
|
|
public bool DebugSentry { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// Whether to force show the one-click install dialog. |
|
|
|
/// Whether to force show the one-click install dialog. |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("debug-one-click-install", HelpText = "Force show the one-click install dialog")] |
|
|
|
public bool DebugOneClickInstall { get; set; } |
|
|
|
public bool DebugOneClickInstall { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// Whether to disable Sentry. |
|
|
|
/// Whether to disable Sentry. |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("no-sentry", HelpText = "Disable Sentry")] |
|
|
|
public bool NoSentry { get; set; } |
|
|
|
public bool NoSentry { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// Whether to disable window chrome effects |
|
|
|
/// Whether to disable window chrome effects |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("no-window-chrome-effects", HelpText = "Disable window chrome effects")] |
|
|
|
public bool NoWindowChromeEffects { get; set; } |
|
|
|
public bool NoWindowChromeEffects { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// Flag to indicate if we should reset the saved window position back to (O,0) |
|
|
|
/// Flag to indicate if we should reset the saved window position back to (O,0) |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("reset-window-position", HelpText = "Reset the saved window position back to (0,0)")] |
|
|
|
public bool ResetWindowPosition { get; set; } |
|
|
|
public bool ResetWindowPosition { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// Flag for disabling hardware acceleration / GPU rendering |
|
|
|
/// Flag for disabling hardware acceleration / GPU rendering |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("disable-gpu-rendering", HelpText = "Disable hardware acceleration / GPU rendering")] |
|
|
|
public bool DisableGpuRendering { get; set; } |
|
|
|
public bool DisableGpuRendering { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
|
|
|
/// Override global app data directory |
|
|
|
|
|
|
|
/// Defaults to (%APPDATA%|~/.config)/StabilityMatrix |
|
|
|
|
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("global-dir", HelpText = "Override global app data directory")] |
|
|
|
|
|
|
|
public string? GlobalDirectory { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
|
|
|
/// Override data directory |
|
|
|
|
|
|
|
/// This takes precedence over relative portable directory and global directory |
|
|
|
|
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("data-dir", HelpText = "Override data directory")] |
|
|
|
|
|
|
|
public string? DataDirectory { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
|
|
|
/// Custom Uri protocol handler |
|
|
|
|
|
|
|
/// This will send the Uri to the running instance of the app via IPC and exit |
|
|
|
|
|
|
|
/// </summary> |
|
|
|
|
|
|
|
[Option("uri", Hidden = true)] |
|
|
|
|
|
|
|
public string? Uri { get; set; } |
|
|
|
} |
|
|
|
} |
|
|
|