Fill in a few more string properties

This commit is contained in:
Matt Nadareski
2026-04-02 14:28:46 -04:00
parent 7df083c0b2
commit 12ec3678b8
39 changed files with 235 additions and 172 deletions

View File

@@ -679,7 +679,7 @@ namespace SabreTools.Metadata.DatFiles
.ConvertAll(i => i as Slot)
.FindAll(s => s!.SlotOptionsSpecified)
.SelectMany(s => s!.Read<SlotOption[]?>(Data.Models.Metadata.Slot.SlotOptionKey)!)
.Select(so => so.ReadString(Data.Models.Metadata.SlotOption.DevNameKey)));
.Select(so => so.DevName));
// If we're checking device references
if (deviceReferences.Count > 0)
@@ -745,7 +745,7 @@ namespace SabreTools.Metadata.DatFiles
.FindAll(i => i is Slot)
.FindAll(s => (s as Slot)!.SlotOptionsSpecified)
.SelectMany(s => (s as Slot)!.Read<SlotOption[]?>(Data.Models.Metadata.Slot.SlotOptionKey)!)
.Select(o => o.ReadString(Data.Models.Metadata.SlotOption.DevNameKey)!));
.Select(o => o.DevName!));
// Set new machine information and add to the current machine
foreach (DatItem item in slotItems)
@@ -773,7 +773,7 @@ namespace SabreTools.Metadata.DatFiles
slotOptions.Add(slotOption);
var slotOptionItem = new SlotOption();
slotOptionItem.Write<string?>(Data.Models.Metadata.SlotOption.DevNameKey, slotOption);
slotOptionItem.DevName = slotOption;
slotOptionItem.CopyMachineInformation(copyFrom);
var slotItem = new Slot();
@@ -836,7 +836,7 @@ namespace SabreTools.Metadata.DatFiles
.Select(i => i as Slot)
.Where(s => s!.SlotOptionsSpecified)
.SelectMany(s => s!.Read<SlotOption[]?>(Data.Models.Metadata.Slot.SlotOptionKey)!)
.Select(so => so.ReadString(Data.Models.Metadata.SlotOption.DevNameKey))
.Select(so => so.DevName)
.Distinct()
.ToList();
@@ -915,7 +915,7 @@ namespace SabreTools.Metadata.DatFiles
.Where(i => i is Slot)
.Where(s => (s as Slot)!.SlotOptionsSpecified)
.SelectMany(s => (s as Slot)!.Read<SlotOption[]?>(Data.Models.Metadata.Slot.SlotOptionKey)!)
.Select(o => o.ReadString(Data.Models.Metadata.SlotOption.DevNameKey)!));
.Select(o => o.DevName!));
// Set new machine information and add to the current machine
var copyFrom = GetMachineForItemDB(GetItemsForBucketDB(bucket).First().Key);
@@ -944,7 +944,7 @@ namespace SabreTools.Metadata.DatFiles
if (!slotOptions.Contains(slotOption))
{
var slotOptionItem = new SlotOption();
slotOptionItem.Write<string?>(Data.Models.Metadata.SlotOption.DevNameKey, slotOption);
slotOptionItem.DevName = slotOption;
var slotItem = new Slot();
slotItem.Write<SlotOption[]?>(Data.Models.Metadata.Slot.SlotOptionKey, [slotOptionItem]);

View File

@@ -325,8 +325,8 @@ namespace SabreTools.Metadata.DatFiles
// Copy over string values
partItems[partName].Name = partName;
if (!partItems[partName].ContainsKey(Data.Models.Metadata.Part.InterfaceKey))
partItems[partName][Data.Models.Metadata.Part.InterfaceKey] = partItem.ReadString(Data.Models.Metadata.Part.InterfaceKey);
if (partItems[partName].Interface == null)
partItems[partName].Interface = partItem.Interface;
// Clear any empty fields
ClearEmptyKeys(partItems[partName]);
@@ -751,8 +751,8 @@ namespace SabreTools.Metadata.DatFiles
// Copy over string values
partItems[partName].Name = partName;
if (!partItems[partName].ContainsKey(Data.Models.Metadata.Part.InterfaceKey))
partItems[partName][Data.Models.Metadata.Part.InterfaceKey] = partItem.ReadString(Data.Models.Metadata.Part.InterfaceKey);
if (partItems[partName].Interface == null)
partItems[partName].Interface = partItem.Interface;
// Clear any empty fields
ClearEmptyKeys(partItems[partName]);
@@ -998,7 +998,7 @@ namespace SabreTools.Metadata.DatFiles
var newOriginal = new Data.Models.Metadata.Original
{
[Data.Models.Metadata.Original.ValueKey] = romOriginal.Value.FromYesNo(),
[Data.Models.Metadata.Original.ContentKey] = romOriginal.Content,
Content = romOriginal.Content,
};
dumpRom[Data.Models.Metadata.Dump.OriginalKey] = newOriginal;
}
@@ -1026,7 +1026,7 @@ namespace SabreTools.Metadata.DatFiles
var newOriginal = new Data.Models.Metadata.Original
{
[Data.Models.Metadata.Original.ValueKey] = megaRomOriginal.Value.FromYesNo(),
[Data.Models.Metadata.Original.ContentKey] = megaRomOriginal.Content,
Content = megaRomOriginal.Content,
};
dumpMegaRom[Data.Models.Metadata.Dump.OriginalKey] = newOriginal;
}
@@ -1054,7 +1054,7 @@ namespace SabreTools.Metadata.DatFiles
var newOriginal = new Data.Models.Metadata.Original
{
[Data.Models.Metadata.Original.ValueKey] = sccPlusCartOriginal.Value.FromYesNo(),
[Data.Models.Metadata.Original.ContentKey] = sccPlusCartOriginal.Content,
Content = sccPlusCartOriginal.Content,
};
dumpSccPlusCart[Data.Models.Metadata.Dump.OriginalKey] = newOriginal;
}

