mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Remove OfflineListInfo
This commit is contained in:
@@ -68,153 +68,7 @@ namespace SabreTools.DatFiles
|
||||
if (item.ContainsKey(Models.Metadata.Header.InfosKey))
|
||||
{
|
||||
var infos = item.Read<Models.OfflineList.Infos>(Models.Metadata.Header.InfosKey);
|
||||
if (infos != null)
|
||||
{
|
||||
var offlineListInfos = new List<OfflineListInfo>();
|
||||
|
||||
if (infos.Title != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "title",
|
||||
Visible = infos.Title.Visible.AsYesNo(),
|
||||
InNamingOption = infos.Title.InNamingOption.AsYesNo(),
|
||||
Default = infos.Title.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.Location != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "location",
|
||||
Visible = infos.Location.Visible.AsYesNo(),
|
||||
InNamingOption = infos.Location.InNamingOption.AsYesNo(),
|
||||
Default = infos.Location.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.Publisher != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "publisher",
|
||||
Visible = infos.Publisher.Visible.AsYesNo(),
|
||||
InNamingOption = infos.Publisher.InNamingOption.AsYesNo(),
|
||||
Default = infos.Publisher.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.SourceRom != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "sourceRom",
|
||||
Visible = infos.SourceRom.Visible.AsYesNo(),
|
||||
InNamingOption = infos.SourceRom.InNamingOption.AsYesNo(),
|
||||
Default = infos.SourceRom.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.SaveType != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "saveType",
|
||||
Visible = infos.SaveType.Visible.AsYesNo(),
|
||||
InNamingOption = infos.SaveType.InNamingOption.AsYesNo(),
|
||||
Default = infos.SaveType.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.RomSize != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "romSize",
|
||||
Visible = infos.RomSize.Visible.AsYesNo(),
|
||||
InNamingOption = infos.RomSize.InNamingOption.AsYesNo(),
|
||||
Default = infos.RomSize.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.ReleaseNumber != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "releaseNumber",
|
||||
Visible = infos.ReleaseNumber.Visible.AsYesNo(),
|
||||
InNamingOption = infos.ReleaseNumber.InNamingOption.AsYesNo(),
|
||||
Default = infos.ReleaseNumber.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.ImageNumber != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "imageNumber",
|
||||
Visible = infos.ImageNumber.Visible.AsYesNo(),
|
||||
InNamingOption = infos.ImageNumber.InNamingOption.AsYesNo(),
|
||||
Default = infos.ImageNumber.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.LanguageNumber != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "languageNumber",
|
||||
Visible = infos.LanguageNumber.Visible.AsYesNo(),
|
||||
InNamingOption = infos.LanguageNumber.InNamingOption.AsYesNo(),
|
||||
Default = infos.LanguageNumber.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.Comment != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "comment",
|
||||
Visible = infos.Comment.Visible.AsYesNo(),
|
||||
InNamingOption = infos.Comment.InNamingOption.AsYesNo(),
|
||||
Default = infos.Comment.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.RomCRC != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "romCRC",
|
||||
Visible = infos.RomCRC.Visible.AsYesNo(),
|
||||
InNamingOption = infos.RomCRC.InNamingOption.AsYesNo(),
|
||||
Default = infos.RomCRC.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.Im1CRC != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "im1CRC",
|
||||
Visible = infos.Im1CRC.Visible.AsYesNo(),
|
||||
InNamingOption = infos.Im1CRC.InNamingOption.AsYesNo(),
|
||||
Default = infos.Im1CRC.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.Im2CRC != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "im2CRC",
|
||||
Visible = infos.Im2CRC.Visible.AsYesNo(),
|
||||
InNamingOption = infos.Im2CRC.InNamingOption.AsYesNo(),
|
||||
Default = infos.Im2CRC.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
if (infos.Languages != null)
|
||||
{
|
||||
offlineListInfos.Add(new OfflineListInfo
|
||||
{
|
||||
Name = "languages",
|
||||
Visible = infos.Languages.Visible.AsYesNo(),
|
||||
InNamingOption = infos.Languages.InNamingOption.AsYesNo(),
|
||||
Default = infos.Languages.Default.AsYesNo(),
|
||||
});
|
||||
}
|
||||
|
||||
Header.SetFieldValue<OfflineListInfo[]?>(Models.Metadata.Header.InfosKey, [.. offlineListInfos]);
|
||||
}
|
||||
Header.SetFieldValue<Models.OfflineList.Infos?>(Models.Metadata.Header.InfosKey, infos);
|
||||
}
|
||||
if (item.ContainsKey(Models.Metadata.Header.NewDatKey))
|
||||
{
|
||||
|
||||
@@ -85,130 +85,7 @@ namespace SabreTools.DatFiles
|
||||
if (Header.ImagesSpecified)
|
||||
header[Models.Metadata.Header.ImagesKey] = Header.GetFieldValue<Models.OfflineList.Images>(Models.Metadata.Header.ImagesKey);
|
||||
if (Header.InfosSpecified)
|
||||
{
|
||||
var infoItem = new Models.OfflineList.Infos();
|
||||
var infos = Header.GetFieldValue<OfflineListInfo[]?>(Models.Metadata.Header.InfosKey)!;
|
||||
foreach (var info in infos)
|
||||
{
|
||||
switch (info.Name)
|
||||
{
|
||||
case "title":
|
||||
infoItem.Title = new Models.OfflineList.Title
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "location":
|
||||
infoItem.Location = new Models.OfflineList.Location
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "publisher":
|
||||
infoItem.Publisher = new Models.OfflineList.Publisher
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "sourceRom":
|
||||
infoItem.SourceRom = new Models.OfflineList.SourceRom
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "saveType":
|
||||
infoItem.SaveType = new Models.OfflineList.SaveType
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "romSize":
|
||||
infoItem.RomSize = new Models.OfflineList.RomSize
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "releaseNumber":
|
||||
infoItem.ReleaseNumber = new Models.OfflineList.ReleaseNumber
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "imageNumber":
|
||||
infoItem.ImageNumber = new Models.OfflineList.ImageNumber
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "languageNumber":
|
||||
infoItem.LanguageNumber = new Models.OfflineList.LanguageNumber
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "comment":
|
||||
infoItem.Comment = new Models.OfflineList.Comment
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "romCRC":
|
||||
infoItem.RomCRC = new Models.OfflineList.RomCRC
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "im1CRC":
|
||||
infoItem.Im1CRC = new Models.OfflineList.Im1CRC
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "im2CRC":
|
||||
infoItem.Im2CRC = new Models.OfflineList.Im2CRC
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
case "languages":
|
||||
infoItem.Languages = new Models.OfflineList.Languages
|
||||
{
|
||||
Visible = info.Visible.FromYesNo(),
|
||||
InNamingOption = info.InNamingOption.FromYesNo(),
|
||||
Default = info.Default.FromYesNo(),
|
||||
};
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
header[Models.Metadata.Header.InfosKey] = infoItem;
|
||||
}
|
||||
header[Models.Metadata.Header.InfosKey] = Header.GetFieldValue<Models.OfflineList.Infos>(Models.Metadata.Header.InfosKey);
|
||||
if (Header.NewDatSpecified)
|
||||
{
|
||||
var newDat = new Models.OfflineList.NewDat
|
||||
|
||||
@@ -106,7 +106,7 @@ namespace SabreTools.DatFiles
|
||||
{
|
||||
get
|
||||
{
|
||||
var infos = GetFieldValue<OfflineListInfo[]?>(Models.Metadata.Header.InfosKey);
|
||||
var infos = GetFieldValue<Models.OfflineList.InfoBase[]?>(Models.Metadata.Header.InfosKey);
|
||||
return infos != null && infos.Length > 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
namespace SabreTools.DatFiles
|
||||
{
|
||||
/// <summary>
|
||||
/// Represents one OfflineList infos object
|
||||
/// </summary>
|
||||
public class OfflineListInfo
|
||||
{
|
||||
[Models.Required]
|
||||
public string? Name { get; set; }
|
||||
public bool? Visible { get; set; }
|
||||
public bool? InNamingOption { get; set; }
|
||||
public bool? Default { get; set; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user