feat: alternate proxy switch mode "add"

This commit is contained in:
rladenson 2024-11-18 00:30:16 -07:00
parent 2555f7922c
commit 82b57de3e3
9 changed files with 65 additions and 17 deletions

View file

@ -23,7 +23,7 @@ public class SystemConfigPatch: PatchObject
public Partial<bool> HidDisplayCaps { get; set; }
public Partial<string?> NameFormat { get; set; }
public Partial<SystemConfig.HidPadFormat> HidListPadding { get; set; }
public Partial<bool> ProxySwitch { get; set; }
public Partial<SystemConfig.ProxySwitchAction> ProxySwitch { get; set; }
public override Query Apply(Query q) => q.ApplyPatch(wrapper => wrapper
.With("ui_tz", UiTz)
@ -107,7 +107,7 @@ public class SystemConfigPatch: PatchObject
o.Add("hid_list_padding", HidListPadding.Value.ToUserString());
if (ProxySwitch.IsPresent)
o.Add("proxy_switch", ProxySwitch.Value);
o.Add("proxy_switch", ProxySwitch.Value.ToUserString());
if (NameFormat.IsPresent)
o.Add("name_format", NameFormat.Value);
@ -150,7 +150,7 @@ public class SystemConfigPatch: PatchObject
patch.HidDisplayCaps = o.Value<bool>("hid_display_caps");
if (o.ContainsKey("proxy_switch"))
patch.ProxySwitch = o.Value<bool>("proxy_switch");
patch.ProxySwitch = o.Value<SystemConfig.ProxySwitchAction>("proxy_switch");
if (o.ContainsKey("name_format"))
patch.NameFormat = o.Value<string>("name_format");

View file

@ -24,7 +24,7 @@ public class SystemConfig
public bool HidDisplaySplit { get; }
public bool HidDisplayCaps { get; }
public HidPadFormat HidListPadding { get; }
public bool ProxySwitch { get; }
public ProxySwitchAction ProxySwitch { get; }
public string NameFormat { get; }
public enum HidPadFormat
@ -33,6 +33,12 @@ public class SystemConfig
Left = 1,
Right = 2,
}
public enum ProxySwitchAction
{
Off = 0,
New = 1,
Add = 2,
}
}
public static class SystemConfigExt
@ -54,7 +60,7 @@ public static class SystemConfigExt
o.Add("hid_display_split", cfg.HidDisplaySplit);
o.Add("hid_display_caps", cfg.HidDisplayCaps);
o.Add("hid_list_padding", cfg.HidListPadding.ToUserString());
o.Add("proxy_switch", cfg.ProxySwitch);
o.Add("proxy_switch", cfg.ProxySwitch.ToUserString());
o.Add("name_format", cfg.NameFormat);
o.Add("description_templates", JArray.FromObject(cfg.DescriptionTemplates));
@ -67,4 +73,7 @@ public static class SystemConfigExt
if (val == SystemConfig.HidPadFormat.None) return "off";
return val.ToString().ToLower();
}
public static string ToUserString(this SystemConfig.ProxySwitchAction val) => val.ToString().ToLower();
}