View File

@@ -110,14 +110,14 @@ namespace SabreTools.Metadata.DatFiles.Formats
if (!dipSwitch.PartSpecified)
{
missingFields.Add(nameof(Data.Models.Metadata.Part.Name));
missingFields.Add(Data.Models.Metadata.Part.InterfaceKey);
missingFields.Add(nameof(Data.Models.Metadata.Part.Interface));
}
else
{
if (string.IsNullOrEmpty(dipSwitch.Read<Part?>(DipSwitch.PartKey)!.Name))
missingFields.Add(nameof(Data.Models.Metadata.Part.Name));
if (string.IsNullOrEmpty(dipSwitch.Read<Part?>(DipSwitch.PartKey)!.ReadString(Data.Models.Metadata.Part.InterfaceKey)))
missingFields.Add(Data.Models.Metadata.Part.InterfaceKey);
if (string.IsNullOrEmpty(dipSwitch.Read<Part?>(DipSwitch.PartKey)!.Interface))
missingFields.Add(nameof(Data.Models.Metadata.Part.Interface));
}
if (string.IsNullOrEmpty(dipSwitch.Name))
@@ -141,14 +141,14 @@ namespace SabreTools.Metadata.DatFiles.Formats
if (!disk.PartSpecified)
{
missingFields.Add(nameof(Data.Models.Metadata.Part.Name));
missingFields.Add(Data.Models.Metadata.Part.InterfaceKey);
missingFields.Add(nameof(Data.Models.Metadata.Part.Interface));
}
else
{
if (string.IsNullOrEmpty(disk.Read<Part?>(Disk.PartKey)!.Name))
missingFields.Add(nameof(Data.Models.Metadata.Part.Name));
if (string.IsNullOrEmpty(disk.Read<Part?>(Disk.PartKey)!.ReadString(Data.Models.Metadata.Part.InterfaceKey)))
missingFields.Add(Data.Models.Metadata.Part.InterfaceKey);
if (string.IsNullOrEmpty(disk.Read<Part?>(Disk.PartKey)!.Interface))
missingFields.Add(nameof(Data.Models.Metadata.Part.Interface));
}
if (!disk.DiskAreaSpecified)
@@ -174,14 +174,14 @@ namespace SabreTools.Metadata.DatFiles.Formats
if (!rom.PartSpecified)
{
missingFields.Add(nameof(Data.Models.Metadata.Part.Name));
missingFields.Add(Data.Models.Metadata.Part.InterfaceKey);
missingFields.Add(nameof(Data.Models.Metadata.Part.Interface));
}
else
{
if (string.IsNullOrEmpty(rom.Read<Part?>(Rom.PartKey)!.Name))
missingFields.Add(nameof(Data.Models.Metadata.Part.Name));
if (string.IsNullOrEmpty(rom.Read<Part?>(Rom.PartKey)!.ReadString(Data.Models.Metadata.Part.InterfaceKey)))
missingFields.Add(Data.Models.Metadata.Part.InterfaceKey);
if (string.IsNullOrEmpty(rom.Read<Part?>(Rom.PartKey)!.Interface))
missingFields.Add(nameof(Data.Models.Metadata.Part.Interface));
}
if (!rom.DataAreaSpecified)