mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Add new Archive.org fields to filtering
This commit is contained in:
@@ -554,6 +554,13 @@ namespace SabreTools.Core
|
||||
Optional,
|
||||
Inverted,
|
||||
|
||||
// Rom (Archive.org)
|
||||
ArchiveDotOrgSource,
|
||||
ArchiveDotOrgFormat,
|
||||
OriginalFilename,
|
||||
Rotation,
|
||||
Summation,
|
||||
|
||||
// Rom (AttractMode)
|
||||
AltName,
|
||||
AltTitle,
|
||||
|
||||
@@ -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":
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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")]
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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))
|
||||
|
||||
Reference in New Issue
Block a user