Files
AutumnLauncher/AutumnLauncher.CLI/Options.cs

73 lines
2.2 KiB
C#

using CommandLine;
namespace AutumnLauncher.CLI;
// Command-line options for the --run argument
[Verb("run", HelpText = "Run a game.")]
public class RunOptions
{
[Option('i', "id", Required = true, HelpText = "Game ID.")]
public int Id { get; set; }
}
// Command-line options for the --remove argument
[Verb("remove", HelpText = "Remove a game.")]
public class RemoveOptions
{
[Option('i', "id", Required = true, HelpText = "Game ID.")]
public int Id { get; set; }
}
// Command-line options for the --list argument
[Verb("list", HelpText = "List all games.")]
public class ListOptions
{
}
// Command-line options for the --add argument
[Verb("add", HelpText = "Add a game.")]
public class AddOptions
{
[Option('n', "name", Required = true, HelpText = "Game name.")]
public string? Name { get; set; }
[Option('d', "developer", Required = true, HelpText = "Game developer.")]
public string? Developer { get; set; }
[Option('r', "date", Required = true, HelpText = "Release date.")]
public string? Date { get; set; }
[Option('g', "genre", Required = true, HelpText = "Game genre.")]
public string? Genre { get; set; }
[Option('t', "type", Required = true, HelpText = "Game type.")]
public string? Type { get; set; }
[Option('p', "path", Required = true, HelpText = "Game path.")]
public string? Path { get; set; }
}
[Verb("edit", HelpText = "Add a game.")]
public class EditOptions
{
[Option('i', "id", Required = true, HelpText = "Game id.")]
public int Id { get; set; }
[Option('n', "name", Required = false, HelpText = "Game name.")]
public string? Name { get; set; }
[Option('d', "developer", Required = false, HelpText = "Game developer.")]
public string? Developer { get; set; }
[Option('r', "date", Required = false, HelpText = "Release date.")]
public string? Date { get; set; }
[Option('g', "genre", Required = false, HelpText = "Game genre.")]
public string? Genre { get; set; }
[Option('t', "type", Required = false, HelpText = "Game type.")]
public string? Type { get; set; }
[Option('p', "path", Required = false, HelpText = "Game path.")]
public string? Path { get; set; }
}