From 826df09a3e1b2d6a0ab3ac5c312bae7e27ad0150 Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Wed, 1 Apr 2026 16:52:55 -0400 Subject: [PATCH] Handle "Default" properties --- SabreTools.Data.Models/ClrMamePro/BiosSet.cs | 2 +- .../ClrMamePro/DipSwitch.cs | 2 +- SabreTools.Data.Models/ClrMamePro/Release.cs | 2 +- SabreTools.Data.Models/Listxml/Adjuster.cs | 2 +- SabreTools.Data.Models/Listxml/BiosSet.cs | 2 +- SabreTools.Data.Models/Listxml/ConfSetting.cs | 2 +- SabreTools.Data.Models/Listxml/DipValue.cs | 2 +- SabreTools.Data.Models/Listxml/RamOption.cs | 2 +- SabreTools.Data.Models/Listxml/SlotOption.cs | 2 +- SabreTools.Data.Models/Logiqx/BiosSet.cs | 2 +- SabreTools.Data.Models/Logiqx/Release.cs | 2 +- SabreTools.Data.Models/Metadata/Adjuster.cs | 5 +- SabreTools.Data.Models/Metadata/BiosSet.cs | 5 +- .../Metadata/ConfSetting.cs | 5 +- SabreTools.Data.Models/Metadata/DipSwitch.cs | 5 +- SabreTools.Data.Models/Metadata/DipValue.cs | 5 +- SabreTools.Data.Models/Metadata/RamOption.cs | 5 +- SabreTools.Data.Models/Metadata/Release.cs | 5 +- SabreTools.Data.Models/Metadata/SlotOption.cs | 5 +- .../OfflineList/InfoBase.cs | 2 +- SabreTools.Data.Models/OfflineList/To.cs | 2 +- .../SoftwareList/DipValue.cs | 2 +- .../DatFileTests.FromMetadata.cs | 32 ++-- .../DatFileTests.ToMetadata.cs | 16 +- .../Formats/Adjuster.cs | 12 +- .../Formats/BiosSet.cs | 19 +- .../Formats/ConfSetting.cs | 12 +- .../Formats/DipSwitch.cs | 12 +- .../Formats/DipValue.cs | 12 +- .../Formats/RamOption.cs | 19 +- .../Formats/Release.cs | 19 +- .../Formats/SlotOption.cs | 19 +- SabreTools.Metadata.Filter/FilterObject.cs | 177 ++++++++---------- .../ClrMameProTests.cs | 12 +- .../ListxmlTests.cs | 24 +-- .../LogiqxTests.cs | 8 +- .../M1Tests.cs | 24 +-- .../MessTests.cs | 24 +-- .../OfflineListTests.cs | 34 ++-- .../SoftwareListTests.cs | 4 +- .../ClrMamePro.Deserializer.cs | 6 +- .../ClrMamePro.Serializer.cs | 6 +- .../Listxml.Deserializer.cs | 12 +- .../Listxml.Serializer.cs | 12 +- .../Logiqx.Deserializer.cs | 4 +- .../Logiqx.Serializer.cs | 4 +- .../SoftwareList.Deserializer.cs | 2 +- .../SoftwareList.Serializer.cs | 2 +- .../ClrMameProTests.cs | 12 +- .../ListxmlTests.cs | 24 +-- .../LogiqxTests.cs | 8 +- .../M1Tests.cs | 24 +-- .../MessTests.cs | 24 +-- .../OfflineListTests.cs | 34 ++-- .../SoftwareListTests.cs | 4 +- .../ClrMamePro.cs | 7 +- SabreTools.Serialization.Readers/Listxml.cs | 13 +- SabreTools.Serialization.Readers/Logiqx.cs | 5 +- SabreTools.Serialization.Readers/M1.cs | 13 +- SabreTools.Serialization.Readers/Mess.cs | 13 +- .../OfflineList.cs | 31 +-- .../SoftwareList.cs | 3 +- .../ClrMamePro.cs | 7 +- SabreTools.Serialization.Writers/Listxml.cs | 13 +- SabreTools.Serialization.Writers/Logiqx.cs | 5 +- SabreTools.Serialization.Writers/M1.cs | 13 +- SabreTools.Serialization.Writers/Mess.cs | 13 +- .../OfflineList.cs | 4 +- .../SabreTools.Serialization.Writers.csproj | 1 + .../SoftwareList.cs | 3 +- 70 files changed, 444 insertions(+), 425 deletions(-) diff --git a/SabreTools.Data.Models/ClrMamePro/BiosSet.cs b/SabreTools.Data.Models/ClrMamePro/BiosSet.cs index 77895d53..c9a79177 100644 --- a/SabreTools.Data.Models/ClrMamePro/BiosSet.cs +++ b/SabreTools.Data.Models/ClrMamePro/BiosSet.cs @@ -12,6 +12,6 @@ namespace SabreTools.Data.Models.ClrMamePro public string? Description { get; set; } /// default - public string? Default { get; set; } + public bool? Default { get; set; } } } diff --git a/SabreTools.Data.Models/ClrMamePro/DipSwitch.cs b/SabreTools.Data.Models/ClrMamePro/DipSwitch.cs index 63370948..b75d2785 100644 --- a/SabreTools.Data.Models/ClrMamePro/DipSwitch.cs +++ b/SabreTools.Data.Models/ClrMamePro/DipSwitch.cs @@ -12,6 +12,6 @@ namespace SabreTools.Data.Models.ClrMamePro public string[]? Entry { get; set; } /// default, (yes|no) "no" - public string? Default { get; set; } + public bool? Default { get; set; } } } diff --git a/SabreTools.Data.Models/ClrMamePro/Release.cs b/SabreTools.Data.Models/ClrMamePro/Release.cs index 7ed56e6d..7c6bf0f7 100644 --- a/SabreTools.Data.Models/ClrMamePro/Release.cs +++ b/SabreTools.Data.Models/ClrMamePro/Release.cs @@ -19,6 +19,6 @@ namespace SabreTools.Data.Models.ClrMamePro public string? Date { get; set; } /// default - public string? Default { get; set; } + public bool? Default { get; set; } } } diff --git a/SabreTools.Data.Models/Listxml/Adjuster.cs b/SabreTools.Data.Models/Listxml/Adjuster.cs index 44417c5d..ea99b1d2 100644 --- a/SabreTools.Data.Models/Listxml/Adjuster.cs +++ b/SabreTools.Data.Models/Listxml/Adjuster.cs @@ -12,7 +12,7 @@ namespace SabreTools.Data.Models.Listxml /// (yes|no) "no" [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } [XmlElement("condition")] public Condition? Condition { get; set; } diff --git a/SabreTools.Data.Models/Listxml/BiosSet.cs b/SabreTools.Data.Models/Listxml/BiosSet.cs index f62df74a..2ffdb633 100644 --- a/SabreTools.Data.Models/Listxml/BiosSet.cs +++ b/SabreTools.Data.Models/Listxml/BiosSet.cs @@ -16,6 +16,6 @@ namespace SabreTools.Data.Models.Listxml /// (yes|no) "no" [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } } } diff --git a/SabreTools.Data.Models/Listxml/ConfSetting.cs b/SabreTools.Data.Models/Listxml/ConfSetting.cs index 20f7200b..1d351d0c 100644 --- a/SabreTools.Data.Models/Listxml/ConfSetting.cs +++ b/SabreTools.Data.Models/Listxml/ConfSetting.cs @@ -16,7 +16,7 @@ namespace SabreTools.Data.Models.Listxml /// (yes|no) "no" [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } [XmlElement("condition")] public Condition? Condition { get; set; } diff --git a/SabreTools.Data.Models/Listxml/DipValue.cs b/SabreTools.Data.Models/Listxml/DipValue.cs index 3f61f7fb..cfd96626 100644 --- a/SabreTools.Data.Models/Listxml/DipValue.cs +++ b/SabreTools.Data.Models/Listxml/DipValue.cs @@ -16,7 +16,7 @@ namespace SabreTools.Data.Models.Listxml /// (yes|no) "no" [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } [XmlElement("condition")] public Condition? Condition { get; set; } diff --git a/SabreTools.Data.Models/Listxml/RamOption.cs b/SabreTools.Data.Models/Listxml/RamOption.cs index d1d0b5cf..337d60ba 100644 --- a/SabreTools.Data.Models/Listxml/RamOption.cs +++ b/SabreTools.Data.Models/Listxml/RamOption.cs @@ -11,7 +11,7 @@ namespace SabreTools.Data.Models.Listxml public string? Name { get; set; } [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } [XmlText] public string? Content { get; set; } diff --git a/SabreTools.Data.Models/Listxml/SlotOption.cs b/SabreTools.Data.Models/Listxml/SlotOption.cs index 8f9bb9cf..fbbe9730 100644 --- a/SabreTools.Data.Models/Listxml/SlotOption.cs +++ b/SabreTools.Data.Models/Listxml/SlotOption.cs @@ -16,6 +16,6 @@ namespace SabreTools.Data.Models.Listxml /// (yes|no) "no" [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } } } diff --git a/SabreTools.Data.Models/Logiqx/BiosSet.cs b/SabreTools.Data.Models/Logiqx/BiosSet.cs index 53c13561..f8be9c31 100644 --- a/SabreTools.Data.Models/Logiqx/BiosSet.cs +++ b/SabreTools.Data.Models/Logiqx/BiosSet.cs @@ -16,6 +16,6 @@ namespace SabreTools.Data.Models.Logiqx /// (yes|no) "no" [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } } } diff --git a/SabreTools.Data.Models/Logiqx/Release.cs b/SabreTools.Data.Models/Logiqx/Release.cs index e961fcb3..51a442cb 100644 --- a/SabreTools.Data.Models/Logiqx/Release.cs +++ b/SabreTools.Data.Models/Logiqx/Release.cs @@ -22,6 +22,6 @@ namespace SabreTools.Data.Models.Logiqx /// (yes|no) "no" [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } } } diff --git a/SabreTools.Data.Models/Metadata/Adjuster.cs b/SabreTools.Data.Models/Metadata/Adjuster.cs index b8708904..4e312236 100644 --- a/SabreTools.Data.Models/Metadata/Adjuster.cs +++ b/SabreTools.Data.Models/Metadata/Adjuster.cs @@ -8,6 +8,8 @@ namespace SabreTools.Data.Models.Metadata { #region Properties + public bool? Default { get; set; } + public string? Name { get; set; } #endregion @@ -18,9 +20,6 @@ namespace SabreTools.Data.Models.Metadata [NoFilter] public const string ConditionKey = "condition"; - /// bool - public const string DefaultKey = "default"; - #endregion public Adjuster() => ItemType = ItemType.Adjuster; diff --git a/SabreTools.Data.Models/Metadata/BiosSet.cs b/SabreTools.Data.Models/Metadata/BiosSet.cs index 86dd5efd..19b1c6c7 100644 --- a/SabreTools.Data.Models/Metadata/BiosSet.cs +++ b/SabreTools.Data.Models/Metadata/BiosSet.cs @@ -8,15 +8,14 @@ namespace SabreTools.Data.Models.Metadata { #region Properties + public bool? Default { get; set; } + public string? Name { get; set; } #endregion #region Keys - /// bool - public const string DefaultKey = "default"; - /// string public const string DescriptionKey = "description"; diff --git a/SabreTools.Data.Models/Metadata/ConfSetting.cs b/SabreTools.Data.Models/Metadata/ConfSetting.cs index 996d2b0f..3be87b52 100644 --- a/SabreTools.Data.Models/Metadata/ConfSetting.cs +++ b/SabreTools.Data.Models/Metadata/ConfSetting.cs @@ -8,6 +8,8 @@ namespace SabreTools.Data.Models.Metadata { #region Properties + public bool? Default { get; set; } + public string? Name { get; set; } #endregion @@ -18,9 +20,6 @@ namespace SabreTools.Data.Models.Metadata [NoFilter] public const string ConditionKey = "condition"; - /// (yes|no) "no" - public const string DefaultKey = "default"; - /// string public const string ValueKey = "value"; diff --git a/SabreTools.Data.Models/Metadata/DipSwitch.cs b/SabreTools.Data.Models/Metadata/DipSwitch.cs index fe5127be..58bacdfb 100644 --- a/SabreTools.Data.Models/Metadata/DipSwitch.cs +++ b/SabreTools.Data.Models/Metadata/DipSwitch.cs @@ -8,6 +8,8 @@ namespace SabreTools.Data.Models.Metadata { #region Properties + public bool? Default { get; set; } + public string? Name { get; set; } #endregion @@ -18,9 +20,6 @@ namespace SabreTools.Data.Models.Metadata [NoFilter] public const string ConditionKey = "condition"; - /// (yes|no) "no" - public const string DefaultKey = "default"; - /// DipLocation[] [NoFilter] public const string DipLocationKey = "diplocation"; diff --git a/SabreTools.Data.Models/Metadata/DipValue.cs b/SabreTools.Data.Models/Metadata/DipValue.cs index b8415547..f3906878 100644 --- a/SabreTools.Data.Models/Metadata/DipValue.cs +++ b/SabreTools.Data.Models/Metadata/DipValue.cs @@ -8,6 +8,8 @@ namespace SabreTools.Data.Models.Metadata { #region Properties + public bool? Default { get; set; } + public string? Name { get; set; } #endregion @@ -18,9 +20,6 @@ namespace SabreTools.Data.Models.Metadata [NoFilter] public const string ConditionKey = "condition"; - /// (yes|no) "no" - public const string DefaultKey = "default"; - /// string public const string ValueKey = "value"; diff --git a/SabreTools.Data.Models/Metadata/RamOption.cs b/SabreTools.Data.Models/Metadata/RamOption.cs index b2b82a99..1f7d84ea 100644 --- a/SabreTools.Data.Models/Metadata/RamOption.cs +++ b/SabreTools.Data.Models/Metadata/RamOption.cs @@ -8,6 +8,8 @@ namespace SabreTools.Data.Models.Metadata { #region Properties + public bool? Default { get; set; } + public string? Name { get; set; } #endregion @@ -17,9 +19,6 @@ namespace SabreTools.Data.Models.Metadata /// string public const string ContentKey = "content"; - /// (yes|no) "no" - public const string DefaultKey = "default"; - #endregion public RamOption() => ItemType = ItemType.RamOption; diff --git a/SabreTools.Data.Models/Metadata/Release.cs b/SabreTools.Data.Models/Metadata/Release.cs index ae3ef67a..e76e1d4e 100644 --- a/SabreTools.Data.Models/Metadata/Release.cs +++ b/SabreTools.Data.Models/Metadata/Release.cs @@ -8,6 +8,8 @@ namespace SabreTools.Data.Models.Metadata { #region Properties + public bool? Default { get; set; } + public string? Name { get; set; } #endregion @@ -17,9 +19,6 @@ namespace SabreTools.Data.Models.Metadata /// string public const string DateKey = "date"; - /// (yes|no) "no" - public const string DefaultKey = "default"; - /// string public const string LanguageKey = "language"; diff --git a/SabreTools.Data.Models/Metadata/SlotOption.cs b/SabreTools.Data.Models/Metadata/SlotOption.cs index ff84c17d..a2ec5877 100644 --- a/SabreTools.Data.Models/Metadata/SlotOption.cs +++ b/SabreTools.Data.Models/Metadata/SlotOption.cs @@ -8,15 +8,14 @@ namespace SabreTools.Data.Models.Metadata { #region Properties + public bool? Default { get; set; } + public string? Name { get; set; } #endregion #region Keys - /// (yes|no) "no" - public const string DefaultKey = "default"; - /// string public const string DevNameKey = "devname"; diff --git a/SabreTools.Data.Models/OfflineList/InfoBase.cs b/SabreTools.Data.Models/OfflineList/InfoBase.cs index f5e5a6f5..cb39fc67 100644 --- a/SabreTools.Data.Models/OfflineList/InfoBase.cs +++ b/SabreTools.Data.Models/OfflineList/InfoBase.cs @@ -15,7 +15,7 @@ namespace SabreTools.Data.Models.OfflineList /// Boolean [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } } [XmlRoot("title")] diff --git a/SabreTools.Data.Models/OfflineList/To.cs b/SabreTools.Data.Models/OfflineList/To.cs index 00de0d99..725b0a49 100644 --- a/SabreTools.Data.Models/OfflineList/To.cs +++ b/SabreTools.Data.Models/OfflineList/To.cs @@ -11,7 +11,7 @@ namespace SabreTools.Data.Models.OfflineList /// Boolean [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } /// Boolean [XmlAttribute("auto")] diff --git a/SabreTools.Data.Models/SoftwareList/DipValue.cs b/SabreTools.Data.Models/SoftwareList/DipValue.cs index e5a198c5..3b1ed8d8 100644 --- a/SabreTools.Data.Models/SoftwareList/DipValue.cs +++ b/SabreTools.Data.Models/SoftwareList/DipValue.cs @@ -16,6 +16,6 @@ namespace SabreTools.Data.Models.SoftwareList /// (yes|no) "no" [XmlAttribute("default")] - public string? Default { get; set; } + public bool? Default { get; set; } } } diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs index 231e2fab..543aa2b8 100644 --- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs +++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs @@ -337,7 +337,7 @@ namespace SabreTools.Metadata.DatFiles.Test return new Data.Models.Metadata.Adjuster { [Data.Models.Metadata.Adjuster.ConditionKey] = CreateMetadataCondition(), - [Data.Models.Metadata.Adjuster.DefaultKey] = true, + Default = true, Name = "name", }; } @@ -394,7 +394,7 @@ namespace SabreTools.Metadata.DatFiles.Test { return new Data.Models.Metadata.BiosSet { - [Data.Models.Metadata.BiosSet.DefaultKey] = true, + Default = true, [Data.Models.Metadata.BiosSet.DescriptionKey] = "description", Name = "name", }; @@ -452,7 +452,7 @@ namespace SabreTools.Metadata.DatFiles.Test return new Data.Models.Metadata.ConfSetting { [Data.Models.Metadata.ConfSetting.ConditionKey] = CreateMetadataCondition(), - [Data.Models.Metadata.ConfSetting.DefaultKey] = "yes", + Default = true, Name = "name", [Data.Models.Metadata.ConfSetting.ValueKey] = "value", }; @@ -514,7 +514,7 @@ namespace SabreTools.Metadata.DatFiles.Test return new Data.Models.Metadata.DipSwitch { [Data.Models.Metadata.DipSwitch.ConditionKey] = CreateMetadataCondition(), - [Data.Models.Metadata.DipSwitch.DefaultKey] = "yes", + Default = true, [Data.Models.Metadata.DipSwitch.DipLocationKey] = new Data.Models.Metadata.DipLocation[] { CreateMetadataDipLocation() }, [Data.Models.Metadata.DipSwitch.DipValueKey] = new Data.Models.Metadata.DipValue[] { CreateMetadataDipValue() }, [Data.Models.Metadata.DipSwitch.EntryKey] = new string[] { "entry" }, @@ -529,7 +529,7 @@ namespace SabreTools.Metadata.DatFiles.Test return new Data.Models.Metadata.DipValue { [Data.Models.Metadata.DipValue.ConditionKey] = CreateMetadataCondition(), - [Data.Models.Metadata.DipValue.DefaultKey] = "yes", + Default = true, Name = "name", [Data.Models.Metadata.DipValue.ValueKey] = "value", }; @@ -726,7 +726,7 @@ namespace SabreTools.Metadata.DatFiles.Test return new Data.Models.Metadata.RamOption { [Data.Models.Metadata.RamOption.ContentKey] = "content", - [Data.Models.Metadata.RamOption.DefaultKey] = "yes", + Default = true, Name = "name", }; } @@ -736,7 +736,7 @@ namespace SabreTools.Metadata.DatFiles.Test return new Data.Models.Metadata.Release { [Data.Models.Metadata.Release.DateKey] = "date", - [Data.Models.Metadata.Release.DefaultKey] = "yes", + Default = true, [Data.Models.Metadata.Release.LanguageKey] = "language", Name = "name", [Data.Models.Metadata.Release.RegionKey] = "region", @@ -920,7 +920,7 @@ namespace SabreTools.Metadata.DatFiles.Test { return new Data.Models.Metadata.SlotOption { - [Data.Models.Metadata.SlotOption.DefaultKey] = "yes", + Default = true, [Data.Models.Metadata.SlotOption.DevNameKey] = "devname", Name = "name", }; @@ -1144,7 +1144,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateAdjuster(Adjuster? adjuster) { Assert.NotNull(adjuster); - Assert.True(adjuster.ReadBool(Data.Models.Metadata.Adjuster.DefaultKey)); + Assert.True(adjuster.Default); Assert.Equal("name", adjuster.GetName()); Condition? condition = adjuster.Read(Data.Models.Metadata.Adjuster.ConditionKey); @@ -1166,7 +1166,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateBiosSet(BiosSet? biosSet) { Assert.NotNull(biosSet); - Assert.True(biosSet.ReadBool(Data.Models.Metadata.BiosSet.DefaultKey)); + Assert.True(biosSet.Default); Assert.Equal("description", biosSet.ReadString(Data.Models.Metadata.BiosSet.DescriptionKey)); Assert.Equal("name", biosSet.GetName()); } @@ -1223,7 +1223,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateConfSetting(ConfSetting? confSetting) { Assert.NotNull(confSetting); - Assert.True(confSetting.ReadBool(Data.Models.Metadata.ConfSetting.DefaultKey)); + Assert.True(confSetting.Default); Assert.Equal("name", confSetting.GetName()); Assert.Equal("value", confSetting.ReadString(Data.Models.Metadata.ConfSetting.ValueKey)); @@ -1292,7 +1292,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateDipSwitch(DipSwitch? dipSwitch) { Assert.NotNull(dipSwitch); - Assert.True(dipSwitch.ReadBool(Data.Models.Metadata.DipSwitch.DefaultKey)); + Assert.True(dipSwitch.Default); Assert.Equal("mask", dipSwitch.ReadString(Data.Models.Metadata.DipSwitch.MaskKey)); Assert.Equal("name", dipSwitch.GetName()); Assert.Equal("tag", dipSwitch.ReadString(Data.Models.Metadata.DipSwitch.TagKey)); @@ -1319,7 +1319,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateDipValue(DipValue? dipValue) { Assert.NotNull(dipValue); - Assert.True(dipValue.ReadBool(Data.Models.Metadata.DipValue.DefaultKey)); + Assert.True(dipValue.Default); Assert.Equal("name", dipValue.GetName()); Assert.Equal("value", dipValue.ReadString(Data.Models.Metadata.DipValue.ValueKey)); @@ -1473,7 +1473,7 @@ namespace SabreTools.Metadata.DatFiles.Test { Assert.NotNull(ramOption); Assert.Equal("content", ramOption.ReadString(Data.Models.Metadata.RamOption.ContentKey)); - Assert.True(ramOption.ReadBool(Data.Models.Metadata.RamOption.DefaultKey)); + Assert.True(ramOption.Default); Assert.Equal("name", ramOption.GetName()); } @@ -1481,7 +1481,7 @@ namespace SabreTools.Metadata.DatFiles.Test { Assert.NotNull(release); Assert.Equal("date", release.ReadString(Data.Models.Metadata.Release.DateKey)); - Assert.True(release.ReadBool(Data.Models.Metadata.Release.DefaultKey)); + Assert.True(release.Default); Assert.Equal("language", release.ReadString(Data.Models.Metadata.Release.LanguageKey)); Assert.Equal("name", release.GetName()); Assert.Equal("region", release.ReadString(Data.Models.Metadata.Release.RegionKey)); @@ -1615,7 +1615,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateSlotOption(SlotOption? slotOption) { Assert.NotNull(slotOption); - Assert.True(slotOption.ReadBool(Data.Models.Metadata.SlotOption.DefaultKey)); + Assert.True(slotOption.Default); Assert.Equal("devname", slotOption.ReadString(Data.Models.Metadata.SlotOption.DevNameKey)); Assert.Equal("name", slotOption.GetName()); } diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs index 6f762582..4dd4f923 100644 --- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs +++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs @@ -619,7 +619,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateMetadataAdjuster(Data.Models.Metadata.Adjuster? adjuster) { Assert.NotNull(adjuster); - Assert.True(adjuster.ReadBool(Data.Models.Metadata.Adjuster.DefaultKey)); + Assert.True(adjuster.Default); Assert.Equal("name", adjuster.Name); Data.Models.Metadata.Condition? condition = adjuster.Read(Data.Models.Metadata.Adjuster.ConditionKey); @@ -673,7 +673,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateMetadataBiosSet(Data.Models.Metadata.BiosSet? biosSet) { Assert.NotNull(biosSet); - Assert.True(biosSet.ReadBool(Data.Models.Metadata.BiosSet.DefaultKey)); + Assert.True(biosSet.Default); Assert.Equal("description", biosSet.ReadString(Data.Models.Metadata.BiosSet.DescriptionKey)); Assert.Equal("name", biosSet.Name); } @@ -730,7 +730,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateMetadataConfSetting(Data.Models.Metadata.ConfSetting? confSetting) { Assert.NotNull(confSetting); - Assert.True(confSetting.ReadBool(Data.Models.Metadata.ConfSetting.DefaultKey)); + Assert.True(confSetting.Default); Assert.Equal("name", confSetting.Name); Assert.Equal("value", confSetting.ReadString(Data.Models.Metadata.ConfSetting.ValueKey)); @@ -804,7 +804,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateMetadataDipSwitch(Data.Models.Metadata.DipSwitch? dipSwitch) { Assert.NotNull(dipSwitch); - Assert.True(dipSwitch.ReadBool(Data.Models.Metadata.DipSwitch.DefaultKey)); + Assert.True(dipSwitch.Default); Assert.Equal("mask", dipSwitch.ReadString(Data.Models.Metadata.DipSwitch.MaskKey)); Assert.Equal("name", dipSwitch.Name); Assert.Equal("tag", dipSwitch.ReadString(Data.Models.Metadata.DipSwitch.TagKey)); @@ -831,7 +831,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateMetadataDipValue(Data.Models.Metadata.DipValue? dipValue) { Assert.NotNull(dipValue); - Assert.True(dipValue.ReadBool(Data.Models.Metadata.DipValue.DefaultKey)); + Assert.True(dipValue.Default); Assert.Equal("name", dipValue.Name); Assert.Equal("value", dipValue.ReadString(Data.Models.Metadata.DipValue.ValueKey)); @@ -997,7 +997,7 @@ namespace SabreTools.Metadata.DatFiles.Test { Assert.NotNull(ramOption); Assert.Equal("content", ramOption.ReadString(Data.Models.Metadata.RamOption.ContentKey)); - Assert.True(ramOption.ReadBool(Data.Models.Metadata.RamOption.DefaultKey)); + Assert.True(ramOption.Default); Assert.Equal("name", ramOption.Name); } @@ -1005,7 +1005,7 @@ namespace SabreTools.Metadata.DatFiles.Test { Assert.NotNull(release); Assert.Equal("date", release.ReadString(Data.Models.Metadata.Release.DateKey)); - Assert.True(release.ReadBool(Data.Models.Metadata.Release.DefaultKey)); + Assert.True(release.Default); Assert.Equal("language", release.ReadString(Data.Models.Metadata.Release.LanguageKey)); Assert.Equal("name", release.Name); Assert.Equal("region", release.ReadString(Data.Models.Metadata.Release.RegionKey)); @@ -1179,7 +1179,7 @@ namespace SabreTools.Metadata.DatFiles.Test private static void ValidateMetadataSlotOption(Data.Models.Metadata.SlotOption? slotOption) { Assert.NotNull(slotOption); - Assert.True(slotOption.ReadBool(Data.Models.Metadata.SlotOption.DefaultKey)); + Assert.True(slotOption.Default); Assert.Equal("devname", slotOption.ReadString(Data.Models.Metadata.SlotOption.DevNameKey)); Assert.Equal("name", slotOption.Name); } diff --git a/SabreTools.Metadata.DatItems/Formats/Adjuster.cs b/SabreTools.Metadata.DatItems/Formats/Adjuster.cs index fef67fbb..fd951b5d 100644 --- a/SabreTools.Metadata.DatItems/Formats/Adjuster.cs +++ b/SabreTools.Metadata.DatItems/Formats/Adjuster.cs @@ -22,6 +22,13 @@ namespace SabreTools.Metadata.DatItems.Formats } } + [JsonIgnore] + public bool? Default + { + get => (_internal as Data.Models.Metadata.Adjuster)?.Default; + set => (_internal as Data.Models.Metadata.Adjuster)?.Default = value; + } + #endregion #region Constructors @@ -30,11 +37,6 @@ namespace SabreTools.Metadata.DatItems.Formats public Adjuster(Data.Models.Metadata.Adjuster item) : base(item) { - // Process flag values - bool? defaultValue = ReadBool(Data.Models.Metadata.Adjuster.DefaultKey); - if (defaultValue is not null) - Write(Data.Models.Metadata.Adjuster.DefaultKey, defaultValue.FromYesNo()); - // Handle subitems var condition = item.Read(Data.Models.Metadata.Adjuster.ConditionKey); if (condition is not null) diff --git a/SabreTools.Metadata.DatItems/Formats/BiosSet.cs b/SabreTools.Metadata.DatItems/Formats/BiosSet.cs index 395e59ca..884e5b53 100644 --- a/SabreTools.Metadata.DatItems/Formats/BiosSet.cs +++ b/SabreTools.Metadata.DatItems/Formats/BiosSet.cs @@ -10,17 +10,22 @@ namespace SabreTools.Metadata.DatItems.Formats [JsonObject("biosset"), XmlRoot("biosset")] public sealed class BiosSet : DatItem { + #region Properties + + [JsonIgnore] + public bool? Default + { + get => (_internal as Data.Models.Metadata.BiosSet)?.Default; + set => (_internal as Data.Models.Metadata.BiosSet)?.Default = value; + } + + #endregion + #region Constructors public BiosSet() : base() { } - public BiosSet(Data.Models.Metadata.BiosSet item) : base(item) - { - // Process flag values - bool? defaultValue = ReadBool(Data.Models.Metadata.BiosSet.DefaultKey); - if (defaultValue is not null) - Write(Data.Models.Metadata.BiosSet.DefaultKey, defaultValue.FromYesNo()); - } + public BiosSet(Data.Models.Metadata.BiosSet item) : base(item) { } public BiosSet(Data.Models.Metadata.BiosSet item, Machine machine, Source source) : this(item) { diff --git a/SabreTools.Metadata.DatItems/Formats/ConfSetting.cs b/SabreTools.Metadata.DatItems/Formats/ConfSetting.cs index 4fe81fe4..0e69bb27 100644 --- a/SabreTools.Metadata.DatItems/Formats/ConfSetting.cs +++ b/SabreTools.Metadata.DatItems/Formats/ConfSetting.cs @@ -22,6 +22,13 @@ namespace SabreTools.Metadata.DatItems.Formats } } + [JsonIgnore] + public bool? Default + { + get => (_internal as Data.Models.Metadata.ConfSetting)?.Default; + set => (_internal as Data.Models.Metadata.ConfSetting)?.Default = value; + } + #endregion #region Constructors @@ -30,11 +37,6 @@ namespace SabreTools.Metadata.DatItems.Formats public ConfSetting(Data.Models.Metadata.ConfSetting item) : base(item) { - // Process flag values - bool? defaultValue = ReadBool(Data.Models.Metadata.ConfSetting.DefaultKey); - if (defaultValue is not null) - Write(Data.Models.Metadata.ConfSetting.DefaultKey, defaultValue.FromYesNo()); - // Handle subitems var condition = Read(Data.Models.Metadata.ConfSetting.ConditionKey); if (condition is not null) diff --git a/SabreTools.Metadata.DatItems/Formats/DipSwitch.cs b/SabreTools.Metadata.DatItems/Formats/DipSwitch.cs index db1053ef..48dbe9fb 100644 --- a/SabreTools.Metadata.DatItems/Formats/DipSwitch.cs +++ b/SabreTools.Metadata.DatItems/Formats/DipSwitch.cs @@ -32,6 +32,13 @@ namespace SabreTools.Metadata.DatItems.Formats } } + [JsonIgnore] + public bool? Default + { + get => (_internal as Data.Models.Metadata.DipSwitch)?.Default; + set => (_internal as Data.Models.Metadata.DipSwitch)?.Default = value; + } + [JsonIgnore] public bool LocationsSpecified { @@ -72,11 +79,6 @@ namespace SabreTools.Metadata.DatItems.Formats public DipSwitch(Data.Models.Metadata.DipSwitch item) : base(item) { - // Process flag values - bool? defaultValue = ReadBool(Data.Models.Metadata.DipSwitch.DefaultKey); - if (defaultValue is not null) - Write(Data.Models.Metadata.DipSwitch.DefaultKey, defaultValue.FromYesNo()); - // Handle subitems var condition = item.Read(Data.Models.Metadata.DipSwitch.ConditionKey); if (condition is not null) diff --git a/SabreTools.Metadata.DatItems/Formats/DipValue.cs b/SabreTools.Metadata.DatItems/Formats/DipValue.cs index 94600083..6b47e025 100644 --- a/SabreTools.Metadata.DatItems/Formats/DipValue.cs +++ b/SabreTools.Metadata.DatItems/Formats/DipValue.cs @@ -22,6 +22,13 @@ namespace SabreTools.Metadata.DatItems.Formats } } + [JsonIgnore] + public bool? Default + { + get => (_internal as Data.Models.Metadata.DipValue)?.Default; + set => (_internal as Data.Models.Metadata.DipValue)?.Default = value; + } + #endregion #region Constructors @@ -30,11 +37,6 @@ namespace SabreTools.Metadata.DatItems.Formats public DipValue(Data.Models.Metadata.DipValue item) : base(item) { - // Process flag values - bool? defaultValue = ReadBool(Data.Models.Metadata.DipValue.DefaultKey); - if (defaultValue is not null) - Write(Data.Models.Metadata.DipValue.DefaultKey, defaultValue.FromYesNo()); - // Handle subitems var condition = Read(Data.Models.Metadata.DipValue.ConditionKey); if (condition is not null) diff --git a/SabreTools.Metadata.DatItems/Formats/RamOption.cs b/SabreTools.Metadata.DatItems/Formats/RamOption.cs index 0546dfe2..e2c545e3 100644 --- a/SabreTools.Metadata.DatItems/Formats/RamOption.cs +++ b/SabreTools.Metadata.DatItems/Formats/RamOption.cs @@ -10,17 +10,22 @@ namespace SabreTools.Metadata.DatItems.Formats [JsonObject("ramoption"), XmlRoot("ramoption")] public sealed class RamOption : DatItem { + #region Properties + + [JsonIgnore] + public bool? Default + { + get => (_internal as Data.Models.Metadata.RamOption)?.Default; + set => (_internal as Data.Models.Metadata.RamOption)?.Default = value; + } + + #endregion + #region Constructors public RamOption() : base() { } - public RamOption(Data.Models.Metadata.RamOption item) : base(item) - { - // Process flag values - bool? defaultValue = ReadBool(Data.Models.Metadata.RamOption.DefaultKey); - if (defaultValue is not null) - Write(Data.Models.Metadata.RamOption.DefaultKey, defaultValue.FromYesNo()); - } + public RamOption(Data.Models.Metadata.RamOption item) : base(item) { } public RamOption(Data.Models.Metadata.RamOption item, Machine machine, Source source) : this(item) { diff --git a/SabreTools.Metadata.DatItems/Formats/Release.cs b/SabreTools.Metadata.DatItems/Formats/Release.cs index 8e142259..6a786ec2 100644 --- a/SabreTools.Metadata.DatItems/Formats/Release.cs +++ b/SabreTools.Metadata.DatItems/Formats/Release.cs @@ -10,17 +10,22 @@ namespace SabreTools.Metadata.DatItems.Formats [JsonObject("release"), XmlRoot("release")] public sealed class Release : DatItem { + #region Properties + + [JsonIgnore] + public bool? Default + { + get => (_internal as Data.Models.Metadata.Release)?.Default; + set => (_internal as Data.Models.Metadata.Release)?.Default = value; + } + + #endregion + #region Constructors public Release() : base() { } - public Release(Data.Models.Metadata.Release item) : base(item) - { - // Process flag values - bool? defaultValue = ReadBool(Data.Models.Metadata.Release.DefaultKey); - if (defaultValue is not null) - Write(Data.Models.Metadata.Release.DefaultKey, defaultValue.FromYesNo()); - } + public Release(Data.Models.Metadata.Release item) : base(item) { } public Release(Data.Models.Metadata.Release item, Machine machine, Source source) : this(item) { diff --git a/SabreTools.Metadata.DatItems/Formats/SlotOption.cs b/SabreTools.Metadata.DatItems/Formats/SlotOption.cs index 73f90bd6..375c53d4 100644 --- a/SabreTools.Metadata.DatItems/Formats/SlotOption.cs +++ b/SabreTools.Metadata.DatItems/Formats/SlotOption.cs @@ -10,17 +10,22 @@ namespace SabreTools.Metadata.DatItems.Formats [JsonObject("slotoption"), XmlRoot("slotoption")] public sealed class SlotOption : DatItem { + #region Properties + + [JsonIgnore] + public bool? Default + { + get => (_internal as Data.Models.Metadata.SlotOption)?.Default; + set => (_internal as Data.Models.Metadata.SlotOption)?.Default = value; + } + + #endregion + #region Constructors public SlotOption() : base() { } - public SlotOption(Data.Models.Metadata.SlotOption item) : base(item) - { - // Process flag values - bool? defaultValue = ReadBool(Data.Models.Metadata.SlotOption.DefaultKey); - if (defaultValue is not null) - Write(Data.Models.Metadata.SlotOption.DefaultKey, defaultValue.FromYesNo()); - } + public SlotOption(Data.Models.Metadata.SlotOption item) : base(item) { } public SlotOption(Data.Models.Metadata.SlotOption item, Machine machine, Source source) : this(item) { diff --git a/SabreTools.Metadata.Filter/FilterObject.cs b/SabreTools.Metadata.Filter/FilterObject.cs index dcfca12c..27dcd70c 100644 --- a/SabreTools.Metadata.Filter/FilterObject.cs +++ b/SabreTools.Metadata.Filter/FilterObject.cs @@ -77,22 +77,9 @@ namespace SabreTools.Metadata.Filter /// private bool MatchesEqual(DictionaryBase dictionaryBase) { - // Some fields need unique handling - string? checkValue; - if (Key.FieldName == "name") - { - // TODO: Make this less awkward and hacky - checkValue = dictionaryBase.GetName(); - } - else - { - // If the key doesn't exist, we count it as null - if (!dictionaryBase.ContainsKey(Key.FieldName)) - return string.IsNullOrEmpty(Value); - - // If the value in the dictionary is null - checkValue = dictionaryBase.ReadString(Key.FieldName); - } + // Process the check value + if (!GetCheckValue(dictionaryBase, out string? checkValue)) + return string.IsNullOrEmpty(Value); // If a null value is expected if (checkValue is null) @@ -132,22 +119,9 @@ namespace SabreTools.Metadata.Filter /// private bool MatchesNotEqual(DictionaryBase dictionaryBase) { - // Some fields need unique handling - string? checkValue; - if (Key.FieldName == "name") - { - // TODO: Make this less awkward and hacky - checkValue = dictionaryBase.GetName(); - } - else - { - // If the key doesn't exist, we count it as null - if (!dictionaryBase.ContainsKey(Key.FieldName)) - return string.IsNullOrEmpty(Value); - - // If the value in the dictionary is null - checkValue = dictionaryBase.ReadString(Key.FieldName); - } + // Process the check value + if (!GetCheckValue(dictionaryBase, out string? checkValue)) + return string.IsNullOrEmpty(Value); // If a null value is expected if (checkValue is null) @@ -187,22 +161,9 @@ namespace SabreTools.Metadata.Filter /// private bool MatchesGreaterThan(DictionaryBase dictionaryBase) { - // Some fields need unique handling - string? checkValue; - if (Key.FieldName == "name") - { - // TODO: Make this less awkward and hacky - checkValue = dictionaryBase.GetName(); - } - else - { - // If the key doesn't exist, we count it as null - if (!dictionaryBase.ContainsKey(Key.FieldName)) - return string.IsNullOrEmpty(Value); - - // If the value in the dictionary is null - checkValue = dictionaryBase.ReadString(Key.FieldName); - } + // Process the check value + if (!GetCheckValue(dictionaryBase, out string? checkValue)) + return string.IsNullOrEmpty(Value); // Null is always failure if (checkValue is null) @@ -232,22 +193,9 @@ namespace SabreTools.Metadata.Filter /// private bool MatchesGreaterThanOrEqual(DictionaryBase dictionaryBase) { - // Some fields need unique handling - string? checkValue; - if (Key.FieldName == "name") - { - // TODO: Make this less awkward and hacky - checkValue = dictionaryBase.GetName(); - } - else - { - // If the key doesn't exist, we count it as null - if (!dictionaryBase.ContainsKey(Key.FieldName)) - return string.IsNullOrEmpty(Value); - - // If the value in the dictionary is null - checkValue = dictionaryBase.ReadString(Key.FieldName); - } + // Process the check value + if (!GetCheckValue(dictionaryBase, out string? checkValue)) + return string.IsNullOrEmpty(Value); // Null is always failure if (checkValue is null) @@ -277,22 +225,9 @@ namespace SabreTools.Metadata.Filter /// private bool MatchesLessThan(DictionaryBase dictionaryBase) { - // Some fields need unique handling - string? checkValue; - if (Key.FieldName == "name") - { - // TODO: Make this less awkward and hacky - checkValue = dictionaryBase.GetName(); - } - else - { - // If the key doesn't exist, we count it as null - if (!dictionaryBase.ContainsKey(Key.FieldName)) - return string.IsNullOrEmpty(Value); - - // If the value in the dictionary is null - checkValue = dictionaryBase.ReadString(Key.FieldName); - } + // Process the check value + if (!GetCheckValue(dictionaryBase, out string? checkValue)) + return string.IsNullOrEmpty(Value); // Null is always failure if (checkValue is null) @@ -322,22 +257,9 @@ namespace SabreTools.Metadata.Filter /// private bool MatchesLessThanOrEqual(DictionaryBase dictionaryBase) { - // Some fields need unique handling - string? checkValue; - if (Key.FieldName == "name") - { - // TODO: Make this less awkward and hacky - checkValue = dictionaryBase.GetName(); - } - else - { - // If the key doesn't exist, we count it as null - if (!dictionaryBase.ContainsKey(Key.FieldName)) - return string.IsNullOrEmpty(Value); - - // If the value in the dictionary is null - checkValue = dictionaryBase.ReadString(Key.FieldName); - } + // Process the check value + if (!GetCheckValue(dictionaryBase, out string? checkValue)) + return string.IsNullOrEmpty(Value); // Null is always failure if (checkValue is null) @@ -411,6 +333,69 @@ namespace SabreTools.Metadata.Filter return false; } + /// + /// Get the check value for a field from a DictionaryBase + /// + private bool GetCheckValue(DictionaryBase dictionaryBase, out string? checkValue) + { + // Handle the common name field + if (Key.FieldName == "name") + { + checkValue = dictionaryBase.GetName(); + return true; + } + + // Handle type-specific properties + switch (dictionaryBase) + { + case Adjuster item when Key.FieldName == "default": + checkValue = item.Default.FromYesNo(); + return true; + + case BiosSet item when Key.FieldName == "default": + checkValue = item.Default.FromYesNo(); + return true; + + case ConfSetting item when Key.FieldName == "default": + checkValue = item.Default.FromYesNo(); + return true; + + case DipSwitch item when Key.FieldName == "default": + checkValue = item.Default.FromYesNo(); + return true; + + case DipValue item when Key.FieldName == "default": + checkValue = item.Default.FromYesNo(); + return true; + + case RamOption item when Key.FieldName == "default": + checkValue = item.Default.FromYesNo(); + return true; + + case Release item when Key.FieldName == "default": + checkValue = item.Default.FromYesNo(); + return true; + + case SlotOption item when Key.FieldName == "default": + checkValue = item.Default.FromYesNo(); + return true; + + // Fallthrough to Dictionary-based checking + default: break; + } + + // If the key doesn't exist, we count it as null + if (!dictionaryBase.ContainsKey(Key.FieldName)) + { + checkValue = null; + return false; + } + + // If the value in the dictionary is null + checkValue = dictionaryBase.ReadString(Key.FieldName); + return true; + } + /// /// Derive an operation from the input string, if possible /// diff --git a/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs b/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs index 161fd8e8..f47f1e29 100644 --- a/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs +++ b/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs @@ -84,14 +84,14 @@ namespace SabreTools.Serialization.CrossModel.Test Region = "XXXXXX", Language = "XXXXXX", Date = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var biosset = new Data.Models.ClrMamePro.BiosSet { Name = "XXXXXX", Description = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var rom = new Data.Models.ClrMamePro.Rom @@ -192,7 +192,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Entry = ["XXXXXX"], - Default = "XXXXXX", + Default = true, }; var driver = new Data.Models.ClrMamePro.Driver @@ -339,7 +339,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.Equal("XXXXXX", release.Region); Assert.Equal("XXXXXX", release.Language); Assert.Equal("XXXXXX", release.Date); - Assert.Equal("XXXXXX", release.Default); + Assert.Equal(true, release.Default); } /// @@ -350,7 +350,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(biosset); Assert.Equal("XXXXXX", biosset.Name); Assert.Equal("XXXXXX", biosset.Description); - Assert.Equal("XXXXXX", biosset.Default); + Assert.Equal(true, biosset.Default); } /// @@ -495,7 +495,7 @@ namespace SabreTools.Serialization.CrossModel.Test string entry = Assert.Single(dipswitch.Entry); Assert.Equal("XXXXXX", entry); - Assert.Equal("XXXXXX", dipswitch.Default); + Assert.Equal(true, dipswitch.Default); } /// diff --git a/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs b/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs index 8f7cfcbf..60d915a8 100644 --- a/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs +++ b/SabreTools.Serialization.CrossModel.Test/ListxmlTests.cs @@ -67,7 +67,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Description = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var rom = new Data.Models.Listxml.Rom @@ -198,7 +198,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -223,7 +223,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -251,7 +251,7 @@ namespace SabreTools.Serialization.CrossModel.Test var adjuster = new Data.Models.Listxml.Adjuster { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -303,7 +303,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", DevName = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var slot = new Data.Models.Listxml.Slot @@ -323,7 +323,7 @@ namespace SabreTools.Serialization.CrossModel.Test var ramoption = new Data.Models.Listxml.RamOption { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Content = "XXXXXX", }; @@ -475,7 +475,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(biosset); Assert.Equal("XXXXXX", biosset.Name); Assert.Equal("XXXXXX", biosset.Description); - Assert.Equal("XXXXXX", biosset.Default); + Assert.Equal(true, biosset.Default); } /// @@ -681,7 +681,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(dipvalue); Assert.Equal("XXXXXX", dipvalue.Name); Assert.Equal("XXXXXX", dipvalue.Value); - Assert.Equal("XXXXXX", dipvalue.Default); + Assert.Equal(true, dipvalue.Default); Validate(dipvalue.Condition); } @@ -724,7 +724,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(confsetting); Assert.Equal("XXXXXX", confsetting.Name); Assert.Equal("XXXXXX", confsetting.Value); - Assert.Equal("XXXXXX", confsetting.Default); + Assert.Equal(true, confsetting.Default); Validate(confsetting.Condition); } @@ -757,7 +757,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Assert.NotNull(adjuster); Assert.Equal("XXXXXX", adjuster.Name); - Assert.Equal("XXXXXX", adjuster.Default); + Assert.Equal(true, adjuster.Default); Validate(adjuster.Condition); } @@ -849,7 +849,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(slotoption); Assert.Equal("XXXXXX", slotoption.Name); Assert.Equal("XXXXXX", slotoption.DevName); - Assert.Equal("XXXXXX", slotoption.Default); + Assert.Equal(true, slotoption.Default); } /// @@ -871,7 +871,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Assert.NotNull(ramoption); Assert.Equal("XXXXXX", ramoption.Name); - Assert.Equal("XXXXXX", ramoption.Default); + Assert.Equal(true, ramoption.Default); Assert.Equal("XXXXXX", ramoption.Content); } } diff --git a/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs b/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs index 35822e4c..c0ec27c0 100644 --- a/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs +++ b/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs @@ -135,14 +135,14 @@ namespace SabreTools.Serialization.CrossModel.Test Region = "XXXXXX", Language = "XXXXXX", Date = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var biosset = new Data.Models.Logiqx.BiosSet { Name = "XXXXXX", Description = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var rom = new Data.Models.Logiqx.Rom @@ -443,7 +443,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.Equal("XXXXXX", release.Region); Assert.Equal("XXXXXX", release.Language); Assert.Equal("XXXXXX", release.Date); - Assert.Equal("XXXXXX", release.Default); + Assert.Equal(true, release.Default); } /// @@ -454,7 +454,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(biosset); Assert.Equal("XXXXXX", biosset.Name); Assert.Equal("XXXXXX", biosset.Description); - Assert.Equal("XXXXXX", biosset.Default); + Assert.Equal(true, biosset.Default); } /// diff --git a/SabreTools.Serialization.CrossModel.Test/M1Tests.cs b/SabreTools.Serialization.CrossModel.Test/M1Tests.cs index 2ece60d7..9034351c 100644 --- a/SabreTools.Serialization.CrossModel.Test/M1Tests.cs +++ b/SabreTools.Serialization.CrossModel.Test/M1Tests.cs @@ -63,7 +63,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Description = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var rom = new Data.Models.Listxml.Rom @@ -194,7 +194,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -219,7 +219,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -247,7 +247,7 @@ namespace SabreTools.Serialization.CrossModel.Test var adjuster = new Data.Models.Listxml.Adjuster { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -299,7 +299,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", DevName = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var slot = new Data.Models.Listxml.Slot @@ -319,7 +319,7 @@ namespace SabreTools.Serialization.CrossModel.Test var ramoption = new Data.Models.Listxml.RamOption { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Content = "XXXXXX", }; @@ -469,7 +469,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(biosset); Assert.Equal("XXXXXX", biosset.Name); Assert.Equal("XXXXXX", biosset.Description); - Assert.Equal("XXXXXX", biosset.Default); + Assert.Equal(true, biosset.Default); } /// @@ -675,7 +675,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(dipvalue); Assert.Equal("XXXXXX", dipvalue.Name); Assert.Equal("XXXXXX", dipvalue.Value); - Assert.Equal("XXXXXX", dipvalue.Default); + Assert.Equal(true, dipvalue.Default); Validate(dipvalue.Condition); } @@ -718,7 +718,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(confsetting); Assert.Equal("XXXXXX", confsetting.Name); Assert.Equal("XXXXXX", confsetting.Value); - Assert.Equal("XXXXXX", confsetting.Default); + Assert.Equal(true, confsetting.Default); Validate(confsetting.Condition); } @@ -751,7 +751,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Assert.NotNull(adjuster); Assert.Equal("XXXXXX", adjuster.Name); - Assert.Equal("XXXXXX", adjuster.Default); + Assert.Equal(true, adjuster.Default); Validate(adjuster.Condition); } @@ -843,7 +843,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(slotoption); Assert.Equal("XXXXXX", slotoption.Name); Assert.Equal("XXXXXX", slotoption.DevName); - Assert.Equal("XXXXXX", slotoption.Default); + Assert.Equal(true, slotoption.Default); } /// @@ -865,7 +865,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Assert.NotNull(ramoption); Assert.Equal("XXXXXX", ramoption.Name); - Assert.Equal("XXXXXX", ramoption.Default); + Assert.Equal(true, ramoption.Default); Assert.Equal("XXXXXX", ramoption.Content); } } diff --git a/SabreTools.Serialization.CrossModel.Test/MessTests.cs b/SabreTools.Serialization.CrossModel.Test/MessTests.cs index aa584f06..c024874a 100644 --- a/SabreTools.Serialization.CrossModel.Test/MessTests.cs +++ b/SabreTools.Serialization.CrossModel.Test/MessTests.cs @@ -63,7 +63,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Description = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var rom = new Data.Models.Listxml.Rom @@ -194,7 +194,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -219,7 +219,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -247,7 +247,7 @@ namespace SabreTools.Serialization.CrossModel.Test var adjuster = new Data.Models.Listxml.Adjuster { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -299,7 +299,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", DevName = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var slot = new Data.Models.Listxml.Slot @@ -319,7 +319,7 @@ namespace SabreTools.Serialization.CrossModel.Test var ramoption = new Data.Models.Listxml.RamOption { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Content = "XXXXXX", }; @@ -469,7 +469,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(biosset); Assert.Equal("XXXXXX", biosset.Name); Assert.Equal("XXXXXX", biosset.Description); - Assert.Equal("XXXXXX", biosset.Default); + Assert.Equal(true, biosset.Default); } /// @@ -675,7 +675,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(dipvalue); Assert.Equal("XXXXXX", dipvalue.Name); Assert.Equal("XXXXXX", dipvalue.Value); - Assert.Equal("XXXXXX", dipvalue.Default); + Assert.Equal(true, dipvalue.Default); Validate(dipvalue.Condition); } @@ -718,7 +718,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(confsetting); Assert.Equal("XXXXXX", confsetting.Name); Assert.Equal("XXXXXX", confsetting.Value); - Assert.Equal("XXXXXX", confsetting.Default); + Assert.Equal(true, confsetting.Default); Validate(confsetting.Condition); } @@ -751,7 +751,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Assert.NotNull(adjuster); Assert.Equal("XXXXXX", adjuster.Name); - Assert.Equal("XXXXXX", adjuster.Default); + Assert.Equal(true, adjuster.Default); Validate(adjuster.Condition); } @@ -843,7 +843,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(slotoption); Assert.Equal("XXXXXX", slotoption.Name); Assert.Equal("XXXXXX", slotoption.DevName); - Assert.Equal("XXXXXX", slotoption.Default); + Assert.Equal(true, slotoption.Default); } /// @@ -865,7 +865,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Assert.NotNull(ramoption); Assert.Equal("XXXXXX", ramoption.Name); - Assert.Equal("XXXXXX", ramoption.Default); + Assert.Equal(true, ramoption.Default); Assert.Equal("XXXXXX", ramoption.Content); } } diff --git a/SabreTools.Serialization.CrossModel.Test/OfflineListTests.cs b/SabreTools.Serialization.CrossModel.Test/OfflineListTests.cs index 001a2f99..a24d3aac 100644 --- a/SabreTools.Serialization.CrossModel.Test/OfflineListTests.cs +++ b/SabreTools.Serialization.CrossModel.Test/OfflineListTests.cs @@ -39,85 +39,85 @@ namespace SabreTools.Serialization.CrossModel.Test { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Location = new Data.Models.OfflineList.Location { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Publisher = new Data.Models.OfflineList.Publisher { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, SourceRom = new Data.Models.OfflineList.SourceRom { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, SaveType = new Data.Models.OfflineList.SaveType { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, RomSize = new Data.Models.OfflineList.RomSize { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, ReleaseNumber = new Data.Models.OfflineList.ReleaseNumber { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, ImageNumber = new Data.Models.OfflineList.ImageNumber { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, LanguageNumber = new Data.Models.OfflineList.LanguageNumber { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Comment = new Data.Models.OfflineList.Comment { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, RomCRC = new Data.Models.OfflineList.RomCRC { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Im1CRC = new Data.Models.OfflineList.Im1CRC { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Im2CRC = new Data.Models.OfflineList.Im2CRC { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Languages = new Data.Models.OfflineList.Languages { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, }; @@ -149,7 +149,7 @@ namespace SabreTools.Serialization.CrossModel.Test var to = new Data.Models.OfflineList.To { Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Auto = "XXXXXX", Find = [find], }; @@ -286,7 +286,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(info); Assert.Equal("XXXXXX", info.Visible); Assert.Equal("XXXXXX", info.InNamingOption); - Assert.Equal("XXXXXX", info.Default); + Assert.Equal(true, info.Default); } /// @@ -339,7 +339,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Assert.NotNull(to); Assert.Equal("XXXXXX", to.Value); - Assert.Equal("XXXXXX", to.Default); + Assert.Equal(true, to.Default); Assert.Equal("XXXXXX", to.Auto); Assert.NotNull(to.Find); diff --git a/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs b/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs index adc77d6d..0f4132a2 100644 --- a/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs +++ b/SabreTools.Serialization.CrossModel.Test/SoftwareListTests.cs @@ -95,7 +95,7 @@ namespace SabreTools.Serialization.CrossModel.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var dipswitch = new Data.Models.SoftwareList.DipSwitch @@ -304,7 +304,7 @@ namespace SabreTools.Serialization.CrossModel.Test Assert.NotNull(dipvalue); Assert.Equal("XXXXXX", dipvalue.Name); Assert.Equal("XXXXXX", dipvalue.Value); - Assert.Equal("XXXXXX", dipvalue.Default); + Assert.Equal(true, dipvalue.Default); } } } diff --git a/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs b/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs index cb198879..decc19fb 100644 --- a/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs +++ b/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs @@ -155,7 +155,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, Description = item.ReadString(Data.Models.Metadata.BiosSet.DescriptionKey), - Default = item.ReadString(Data.Models.Metadata.BiosSet.DefaultKey), + Default = item.Default, }; return biosset; } @@ -184,7 +184,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, Entry = item[Data.Models.Metadata.DipSwitch.EntryKey] as string[], - Default = item.ReadString(Data.Models.Metadata.DipSwitch.DefaultKey), + Default = item.Default, }; return dipswitch; } @@ -266,7 +266,7 @@ namespace SabreTools.Serialization.CrossModel Region = item.ReadString(Data.Models.Metadata.Release.RegionKey), Language = item.ReadString(Data.Models.Metadata.Release.LanguageKey), Date = item.ReadString(Data.Models.Metadata.Release.DateKey), - Default = item.ReadString(Data.Models.Metadata.Release.DefaultKey), + Default = item.Default, }; return release; } diff --git a/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs b/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs index 0c2f1399..29f6c4e0 100644 --- a/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs +++ b/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs @@ -168,7 +168,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, [Data.Models.Metadata.BiosSet.DescriptionKey] = item.Description, - [Data.Models.Metadata.BiosSet.DefaultKey] = item.Default, + Default = item.Default, }; return biosset; } @@ -197,7 +197,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, [Data.Models.Metadata.DipSwitch.EntryKey] = item.Entry, - [Data.Models.Metadata.DipSwitch.DefaultKey] = item.Default, + Default = item.Default, }; return dipswitch; } @@ -279,7 +279,7 @@ namespace SabreTools.Serialization.CrossModel [Data.Models.Metadata.Release.RegionKey] = item.Region, [Data.Models.Metadata.Release.LanguageKey] = item.Language, [Data.Models.Metadata.Release.DateKey] = item.Date, - [Data.Models.Metadata.Release.DefaultKey] = item.Default, + Default = item.Default, }; return release; } diff --git a/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs b/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs index 3064aaa2..f6c89311 100644 --- a/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs +++ b/SabreTools.Serialization.CrossModel/Listxml.Deserializer.cs @@ -149,7 +149,7 @@ namespace SabreTools.Serialization.CrossModel var adjuster = new Adjuster { Name = item.Name, - Default = item.ReadString(Data.Models.Metadata.Adjuster.DefaultKey), + Default = item.Default, }; var condition = item.Read(Data.Models.Metadata.Adjuster.ConditionKey); @@ -180,7 +180,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, Description = item.ReadString(Data.Models.Metadata.BiosSet.DescriptionKey), - Default = item.ReadString(Data.Models.Metadata.BiosSet.DefaultKey), + Default = item.Default, }; return biosset; } @@ -266,7 +266,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, Value = item.ReadString(Data.Models.Metadata.ConfSetting.ValueKey), - Default = item.ReadString(Data.Models.Metadata.ConfSetting.DefaultKey), + Default = item.Default, }; var condition = item.Read(Data.Models.Metadata.ConfSetting.ConditionKey); @@ -386,7 +386,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, Value = item.ReadString(Data.Models.Metadata.DipValue.ValueKey), - Default = item.ReadString(Data.Models.Metadata.DipValue.DefaultKey), + Default = item.Default, }; var condition = item.Read(Data.Models.Metadata.DipValue.ConditionKey); @@ -552,7 +552,7 @@ namespace SabreTools.Serialization.CrossModel var ramOption = new RamOption { Name = item.Name, - Default = item.ReadString(Data.Models.Metadata.RamOption.DefaultKey), + Default = item.Default, Content = item.ReadString(Data.Models.Metadata.RamOption.ContentKey), }; return ramOption; @@ -619,7 +619,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, DevName = item.ReadString(Data.Models.Metadata.SlotOption.DevNameKey), - Default = item.ReadString(Data.Models.Metadata.SlotOption.DefaultKey), + Default = item.Default, }; return slotOption; } diff --git a/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs b/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs index 2769f63c..8ffd89eb 100644 --- a/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs +++ b/SabreTools.Serialization.CrossModel/Listxml.Serializer.cs @@ -183,7 +183,7 @@ namespace SabreTools.Serialization.CrossModel var adjuster = new Data.Models.Metadata.Adjuster { Name = item.Name, - [Data.Models.Metadata.Adjuster.DefaultKey] = item.Default, + Default = item.Default, }; if (item.Condition is not null) @@ -213,7 +213,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, [Data.Models.Metadata.BiosSet.DescriptionKey] = item.Description, - [Data.Models.Metadata.BiosSet.DefaultKey] = item.Default, + Default = item.Default, }; return biosset; } @@ -302,7 +302,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, [Data.Models.Metadata.ConfSetting.ValueKey] = item.Value, - [Data.Models.Metadata.ConfSetting.DefaultKey] = item.Default, + Default = item.Default, }; if (item.Condition is not null) @@ -425,7 +425,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, [Data.Models.Metadata.DipValue.ValueKey] = item.Value, - [Data.Models.Metadata.DipValue.DefaultKey] = item.Default, + Default = item.Default, }; if (item.Condition is not null) @@ -591,7 +591,7 @@ namespace SabreTools.Serialization.CrossModel var ramOption = new Data.Models.Metadata.RamOption { Name = item.Name, - [Data.Models.Metadata.RamOption.DefaultKey] = item.Default, + Default = item.Default, [Data.Models.Metadata.RamOption.ContentKey] = item.Content, }; return ramOption; @@ -660,7 +660,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, [Data.Models.Metadata.SlotOption.DevNameKey] = item.DevName, - [Data.Models.Metadata.SlotOption.DefaultKey] = item.Default, + Default = item.Default, }; return slotOption; } diff --git a/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs b/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs index 8ded8f42..1cc2a969 100644 --- a/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs +++ b/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs @@ -208,7 +208,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, Description = item.ReadString(Data.Models.Metadata.BiosSet.DescriptionKey), - Default = item.ReadString(Data.Models.Metadata.BiosSet.DefaultKey), + Default = item.Default, }; return biosset; } @@ -288,7 +288,7 @@ namespace SabreTools.Serialization.CrossModel Region = item.ReadString(Data.Models.Metadata.Release.RegionKey), Language = item.ReadString(Data.Models.Metadata.Release.LanguageKey), Date = item.ReadString(Data.Models.Metadata.Release.DateKey), - Default = item.ReadString(Data.Models.Metadata.Release.DefaultKey), + Default = item.Default, }; return release; } diff --git a/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs b/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs index 33ed2d0b..ffefd9f4 100644 --- a/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs +++ b/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs @@ -202,7 +202,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, [Data.Models.Metadata.BiosSet.DescriptionKey] = item.Description, - [Data.Models.Metadata.BiosSet.DefaultKey] = item.Default, + Default = item.Default, }; return biosset; } @@ -282,7 +282,7 @@ namespace SabreTools.Serialization.CrossModel [Data.Models.Metadata.Release.RegionKey] = item.Region, [Data.Models.Metadata.Release.LanguageKey] = item.Language, [Data.Models.Metadata.Release.DateKey] = item.Date, - [Data.Models.Metadata.Release.DefaultKey] = item.Default, + Default = item.Default, }; return release; } diff --git a/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs b/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs index e5bcaf2f..911dd26c 100644 --- a/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs +++ b/SabreTools.Serialization.CrossModel/SoftwareList.Deserializer.cs @@ -114,7 +114,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, Value = item.ReadString(Data.Models.Metadata.DipValue.ValueKey), - Default = item.ReadString(Data.Models.Metadata.DipValue.DefaultKey), + Default = item.Default, }; return dipValue; } diff --git a/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs b/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs index ea3f33e5..73318d52 100644 --- a/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs +++ b/SabreTools.Serialization.CrossModel/SoftwareList.Serializer.cs @@ -113,7 +113,7 @@ namespace SabreTools.Serialization.CrossModel { Name = item.Name, [Data.Models.Metadata.DipValue.ValueKey] = item.Value, - [Data.Models.Metadata.DipValue.DefaultKey] = item.Default, + Default = item.Default, }; return dipValue; } diff --git a/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs b/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs index cd0969e2..8539c4b7 100644 --- a/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs +++ b/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs @@ -201,14 +201,14 @@ namespace SabreTools.Serialization.Readers.Test Region = "XXXXXX", Language = "XXXXXX", Date = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var biosset = new Data.Models.ClrMamePro.BiosSet { Name = "XXXXXX", Description = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var rom = new Data.Models.ClrMamePro.Rom @@ -309,7 +309,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Entry = ["XXXXXX"], - Default = "XXXXXX", + Default = true, }; var driver = new Data.Models.ClrMamePro.Driver @@ -456,7 +456,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.Equal("XXXXXX", release.Region); Assert.Equal("XXXXXX", release.Language); Assert.Equal("XXXXXX", release.Date); - Assert.Equal("XXXXXX", release.Default); + Assert.Equal(true, release.Default); } /// @@ -467,7 +467,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(biosset); Assert.Equal("XXXXXX", biosset.Name); Assert.Equal("XXXXXX", biosset.Description); - Assert.Equal("XXXXXX", biosset.Default); + Assert.Equal(true, biosset.Default); } /// @@ -612,7 +612,7 @@ namespace SabreTools.Serialization.Readers.Test string entry = Assert.Single(dipswitch.Entry); Assert.Equal("XXXXXX", entry); - Assert.Equal("XXXXXX", dipswitch.Default); + Assert.Equal(true, dipswitch.Default); } /// diff --git a/SabreTools.Serialization.Readers.Test/ListxmlTests.cs b/SabreTools.Serialization.Readers.Test/ListxmlTests.cs index 6405b523..12c75f96 100644 --- a/SabreTools.Serialization.Readers.Test/ListxmlTests.cs +++ b/SabreTools.Serialization.Readers.Test/ListxmlTests.cs @@ -134,7 +134,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Description = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var rom = new Data.Models.Listxml.Rom @@ -265,7 +265,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -290,7 +290,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -318,7 +318,7 @@ namespace SabreTools.Serialization.Readers.Test var adjuster = new Data.Models.Listxml.Adjuster { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -370,7 +370,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", DevName = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var slot = new Data.Models.Listxml.Slot @@ -390,7 +390,7 @@ namespace SabreTools.Serialization.Readers.Test var ramoption = new Data.Models.Listxml.RamOption { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Content = "XXXXXX", }; @@ -542,7 +542,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(biosset); Assert.Equal("XXXXXX", biosset.Name); Assert.Equal("XXXXXX", biosset.Description); - Assert.Equal("XXXXXX", biosset.Default); + Assert.Equal(true, biosset.Default); } /// @@ -748,7 +748,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(dipvalue); Assert.Equal("XXXXXX", dipvalue.Name); Assert.Equal("XXXXXX", dipvalue.Value); - Assert.Equal("XXXXXX", dipvalue.Default); + Assert.Equal(true, dipvalue.Default); Validate(dipvalue.Condition); } @@ -791,7 +791,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(confsetting); Assert.Equal("XXXXXX", confsetting.Name); Assert.Equal("XXXXXX", confsetting.Value); - Assert.Equal("XXXXXX", confsetting.Default); + Assert.Equal(true, confsetting.Default); Validate(confsetting.Condition); } @@ -824,7 +824,7 @@ namespace SabreTools.Serialization.Readers.Test { Assert.NotNull(adjuster); Assert.Equal("XXXXXX", adjuster.Name); - Assert.Equal("XXXXXX", adjuster.Default); + Assert.Equal(true, adjuster.Default); Validate(adjuster.Condition); } @@ -916,7 +916,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(slotoption); Assert.Equal("XXXXXX", slotoption.Name); Assert.Equal("XXXXXX", slotoption.DevName); - Assert.Equal("XXXXXX", slotoption.Default); + Assert.Equal(true, slotoption.Default); } /// @@ -938,7 +938,7 @@ namespace SabreTools.Serialization.Readers.Test { Assert.NotNull(ramoption); Assert.Equal("XXXXXX", ramoption.Name); - Assert.Equal("XXXXXX", ramoption.Default); + Assert.Equal(true, ramoption.Default); Assert.Equal("XXXXXX", ramoption.Content); } } diff --git a/SabreTools.Serialization.Readers.Test/LogiqxTests.cs b/SabreTools.Serialization.Readers.Test/LogiqxTests.cs index c7f44a7d..e2918439 100644 --- a/SabreTools.Serialization.Readers.Test/LogiqxTests.cs +++ b/SabreTools.Serialization.Readers.Test/LogiqxTests.cs @@ -200,14 +200,14 @@ namespace SabreTools.Serialization.Readers.Test Region = "XXXXXX", Language = "XXXXXX", Date = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var biosset = new Data.Models.Logiqx.BiosSet { Name = "XXXXXX", Description = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var rom = new Data.Models.Logiqx.Rom @@ -493,7 +493,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.Equal("XXXXXX", release.Region); Assert.Equal("XXXXXX", release.Language); Assert.Equal("XXXXXX", release.Date); - Assert.Equal("XXXXXX", release.Default); + Assert.Equal(true, release.Default); } /// @@ -504,7 +504,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(biosset); Assert.Equal("XXXXXX", biosset.Name); Assert.Equal("XXXXXX", biosset.Description); - Assert.Equal("XXXXXX", biosset.Default); + Assert.Equal(true, biosset.Default); } /// diff --git a/SabreTools.Serialization.Readers.Test/M1Tests.cs b/SabreTools.Serialization.Readers.Test/M1Tests.cs index a9493600..090d6a64 100644 --- a/SabreTools.Serialization.Readers.Test/M1Tests.cs +++ b/SabreTools.Serialization.Readers.Test/M1Tests.cs @@ -130,7 +130,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Description = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var rom = new Data.Models.Listxml.Rom @@ -261,7 +261,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -286,7 +286,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -314,7 +314,7 @@ namespace SabreTools.Serialization.Readers.Test var adjuster = new Data.Models.Listxml.Adjuster { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -366,7 +366,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", DevName = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var slot = new Data.Models.Listxml.Slot @@ -386,7 +386,7 @@ namespace SabreTools.Serialization.Readers.Test var ramoption = new Data.Models.Listxml.RamOption { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Content = "XXXXXX", }; @@ -536,7 +536,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(biosset); Assert.Equal("XXXXXX", biosset.Name); Assert.Equal("XXXXXX", biosset.Description); - Assert.Equal("XXXXXX", biosset.Default); + Assert.Equal(true, biosset.Default); } /// @@ -742,7 +742,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(dipvalue); Assert.Equal("XXXXXX", dipvalue.Name); Assert.Equal("XXXXXX", dipvalue.Value); - Assert.Equal("XXXXXX", dipvalue.Default); + Assert.Equal(true, dipvalue.Default); Validate(dipvalue.Condition); } @@ -785,7 +785,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(confsetting); Assert.Equal("XXXXXX", confsetting.Name); Assert.Equal("XXXXXX", confsetting.Value); - Assert.Equal("XXXXXX", confsetting.Default); + Assert.Equal(true, confsetting.Default); Validate(confsetting.Condition); } @@ -818,7 +818,7 @@ namespace SabreTools.Serialization.Readers.Test { Assert.NotNull(adjuster); Assert.Equal("XXXXXX", adjuster.Name); - Assert.Equal("XXXXXX", adjuster.Default); + Assert.Equal(true, adjuster.Default); Validate(adjuster.Condition); } @@ -910,7 +910,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(slotoption); Assert.Equal("XXXXXX", slotoption.Name); Assert.Equal("XXXXXX", slotoption.DevName); - Assert.Equal("XXXXXX", slotoption.Default); + Assert.Equal(true, slotoption.Default); } /// @@ -932,7 +932,7 @@ namespace SabreTools.Serialization.Readers.Test { Assert.NotNull(ramoption); Assert.Equal("XXXXXX", ramoption.Name); - Assert.Equal("XXXXXX", ramoption.Default); + Assert.Equal(true, ramoption.Default); Assert.Equal("XXXXXX", ramoption.Content); } } diff --git a/SabreTools.Serialization.Readers.Test/MessTests.cs b/SabreTools.Serialization.Readers.Test/MessTests.cs index 4abddd17..d808f559 100644 --- a/SabreTools.Serialization.Readers.Test/MessTests.cs +++ b/SabreTools.Serialization.Readers.Test/MessTests.cs @@ -130,7 +130,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Description = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var rom = new Data.Models.Listxml.Rom @@ -261,7 +261,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -286,7 +286,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -314,7 +314,7 @@ namespace SabreTools.Serialization.Readers.Test var adjuster = new Data.Models.Listxml.Adjuster { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Condition = condition, }; @@ -366,7 +366,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", DevName = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var slot = new Data.Models.Listxml.Slot @@ -386,7 +386,7 @@ namespace SabreTools.Serialization.Readers.Test var ramoption = new Data.Models.Listxml.RamOption { Name = "XXXXXX", - Default = "XXXXXX", + Default = true, Content = "XXXXXX", }; @@ -536,7 +536,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(biosset); Assert.Equal("XXXXXX", biosset.Name); Assert.Equal("XXXXXX", biosset.Description); - Assert.Equal("XXXXXX", biosset.Default); + Assert.Equal(true, biosset.Default); } /// @@ -742,7 +742,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(dipvalue); Assert.Equal("XXXXXX", dipvalue.Name); Assert.Equal("XXXXXX", dipvalue.Value); - Assert.Equal("XXXXXX", dipvalue.Default); + Assert.Equal(true, dipvalue.Default); Validate(dipvalue.Condition); } @@ -785,7 +785,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(confsetting); Assert.Equal("XXXXXX", confsetting.Name); Assert.Equal("XXXXXX", confsetting.Value); - Assert.Equal("XXXXXX", confsetting.Default); + Assert.Equal(true, confsetting.Default); Validate(confsetting.Condition); } @@ -818,7 +818,7 @@ namespace SabreTools.Serialization.Readers.Test { Assert.NotNull(adjuster); Assert.Equal("XXXXXX", adjuster.Name); - Assert.Equal("XXXXXX", adjuster.Default); + Assert.Equal(true, adjuster.Default); Validate(adjuster.Condition); } @@ -910,7 +910,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(slotoption); Assert.Equal("XXXXXX", slotoption.Name); Assert.Equal("XXXXXX", slotoption.DevName); - Assert.Equal("XXXXXX", slotoption.Default); + Assert.Equal(true, slotoption.Default); } /// @@ -932,7 +932,7 @@ namespace SabreTools.Serialization.Readers.Test { Assert.NotNull(ramoption); Assert.Equal("XXXXXX", ramoption.Name); - Assert.Equal("XXXXXX", ramoption.Default); + Assert.Equal(true, ramoption.Default); Assert.Equal("XXXXXX", ramoption.Content); } } diff --git a/SabreTools.Serialization.Readers.Test/OfflineListTests.cs b/SabreTools.Serialization.Readers.Test/OfflineListTests.cs index f0c821b5..c283bf6e 100644 --- a/SabreTools.Serialization.Readers.Test/OfflineListTests.cs +++ b/SabreTools.Serialization.Readers.Test/OfflineListTests.cs @@ -105,85 +105,85 @@ namespace SabreTools.Serialization.Readers.Test { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Location = new Data.Models.OfflineList.Location { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Publisher = new Data.Models.OfflineList.Publisher { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, SourceRom = new Data.Models.OfflineList.SourceRom { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, SaveType = new Data.Models.OfflineList.SaveType { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, RomSize = new Data.Models.OfflineList.RomSize { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, ReleaseNumber = new Data.Models.OfflineList.ReleaseNumber { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, ImageNumber = new Data.Models.OfflineList.ImageNumber { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, LanguageNumber = new Data.Models.OfflineList.LanguageNumber { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Comment = new Data.Models.OfflineList.Comment { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, RomCRC = new Data.Models.OfflineList.RomCRC { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Im1CRC = new Data.Models.OfflineList.Im1CRC { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Im2CRC = new Data.Models.OfflineList.Im2CRC { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, Languages = new Data.Models.OfflineList.Languages { Visible = "XXXXXX", InNamingOption = "XXXXXX", - Default = "XXXXXX", + Default = true, }, }; @@ -215,7 +215,7 @@ namespace SabreTools.Serialization.Readers.Test var to = new Data.Models.OfflineList.To { Value = "XXXXXX", - Default = "XXXXXX", + Default = true, Auto = "XXXXXX", Find = [find], }; @@ -352,7 +352,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(info); Assert.Equal("XXXXXX", info.Visible); Assert.Equal("XXXXXX", info.InNamingOption); - Assert.Equal("XXXXXX", info.Default); + Assert.Equal(true, info.Default); } /// @@ -405,7 +405,7 @@ namespace SabreTools.Serialization.Readers.Test { Assert.NotNull(to); Assert.Equal("XXXXXX", to.Value); - Assert.Equal("XXXXXX", to.Default); + Assert.Equal(true, to.Default); Assert.Equal("XXXXXX", to.Auto); Assert.NotNull(to.Find); diff --git a/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs b/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs index bbe3a738..5b568e52 100644 --- a/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs +++ b/SabreTools.Serialization.Readers.Test/SoftwareListTests.cs @@ -168,7 +168,7 @@ namespace SabreTools.Serialization.Readers.Test { Name = "XXXXXX", Value = "XXXXXX", - Default = "XXXXXX", + Default = true, }; var dipswitch = new Data.Models.SoftwareList.DipSwitch @@ -377,7 +377,7 @@ namespace SabreTools.Serialization.Readers.Test Assert.NotNull(dipvalue); Assert.Equal("XXXXXX", dipvalue.Name); Assert.Equal("XXXXXX", dipvalue.Value); - Assert.Equal("XXXXXX", dipvalue.Default); + Assert.Equal(true, dipvalue.Default); } } } diff --git a/SabreTools.Serialization.Readers/ClrMamePro.cs b/SabreTools.Serialization.Readers/ClrMamePro.cs index aed9f3ce..e7952b3c 100644 --- a/SabreTools.Serialization.Readers/ClrMamePro.cs +++ b/SabreTools.Serialization.Readers/ClrMamePro.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.IO; using System.Text; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.ClrMamePro; using SabreTools.Text.ClrMamePro; @@ -463,7 +464,7 @@ namespace SabreTools.Serialization.Readers release.Date = kvp.Value; break; case "default": - release.Default = kvp.Value; + release.Default = kvp.Value.AsYesNo(); break; default: itemAdditional.Add($"{kvp.Key}: {kvp.Value}"); @@ -496,7 +497,7 @@ namespace SabreTools.Serialization.Readers biosset.Description = kvp.Value; break; case "default": - biosset.Default = kvp.Value; + biosset.Default = kvp.Value.AsYesNo(); break; default: // TODO: Log invalid values @@ -920,7 +921,7 @@ namespace SabreTools.Serialization.Readers entries.Add(kvp.Value); break; case "default": - dipswitch.Default = kvp.Value; + dipswitch.Default = kvp.Value.AsYesNo(); break; default: // TODO: Log invalid values diff --git a/SabreTools.Serialization.Readers/Listxml.cs b/SabreTools.Serialization.Readers/Listxml.cs index f51cbad5..e497a1f6 100644 --- a/SabreTools.Serialization.Readers/Listxml.cs +++ b/SabreTools.Serialization.Readers/Listxml.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.IO; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.Listxml; namespace SabreTools.Serialization.Readers @@ -117,7 +118,7 @@ namespace SabreTools.Serialization.Readers var obj = new Adjuster(); obj.Name = reader.GetAttribute("name"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); while (reader.Read()) { @@ -172,7 +173,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Description = reader.GetAttribute("description"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -300,7 +301,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Value = reader.GetAttribute("value"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); while (reader.Read()) { @@ -511,7 +512,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Value = reader.GetAttribute("value"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); while (reader.Read()) { @@ -1028,7 +1029,7 @@ namespace SabreTools.Serialization.Readers var obj = new RamOption(); obj.Name = reader.GetAttribute("name"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); obj.Content = reader.ReadElementContentAsString(); return obj; @@ -1128,7 +1129,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.DevName = reader.GetAttribute("devname"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } diff --git a/SabreTools.Serialization.Readers/Logiqx.cs b/SabreTools.Serialization.Readers/Logiqx.cs index 95c71af7..cbead97a 100644 --- a/SabreTools.Serialization.Readers/Logiqx.cs +++ b/SabreTools.Serialization.Readers/Logiqx.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.IO; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.Logiqx; namespace SabreTools.Serialization.Readers @@ -316,7 +317,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Description = reader.GetAttribute("description"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -673,7 +674,7 @@ namespace SabreTools.Serialization.Readers obj.Region = reader.GetAttribute("region"); obj.Language = reader.GetAttribute("language"); obj.Date = reader.GetAttribute("date"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } diff --git a/SabreTools.Serialization.Readers/M1.cs b/SabreTools.Serialization.Readers/M1.cs index 32513c67..8e744ff4 100644 --- a/SabreTools.Serialization.Readers/M1.cs +++ b/SabreTools.Serialization.Readers/M1.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.IO; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.Listxml; namespace SabreTools.Serialization.Readers @@ -115,7 +116,7 @@ namespace SabreTools.Serialization.Readers var obj = new Adjuster(); obj.Name = reader.GetAttribute("name"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); while (reader.Read()) { @@ -170,7 +171,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Description = reader.GetAttribute("description"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -298,7 +299,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Value = reader.GetAttribute("value"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); while (reader.Read()) { @@ -509,7 +510,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Value = reader.GetAttribute("value"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); while (reader.Read()) { @@ -1026,7 +1027,7 @@ namespace SabreTools.Serialization.Readers var obj = new RamOption(); obj.Name = reader.GetAttribute("name"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); obj.Content = reader.ReadElementContentAsString(); return obj; @@ -1126,7 +1127,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.DevName = reader.GetAttribute("devname"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } diff --git a/SabreTools.Serialization.Readers/Mess.cs b/SabreTools.Serialization.Readers/Mess.cs index 6419846c..1a197ff2 100644 --- a/SabreTools.Serialization.Readers/Mess.cs +++ b/SabreTools.Serialization.Readers/Mess.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.IO; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.Listxml; namespace SabreTools.Serialization.Readers @@ -115,7 +116,7 @@ namespace SabreTools.Serialization.Readers var obj = new Adjuster(); obj.Name = reader.GetAttribute("name"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); while (reader.Read()) { @@ -170,7 +171,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Description = reader.GetAttribute("description"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -298,7 +299,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Value = reader.GetAttribute("value"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); while (reader.Read()) { @@ -509,7 +510,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Value = reader.GetAttribute("value"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); while (reader.Read()) { @@ -1026,7 +1027,7 @@ namespace SabreTools.Serialization.Readers var obj = new RamOption(); obj.Name = reader.GetAttribute("name"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); obj.Content = reader.ReadElementContentAsString(); return obj; @@ -1126,7 +1127,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.DevName = reader.GetAttribute("devname"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } diff --git a/SabreTools.Serialization.Readers/OfflineList.cs b/SabreTools.Serialization.Readers/OfflineList.cs index ef32ea0f..2a469d3e 100644 --- a/SabreTools.Serialization.Readers/OfflineList.cs +++ b/SabreTools.Serialization.Readers/OfflineList.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.IO; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.OfflineList; namespace SabreTools.Serialization.Readers @@ -167,7 +168,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -578,7 +579,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -594,7 +595,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -627,7 +628,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -822,7 +823,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -838,7 +839,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -854,7 +855,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -870,7 +871,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -886,7 +887,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -902,7 +903,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -918,7 +919,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -934,7 +935,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -950,7 +951,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -966,7 +967,7 @@ namespace SabreTools.Serialization.Readers obj.Visible = reader.GetAttribute("visible"); obj.InNamingOption = reader.GetAttribute("inNamingOption"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } @@ -1077,7 +1078,7 @@ namespace SabreTools.Serialization.Readers var obj = new To(); obj.Value = reader.GetAttribute("value"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); obj.Auto = reader.GetAttribute("auto"); List finds = []; diff --git a/SabreTools.Serialization.Readers/SoftwareList.cs b/SabreTools.Serialization.Readers/SoftwareList.cs index 6efdf443..649d0cce 100644 --- a/SabreTools.Serialization.Readers/SoftwareList.cs +++ b/SabreTools.Serialization.Readers/SoftwareList.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.IO; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.SoftwareList; namespace SabreTools.Serialization.Readers @@ -224,7 +225,7 @@ namespace SabreTools.Serialization.Readers obj.Name = reader.GetAttribute("name"); obj.Value = reader.GetAttribute("value"); - obj.Default = reader.GetAttribute("default"); + obj.Default = reader.GetAttribute("default").AsYesNo(); return obj; } diff --git a/SabreTools.Serialization.Writers/ClrMamePro.cs b/SabreTools.Serialization.Writers/ClrMamePro.cs index 10e1e155..75ea39b9 100644 --- a/SabreTools.Serialization.Writers/ClrMamePro.cs +++ b/SabreTools.Serialization.Writers/ClrMamePro.cs @@ -1,5 +1,6 @@ using System.IO; using System.Text; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.ClrMamePro; using SabreTools.IO.Extensions; using SabreTools.Text.ClrMamePro; @@ -217,7 +218,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("region", release.Region, throwOnError: true); writer.WriteOptionalAttributeString("language", release.Language); writer.WriteOptionalAttributeString("date", release.Date); - writer.WriteOptionalAttributeString("default", release.Default); + writer.WriteOptionalAttributeString("default", release.Default.FromYesNo()); writer.WriteEndElement(); // release } } @@ -238,7 +239,7 @@ namespace SabreTools.Serialization.Writers writer.WriteStartElement("biosset"); writer.WriteRequiredAttributeString("name", biosset.Name, throwOnError: true); writer.WriteRequiredAttributeString("description", biosset.Description, throwOnError: true); - writer.WriteOptionalAttributeString("default", biosset.Default); + writer.WriteOptionalAttributeString("default", biosset.Default.FromYesNo()); writer.WriteEndElement(); // release } } @@ -477,7 +478,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("entry", entry); } - writer.WriteOptionalAttributeString("default", dipswitch.Default); + writer.WriteOptionalAttributeString("default", dipswitch.Default.FromYesNo()); writer.WriteEndElement(); // dipswitch } } diff --git a/SabreTools.Serialization.Writers/Listxml.cs b/SabreTools.Serialization.Writers/Listxml.cs index 2dfef2c8..b834c5eb 100644 --- a/SabreTools.Serialization.Writers/Listxml.cs +++ b/SabreTools.Serialization.Writers/Listxml.cs @@ -1,6 +1,7 @@ using System.IO; using System.Text; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.Listxml; using SabreTools.IO.Extensions; using SabreTools.Text.Extensions; @@ -75,7 +76,7 @@ namespace SabreTools.Serialization.Writers writer.WriteStartElement("adjuster"); writer.WriteRequiredAttributeString("name", obj.Name); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Condition is not null) WriteCondition(obj.Condition, writer); @@ -108,7 +109,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("description", obj.Description); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); writer.WriteEndElement(); } @@ -210,7 +211,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("value", obj.Value); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Condition is not null) WriteCondition(obj.Condition, writer); @@ -348,7 +349,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("value", obj.Value); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Condition is not null) WriteCondition(obj.Condition, writer); @@ -710,7 +711,7 @@ namespace SabreTools.Serialization.Writers writer.WriteStartElement("ramoption"); writer.WriteRequiredAttributeString("name", obj.Name); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Content is not null) writer.WriteValue(obj.Content); @@ -790,7 +791,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("devname", obj.DevName); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); writer.WriteEndElement(); } diff --git a/SabreTools.Serialization.Writers/Logiqx.cs b/SabreTools.Serialization.Writers/Logiqx.cs index 7fc4030d..ab668ac0 100644 --- a/SabreTools.Serialization.Writers/Logiqx.cs +++ b/SabreTools.Serialization.Writers/Logiqx.cs @@ -1,6 +1,7 @@ using System.IO; using System.Text; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.Logiqx; using SabreTools.IO.Extensions; using SabreTools.Text.Extensions; @@ -213,7 +214,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("description", obj.Description); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); writer.WriteEndElement(); } @@ -466,7 +467,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("region", obj.Region); writer.WriteOptionalAttributeString("language", obj.Language); writer.WriteOptionalAttributeString("date", obj.Date); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); writer.WriteEndElement(); } diff --git a/SabreTools.Serialization.Writers/M1.cs b/SabreTools.Serialization.Writers/M1.cs index 0ebd55cf..cb9c879c 100644 --- a/SabreTools.Serialization.Writers/M1.cs +++ b/SabreTools.Serialization.Writers/M1.cs @@ -1,6 +1,7 @@ using System.IO; using System.Text; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.Listxml; using SabreTools.IO.Extensions; using SabreTools.Text.Extensions; @@ -73,7 +74,7 @@ namespace SabreTools.Serialization.Writers writer.WriteStartElement("adjuster"); writer.WriteRequiredAttributeString("name", obj.Name); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Condition is not null) WriteCondition(obj.Condition, writer); @@ -106,7 +107,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("description", obj.Description); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); writer.WriteEndElement(); } @@ -208,7 +209,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("value", obj.Value); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Condition is not null) WriteCondition(obj.Condition, writer); @@ -346,7 +347,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("value", obj.Value); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Condition is not null) WriteCondition(obj.Condition, writer); @@ -708,7 +709,7 @@ namespace SabreTools.Serialization.Writers writer.WriteStartElement("ramoption"); writer.WriteRequiredAttributeString("name", obj.Name); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Content is not null) writer.WriteValue(obj.Content); @@ -788,7 +789,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("devname", obj.DevName); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); writer.WriteEndElement(); } diff --git a/SabreTools.Serialization.Writers/Mess.cs b/SabreTools.Serialization.Writers/Mess.cs index d37bfa3e..698bd133 100644 --- a/SabreTools.Serialization.Writers/Mess.cs +++ b/SabreTools.Serialization.Writers/Mess.cs @@ -1,6 +1,7 @@ using System.IO; using System.Text; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.Listxml; using SabreTools.IO.Extensions; using SabreTools.Text.Extensions; @@ -73,7 +74,7 @@ namespace SabreTools.Serialization.Writers writer.WriteStartElement("adjuster"); writer.WriteRequiredAttributeString("name", obj.Name); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Condition is not null) WriteCondition(obj.Condition, writer); @@ -106,7 +107,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("description", obj.Description); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); writer.WriteEndElement(); } @@ -208,7 +209,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("value", obj.Value); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Condition is not null) WriteCondition(obj.Condition, writer); @@ -346,7 +347,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("value", obj.Value); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Condition is not null) WriteCondition(obj.Condition, writer); @@ -708,7 +709,7 @@ namespace SabreTools.Serialization.Writers writer.WriteStartElement("ramoption"); writer.WriteRequiredAttributeString("name", obj.Name); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); if (obj.Content is not null) writer.WriteValue(obj.Content); @@ -788,7 +789,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("devname", obj.DevName); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); writer.WriteEndElement(); } diff --git a/SabreTools.Serialization.Writers/OfflineList.cs b/SabreTools.Serialization.Writers/OfflineList.cs index 05e9d9ad..0ff67661 100644 --- a/SabreTools.Serialization.Writers/OfflineList.cs +++ b/SabreTools.Serialization.Writers/OfflineList.cs @@ -333,7 +333,7 @@ namespace SabreTools.Serialization.Writers writer.WriteOptionalAttributeString("visible", obj.Visible); writer.WriteOptionalAttributeString("inNamingOption", obj.InNamingOption); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.ToString()?.ToLowerInvariant()); writer.WriteEndElement(); } @@ -441,7 +441,7 @@ namespace SabreTools.Serialization.Writers writer.WriteStartElement("to"); writer.WriteOptionalAttributeString("value", obj.Value); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.ToString()?.ToLowerInvariant()); writer.WriteOptionalAttributeString("auto", obj.Auto); if (obj.Find is not null && obj.Find.Length > 0) diff --git a/SabreTools.Serialization.Writers/SabreTools.Serialization.Writers.csproj b/SabreTools.Serialization.Writers/SabreTools.Serialization.Writers.csproj index da86eb6b..355919c3 100644 --- a/SabreTools.Serialization.Writers/SabreTools.Serialization.Writers.csproj +++ b/SabreTools.Serialization.Writers/SabreTools.Serialization.Writers.csproj @@ -37,6 +37,7 @@ + diff --git a/SabreTools.Serialization.Writers/SoftwareList.cs b/SabreTools.Serialization.Writers/SoftwareList.cs index 64f202a0..e7b316bf 100644 --- a/SabreTools.Serialization.Writers/SoftwareList.cs +++ b/SabreTools.Serialization.Writers/SoftwareList.cs @@ -1,6 +1,7 @@ using System.IO; using System.Text; using System.Xml; +using SabreTools.Data.Extensions; using SabreTools.Data.Models.SoftwareList; using SabreTools.IO.Extensions; using SabreTools.Text.Extensions; @@ -153,7 +154,7 @@ namespace SabreTools.Serialization.Writers writer.WriteRequiredAttributeString("name", obj.Name); writer.WriteRequiredAttributeString("value", obj.Value); - writer.WriteOptionalAttributeString("default", obj.Default); + writer.WriteOptionalAttributeString("default", obj.Default.FromYesNo()); writer.WriteEndElement(); }