Add new Archive.org fields to filtering

This commit is contained in:
Matt Nadareski
2021-07-19 11:17:29 -07:00
parent 2ed7d41d34
commit 72700337ad
7 changed files with 137 additions and 1 deletions

View File

@@ -554,6 +554,13 @@ namespace SabreTools.Core
Optional,
Inverted,
// Rom (Archive.org)
ArchiveDotOrgSource,
ArchiveDotOrgFormat,
OriginalFilename,
Rotation,
Summation,
// Rom (AttractMode)
AltName,
AltTitle,

View File

@@ -413,6 +413,25 @@ namespace SabreTools.Core.Tools
case "inverted":
return DatItemField.Inverted;
// Rom (Archive.org)
case "ado-source":
case "ado source":
return DatItemField.ArchiveDotOrgSource;
case "ado-format":
case "ado format":
return DatItemField.ArchiveDotOrgFormat;
case "original-filename":
case "original filename":
return DatItemField.OriginalFilename;
case "rotation":
return DatItemField.Rotation;
case "summation":
return DatItemField.Summation;
// Rom (AttractMode)
case "altname":
case "alt name":

View File

@@ -1081,6 +1081,25 @@ namespace SabreTools.DatFiles
#endregion
#region Archive.org
if (DatItemMappings.Keys.Contains(DatItemField.ArchiveDotOrgSource))
rom.ArchiveDotOrgSource = DatItemMappings[DatItemField.ArchiveDotOrgSource];
if (DatItemMappings.Keys.Contains(DatItemField.ArchiveDotOrgFormat))
rom.ArchiveDotOrgFormat = DatItemMappings[DatItemField.ArchiveDotOrgFormat];
if (DatItemMappings.Keys.Contains(DatItemField.OriginalFilename))
rom.OriginalFilename = DatItemMappings[DatItemField.OriginalFilename];
if (DatItemMappings.Keys.Contains(DatItemField.Rotation))
rom.Rotation = DatItemMappings[DatItemField.Rotation];
if (DatItemMappings.Keys.Contains(DatItemField.Summation))
rom.Summation = DatItemMappings[DatItemField.Summation];
#endregion
#region AttractMode
if (DatItemMappings.Keys.Contains(DatItemField.AltName))

View File

@@ -229,7 +229,7 @@ namespace SabreTools.DatItems.Formats
public string Rotation { get; set; }
/// <summary>
/// Image rotation
/// Summation value?
/// </summary>
[JsonProperty("summation", DefaultValueHandling = DefaultValueHandling.Ignore)]
[XmlElement("summation")]

View File

@@ -44,6 +44,14 @@ namespace SabreTools.Filtering
public FilterItem<bool?> Optional { get; private set; } = new FilterItem<bool?>() { Neutral = null };
public FilterItem<bool?> Inverted { get; private set; } = new FilterItem<bool?>();
// Rom (Archive.org)
public FilterItem<string> ArchiveDotOrgSource { get; private set; } = new FilterItem<string>();
public FilterItem<string> ArchiveDotOrgFormat { get; private set; } = new FilterItem<string>();
public FilterItem<string> OriginalFilename { get; private set; } = new FilterItem<string>();
public FilterItem<string> Rotation { get; private set; } = new FilterItem<string>();
public FilterItem<string> Summation { get; private set; } = new FilterItem<string>();
// Rom (AttractMode)
public FilterItem<string> AltName { get; private set; } = new FilterItem<string>();
public FilterItem<string> AltTitle { get; private set; } = new FilterItem<string>();
@@ -326,6 +334,27 @@ namespace SabreTools.Filtering
SetBooleanFilter(Inverted, value, negate);
break;
// Rom (Archive.org)
case DatItemField.ArchiveDotOrgSource:
SetStringFilter(ArchiveDotOrgSource, value, negate);
break;
case DatItemField.ArchiveDotOrgFormat:
SetStringFilter(ArchiveDotOrgFormat, value, negate);
break;
case DatItemField.OriginalFilename:
SetStringFilter(OriginalFilename, value, negate);
break;
case DatItemField.Rotation:
SetStringFilter(Rotation, value, negate);
break;
case DatItemField.Summation:
SetStringFilter(Summation, value, negate);
break;
// Rom (AttractMode)
case DatItemField.AltName:
SetStringFilter(AltName, value, negate);
@@ -1754,6 +1783,30 @@ namespace SabreTools.Filtering
#endregion
#region Archive.org
// Filter on file source
if (!PassStringFilter(ArchiveDotOrgSource, rom.ArchiveDotOrgSource))
return false;
// Filter on file format
if (!PassStringFilter(ArchiveDotOrgFormat, rom.ArchiveDotOrgFormat))
return false;
// Filter on original filename
if (!PassStringFilter(OriginalFilename, rom.OriginalFilename))
return false;
// Filter on rotation
if (!PassStringFilter(Rotation, rom.Rotation))
return false;
// Filter on summation
if (!PassStringFilter(Summation, rom.Summation))
return false;
#endregion
#region AttractMode
// Filter on alt name

View File

@@ -921,6 +921,25 @@ namespace SabreTools.Filtering
#endregion
#region Archive.org
if (DatItemFields.Contains(DatItemField.ArchiveDotOrgSource))
rom.ArchiveDotOrgSource = null;
if (DatItemFields.Contains(DatItemField.ArchiveDotOrgFormat))
rom.ArchiveDotOrgFormat = null;
if (DatItemFields.Contains(DatItemField.OriginalFilename))
rom.OriginalFilename = null;
if (DatItemFields.Contains(DatItemField.Rotation))
rom.Rotation = null;
if (DatItemFields.Contains(DatItemField.Summation))
rom.Summation = null;
#endregion
#region AttractMode
if (DatItemFields.Contains(DatItemField.AltName))

View File

@@ -910,6 +910,25 @@ namespace SabreTools.Filtering
#endregion
#region Archive.org
if (datItemFields.Contains(DatItemField.ArchiveDotOrgSource))
rom.ArchiveDotOrgSource = newItem.ArchiveDotOrgSource;
if (datItemFields.Contains(DatItemField.ArchiveDotOrgFormat))
rom.ArchiveDotOrgFormat = newItem.ArchiveDotOrgFormat;
if (datItemFields.Contains(DatItemField.OriginalFilename))
rom.OriginalFilename = newItem.OriginalFilename;
if (datItemFields.Contains(DatItemField.Rotation))
rom.Rotation = newItem.Rotation;
if (datItemFields.Contains(DatItemField.Summation))
rom.Summation = newItem.Summation;
#endregion
#region AttractMode
if (datItemFields.Contains(DatItemField.AltName))