roketto-launch/DTOs/SaveFile/App3Options.cs
2026-05-15 22:34:10 +01:00

58 lines
1.5 KiB
C#

using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using System.Text.Json.Serialization;
namespace RokettoLaunch.DTOs.SaveFile
{
public class App3Options : AppOptionsBase
{
public class Group
{
public string Title { get; set; }
public bool IsExpanded { get; set; } = false;
public List<Item> Items { get; set; } = new List<Item>();
[JsonConverter(typeof(RyzStudio.Text.Json.JsonSizeConverter))]
public Size GridSize { get; set; } = new Size(0, 0);
}
public class Item
{
public string Title { get; set; }
public string ProcessFilename { get; set; }
public string ProcessArgument { get; set; }
public string ProcessWorkingDirectory { get; set; }
public ProcessWindowStyle ProcessWindowStyle { get; set; } = ProcessWindowStyle.Normal;
public bool ProcessAsAdmin { get; set; } = false;
[JsonConverter(typeof(RyzStudio.Text.Json.JsonPointConverter))]
public Point Position { get; set; }
public bool IsGroup { get; set; } = false;
public List<Item> Items { get; set; } = new List<Item>();
public override string ToString()
{
return this.Title?.Trim() ?? string.Empty;
}
}
public new int FileVersion { get; set; } = 3;
public List<Group> Groups { get; set; } = new List<Group>();
}
}