XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEToolBox

【WPF】XFE工具箱

公开
关注 0 Fork 0 Star 0
UTF-8
using CommunityToolkit.Mvvm.ComponentModel;

namespace XFEToolBox.Tools.SpaceEngineers;

public sealed class ManagerSettings
{
    public string Bin64Path { get; set; } = "";
    public string LauncherPath { get; set; } = "";
    public string BridgePath { get; set; } = "";
    public string ProfilePath { get; set; } = "";
    public List<string> Arguments { get; set; } = [];
    public List<string> KnownLauncherPaths { get; set; } = [];
    public bool AutoRestartAfterApply { get; set; }
    public bool RestartOnLocalChanges { get; set; }
    public int CloseTimeoutSeconds { get; set; } = 120;
}

public enum PluginCategory { Local }
public sealed class PluginRow : ObservableObject
{
    public string Id { get; set; } = "";
    public string Name { get; set; } = "";
    public string Location { get; set; } = "";
    public string SourcePath { get; set; } = "";
    public string Description { get; set; } = "";
    public PluginCategory Category { get; set; }
    private bool isEnabled;
    public bool IsEnabled { get => isEnabled; set => SetProperty(ref isEnabled, value); }
    public string CategoryName => "XFE 插件";
}

public sealed class ManagerState
{
    public bool IsRunning { get; init; }
    public string ProcessStatus { get; init; } = "游戏未运行";
    public string LoaderStatus { get; init; } = "尚未构建 XFE 加载器";
    public IReadOnlyList<PluginRow> Plugins { get; init; } = [];
}