mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Wire up remaining AttractMode fields
This commit is contained in:
@@ -99,6 +99,9 @@ namespace SabreTools.Library.DatFiles
|
||||
Buttons = gameinfo[16],
|
||||
},
|
||||
|
||||
AltName = gameinfo[13],
|
||||
AltTitle = gameinfo[14],
|
||||
|
||||
Source = new Source
|
||||
{
|
||||
Index = indexId,
|
||||
@@ -277,8 +280,8 @@ namespace SabreTools.Library.DatFiles
|
||||
datItem.GetField(Field.Status, Header.ExcludeFields),
|
||||
datItem.GetField(Field.DisplayCount, Header.ExcludeFields),
|
||||
datItem.GetField(Field.DisplayType, Header.ExcludeFields),
|
||||
string.Empty, // datItem.GetField(Field.AltRomname, Header.ExcludeFields),
|
||||
string.Empty, // datItem.GetField(Field.AltTitle, Header.ExcludeFields),
|
||||
datItem.GetField(Field.AltName, Header.ExcludeFields),
|
||||
datItem.GetField(Field.AltTitle, Header.ExcludeFields),
|
||||
datItem.GetField(Field.Comment, Header.ExcludeFields),
|
||||
datItem.GetField(Field.Buttons, Header.ExcludeFields),
|
||||
};
|
||||
|
||||
@@ -665,6 +665,8 @@ namespace SabreTools.Library.DatFiles
|
||||
long size = -1;
|
||||
long? areaSize = null;
|
||||
string name = null,
|
||||
altName = null,
|
||||
altTitle = null,
|
||||
partName = null,
|
||||
partInterface = null,
|
||||
areaName = null,
|
||||
@@ -702,6 +704,8 @@ namespace SabreTools.Library.DatFiles
|
||||
datItem.Source = new Source { Index = indexId, Name = filename };
|
||||
|
||||
datItem.Name = name;
|
||||
datItem.AltName = altName;
|
||||
datItem.AltTitle = altTitle;
|
||||
datItem.PartName = partName;
|
||||
datItem.PartInterface = partInterface;
|
||||
datItem.Features = features;
|
||||
@@ -781,6 +785,14 @@ namespace SabreTools.Library.DatFiles
|
||||
name = jtr.ReadAsString();
|
||||
break;
|
||||
|
||||
case "alt_romname":
|
||||
altName = jtr.ReadAsString();
|
||||
break;
|
||||
|
||||
case "alt_title":
|
||||
altTitle = jtr.ReadAsString();
|
||||
break;
|
||||
|
||||
case "partname":
|
||||
partName = jtr.ReadAsString();
|
||||
break;
|
||||
@@ -1841,6 +1853,16 @@ namespace SabreTools.Library.DatFiles
|
||||
break;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(datItem.GetField(Field.AltName, Header.ExcludeFields)))
|
||||
{
|
||||
jtw.WritePropertyName("alt_romname");
|
||||
jtw.WriteValue(datItem.AltName);
|
||||
}
|
||||
if (!string.IsNullOrWhiteSpace(datItem.GetField(Field.AltTitle, Header.ExcludeFields)))
|
||||
{
|
||||
jtw.WritePropertyName("alt_title");
|
||||
jtw.WriteValue(datItem.AltTitle);
|
||||
}
|
||||
if (!string.IsNullOrWhiteSpace(datItem.GetField(Field.PartName, Header.ExcludeFields)))
|
||||
{
|
||||
jtw.WritePropertyName("partname");
|
||||
|
||||
@@ -82,6 +82,8 @@ namespace SabreTools.Library.DatFiles
|
||||
optional = null,
|
||||
inverted = null;
|
||||
string name = null,
|
||||
altName = null,
|
||||
altTitle = null,
|
||||
partName = null,
|
||||
partInterface = null,
|
||||
areaName = null,
|
||||
@@ -425,14 +427,32 @@ namespace SabreTools.Library.DatFiles
|
||||
|
||||
#region DatItem
|
||||
|
||||
case "DatItem.Type":
|
||||
itemType = value.AsItemType() ?? ItemType.Rom;
|
||||
break;
|
||||
#region Common
|
||||
|
||||
case "DatItem.Name":
|
||||
name = value;
|
||||
break;
|
||||
|
||||
case "DatItem.Type":
|
||||
itemType = value.AsItemType() ?? ItemType.Rom;
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
#region AttractMode
|
||||
|
||||
case "DatItem.AltName":
|
||||
altName = value;
|
||||
break;
|
||||
|
||||
case "DatItem.AltTitle":
|
||||
altTitle = value;
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
#region SoftwareList
|
||||
|
||||
case "DatItem.PartName":
|
||||
partName = value;
|
||||
break;
|
||||
@@ -464,6 +484,8 @@ namespace SabreTools.Library.DatFiles
|
||||
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
case "DatItem.Default":
|
||||
def = value.AsYesNo();
|
||||
break;
|
||||
@@ -552,7 +574,7 @@ namespace SabreTools.Library.DatFiles
|
||||
inverted = value.AsYesNo();
|
||||
break;
|
||||
|
||||
#endregion
|
||||
#endregion // DatItem
|
||||
|
||||
case "INVALID":
|
||||
default:
|
||||
@@ -568,6 +590,8 @@ namespace SabreTools.Library.DatFiles
|
||||
Archive archive = new Archive()
|
||||
{
|
||||
Name = name,
|
||||
AltName = altName,
|
||||
AltTitle = altTitle,
|
||||
PartName = partName,
|
||||
PartInterface = partInterface,
|
||||
Features = features,
|
||||
@@ -589,6 +613,8 @@ namespace SabreTools.Library.DatFiles
|
||||
BiosSet biosset = new BiosSet()
|
||||
{
|
||||
Name = name,
|
||||
AltName = altName,
|
||||
AltTitle = altTitle,
|
||||
PartName = partName,
|
||||
PartInterface = partInterface,
|
||||
Features = features,
|
||||
@@ -613,6 +639,8 @@ namespace SabreTools.Library.DatFiles
|
||||
Disk disk = new Disk()
|
||||
{
|
||||
Name = name,
|
||||
AltName = altName,
|
||||
AltTitle = altTitle,
|
||||
PartName = partName,
|
||||
PartInterface = partInterface,
|
||||
Features = features,
|
||||
@@ -649,6 +677,8 @@ namespace SabreTools.Library.DatFiles
|
||||
Release release = new Release()
|
||||
{
|
||||
Name = name,
|
||||
AltName = altName,
|
||||
AltTitle = altTitle,
|
||||
PartName = partName,
|
||||
PartInterface = partInterface,
|
||||
Features = features,
|
||||
@@ -675,6 +705,8 @@ namespace SabreTools.Library.DatFiles
|
||||
Rom rom = new Rom()
|
||||
{
|
||||
Name = name,
|
||||
AltName = altName,
|
||||
AltTitle = altTitle,
|
||||
PartName = partName,
|
||||
PartInterface = partInterface,
|
||||
Features = features,
|
||||
@@ -715,6 +747,8 @@ namespace SabreTools.Library.DatFiles
|
||||
Sample sample = new Sample()
|
||||
{
|
||||
Name = name,
|
||||
AltName = altName,
|
||||
AltTitle = altTitle,
|
||||
PartName = partName,
|
||||
PartInterface = partInterface,
|
||||
Features = features,
|
||||
@@ -1066,6 +1100,8 @@ namespace SabreTools.Library.DatFiles
|
||||
|
||||
#region DatItem
|
||||
|
||||
#region Common
|
||||
|
||||
case "itemtype":
|
||||
case "item type":
|
||||
case "type":
|
||||
@@ -1083,6 +1119,30 @@ namespace SabreTools.Library.DatFiles
|
||||
case "rom name":
|
||||
return "DatItem.Name";
|
||||
|
||||
#endregion
|
||||
|
||||
#region AttractMode
|
||||
|
||||
case "altname":
|
||||
case "alt name":
|
||||
case "alt-name":
|
||||
case "altromname":
|
||||
case "alt romname":
|
||||
case "alt-romname":
|
||||
return "DatItem.AltName";
|
||||
|
||||
case "alttitle":
|
||||
case "alt title":
|
||||
case "alt-title":
|
||||
case "altromtitle":
|
||||
case "alt romtitle":
|
||||
case "alt-romtitle":
|
||||
return "DatItem.AltTitle";
|
||||
|
||||
#endregion
|
||||
|
||||
#region SoftwareList
|
||||
|
||||
case "partname":
|
||||
case "part name":
|
||||
return "DatItem.PartName";
|
||||
@@ -1102,6 +1162,8 @@ namespace SabreTools.Library.DatFiles
|
||||
case "area size":
|
||||
return "DatItem.AreaSize";
|
||||
|
||||
#endregion
|
||||
|
||||
case "default":
|
||||
return "DatItem.Default";
|
||||
|
||||
@@ -1190,7 +1252,7 @@ namespace SabreTools.Library.DatFiles
|
||||
case "inverted":
|
||||
return "DatItem.Inverted";
|
||||
|
||||
#endregion
|
||||
#endregion // DatItem
|
||||
|
||||
default:
|
||||
return "INVALID";
|
||||
|
||||
@@ -28,6 +28,9 @@
|
||||
ItemType = this.ItemType,
|
||||
DupeType = this.DupeType,
|
||||
|
||||
AltName = this.AltName,
|
||||
AltTitle = this.AltTitle,
|
||||
|
||||
PartName = this.PartName,
|
||||
PartInterface = this.PartInterface,
|
||||
Features = this.Features,
|
||||
|
||||
@@ -85,6 +85,9 @@ namespace SabreTools.Library.DatItems
|
||||
ItemType = this.ItemType,
|
||||
DupeType = this.DupeType,
|
||||
|
||||
AltName = this.AltName,
|
||||
AltTitle = this.AltTitle,
|
||||
|
||||
PartName = this.PartName,
|
||||
PartInterface = this.PartInterface,
|
||||
Features = this.Features,
|
||||
|
||||
@@ -28,6 +28,9 @@
|
||||
ItemType = this.ItemType,
|
||||
DupeType = this.DupeType,
|
||||
|
||||
AltName = this.AltName,
|
||||
AltTitle = this.AltTitle,
|
||||
|
||||
PartName = this.PartName,
|
||||
PartInterface = this.PartInterface,
|
||||
Features = this.Features,
|
||||
|
||||
@@ -21,7 +21,7 @@ namespace SabreTools.Library.DatItems
|
||||
{
|
||||
#region Fields
|
||||
|
||||
#region Standard item information
|
||||
#region Common Fields
|
||||
|
||||
/// <summary>
|
||||
/// Name of the item
|
||||
@@ -43,7 +43,7 @@ namespace SabreTools.Library.DatItems
|
||||
|
||||
#endregion
|
||||
|
||||
#region Machine information
|
||||
#region Machine Fields
|
||||
|
||||
/// <summary>
|
||||
/// Machine values
|
||||
@@ -53,6 +53,22 @@ namespace SabreTools.Library.DatItems
|
||||
|
||||
#endregion
|
||||
|
||||
#region AttractMode Fields
|
||||
|
||||
/// <summary>
|
||||
/// Alternate name for the item
|
||||
/// </summary>
|
||||
[JsonProperty("alt_romname")]
|
||||
public string AltName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Alternate title for the item
|
||||
/// </summary>
|
||||
[JsonProperty("alt_title")]
|
||||
public string AltTitle { get; set; }
|
||||
|
||||
#endregion
|
||||
|
||||
#region SoftwareList Fields
|
||||
|
||||
/// <summary>
|
||||
@@ -110,28 +126,25 @@ namespace SabreTools.Library.DatItems
|
||||
/// </summary>
|
||||
public static readonly List<Field> DatItemFields = new List<Field>()
|
||||
{
|
||||
// Common
|
||||
Field.Name,
|
||||
|
||||
// AttractMode
|
||||
Field.AltName,
|
||||
Field.AltTitle,
|
||||
|
||||
//SoftwareList
|
||||
Field.PartName,
|
||||
Field.PartInterface,
|
||||
Field.Features,
|
||||
Field.AreaName,
|
||||
Field.AreaSize,
|
||||
|
||||
// BiosSet
|
||||
Field.BiosDescription,
|
||||
Field.Default,
|
||||
Field.Language,
|
||||
Field.Date,
|
||||
Field.Bios,
|
||||
Field.Size,
|
||||
Field.Offset,
|
||||
Field.Merge,
|
||||
Field.Region,
|
||||
Field.Index,
|
||||
Field.Writable,
|
||||
Field.Optional,
|
||||
Field.Status,
|
||||
Field.Inverted,
|
||||
|
||||
Field.CRC,
|
||||
// Disk
|
||||
Field.MD5,
|
||||
#if NET_FRAMEWORK
|
||||
Field.RIPEMD160,
|
||||
@@ -140,6 +153,23 @@ namespace SabreTools.Library.DatItems
|
||||
Field.SHA256,
|
||||
Field.SHA384,
|
||||
Field.SHA512,
|
||||
Field.Merge,
|
||||
Field.Region,
|
||||
Field.Index,
|
||||
Field.Writable,
|
||||
Field.Optional,
|
||||
Field.Status,
|
||||
|
||||
// Release
|
||||
Field.Language,
|
||||
Field.Date,
|
||||
|
||||
// Rom
|
||||
Field.Bios,
|
||||
Field.Size,
|
||||
Field.CRC,
|
||||
Field.Offset,
|
||||
Field.Inverted,
|
||||
};
|
||||
|
||||
/// <summary>
|
||||
@@ -210,6 +240,12 @@ namespace SabreTools.Library.DatItems
|
||||
case Field.Name:
|
||||
fieldValue = Name;
|
||||
break;
|
||||
case Field.AltName:
|
||||
fieldValue = AltName;
|
||||
break;
|
||||
case Field.AltTitle:
|
||||
fieldValue = AltTitle;
|
||||
break;
|
||||
case Field.PartName:
|
||||
fieldValue = PartName;
|
||||
break;
|
||||
@@ -425,11 +461,7 @@ namespace SabreTools.Library.DatItems
|
||||
if (!Machine.PassesFilter(filter))
|
||||
return false;
|
||||
|
||||
// Filter on item type
|
||||
if (filter.ItemTypes.MatchesPositiveSet(ItemType.ToString()) == false)
|
||||
return false;
|
||||
if (filter.ItemTypes.MatchesNegativeSet(ItemType.ToString()) == true)
|
||||
return false;
|
||||
#region Common
|
||||
|
||||
// Filter on item name
|
||||
if (filter.ItemName.MatchesPositiveSet(Name) == false)
|
||||
@@ -437,6 +469,32 @@ namespace SabreTools.Library.DatItems
|
||||
if (filter.ItemName.MatchesNegativeSet(Name) == true)
|
||||
return false;
|
||||
|
||||
// Filter on item type
|
||||
if (filter.ItemTypes.MatchesPositiveSet(ItemType.ToString()) == false)
|
||||
return false;
|
||||
if (filter.ItemTypes.MatchesNegativeSet(ItemType.ToString()) == true)
|
||||
return false;
|
||||
|
||||
#endregion
|
||||
|
||||
#region AttractMode
|
||||
|
||||
// Filter on alt name
|
||||
if (filter.AltName.MatchesPositiveSet(AltName) == false)
|
||||
return false;
|
||||
if (filter.AltName.MatchesNegativeSet(AltName) == true)
|
||||
return false;
|
||||
|
||||
// Filter on alt title
|
||||
if (filter.AltTitle.MatchesPositiveSet(AltTitle) == false)
|
||||
return false;
|
||||
if (filter.AltTitle.MatchesNegativeSet(AltTitle) == true)
|
||||
return false;
|
||||
|
||||
#endregion
|
||||
|
||||
#region SoftwareList
|
||||
|
||||
// Filter on part name
|
||||
if (filter.PartName.MatchesPositiveSet(PartName) == false)
|
||||
return false;
|
||||
@@ -463,6 +521,8 @@ namespace SabreTools.Library.DatItems
|
||||
else if (filter.AreaSize.MatchesNegative(null, AreaSize) == false)
|
||||
return false;
|
||||
|
||||
#endregion
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -475,9 +535,25 @@ namespace SabreTools.Library.DatItems
|
||||
// Remove machine fields
|
||||
Machine.RemoveFields(fields);
|
||||
|
||||
#region Common
|
||||
|
||||
if (fields.Contains(Field.Name))
|
||||
Name = null;
|
||||
|
||||
#endregion
|
||||
|
||||
#region AttractMode
|
||||
|
||||
if (fields.Contains(Field.AltName))
|
||||
AltName = null;
|
||||
|
||||
if (fields.Contains(Field.AltTitle))
|
||||
AltTitle = null;
|
||||
|
||||
#endregion
|
||||
|
||||
#region SoftwareList
|
||||
|
||||
if (fields.Contains(Field.PartName))
|
||||
PartName = null;
|
||||
|
||||
@@ -492,6 +568,8 @@ namespace SabreTools.Library.DatItems
|
||||
|
||||
if (fields.Contains(Field.AreaSize))
|
||||
AreaSize = null;
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
#endregion
|
||||
@@ -574,9 +652,25 @@ namespace SabreTools.Library.DatItems
|
||||
/// <param name="fields">List of Fields representing what should be updated</param>
|
||||
public virtual void ReplaceFields(DatItem item, List<Field> fields)
|
||||
{
|
||||
#region Common
|
||||
|
||||
if (fields.Contains(Field.Name))
|
||||
Name = item.Name;
|
||||
|
||||
#endregion
|
||||
|
||||
#region AttractMode
|
||||
|
||||
if (fields.Contains(Field.AltName))
|
||||
AltName = item.AltName;
|
||||
|
||||
if (fields.Contains(Field.AltTitle))
|
||||
AltTitle = item.AltTitle;
|
||||
|
||||
#endregion
|
||||
|
||||
#region SoftwareList
|
||||
|
||||
if (fields.Contains(Field.PartName))
|
||||
PartName = item.PartName;
|
||||
|
||||
@@ -591,6 +685,8 @@ namespace SabreTools.Library.DatItems
|
||||
|
||||
if (fields.Contains(Field.AreaSize))
|
||||
AreaSize = item.AreaSize;
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -242,6 +242,9 @@ namespace SabreTools.Library.DatItems
|
||||
ItemType = this.ItemType,
|
||||
DupeType = this.DupeType,
|
||||
|
||||
AltName = this.AltName,
|
||||
AltTitle = this.AltTitle,
|
||||
|
||||
PartName = this.PartName,
|
||||
PartInterface = this.PartInterface,
|
||||
Features = this.Features,
|
||||
@@ -281,6 +284,9 @@ namespace SabreTools.Library.DatItems
|
||||
ItemType = ItemType.Rom,
|
||||
DupeType = this.DupeType,
|
||||
|
||||
AltName = this.AltName,
|
||||
AltTitle = this.AltTitle,
|
||||
|
||||
PartName = this.PartName,
|
||||
PartInterface = this.PartInterface,
|
||||
Features = this.Features,
|
||||
|
||||
@@ -20,6 +20,8 @@ namespace SabreTools.Library.DatItems
|
||||
/// <summary>
|
||||
/// List of valid field types within a DatItem/Machine
|
||||
/// </summary>
|
||||
/// TODO: Should this be split into MachineField and DatItemField?
|
||||
/// TODO: Should there also be a DatFileField?
|
||||
public enum Field : int
|
||||
{
|
||||
NULL = 0,
|
||||
@@ -67,8 +69,14 @@ namespace SabreTools.Library.DatItems
|
||||
#region DatItem
|
||||
|
||||
// Common DatItem
|
||||
ItemType,
|
||||
Name,
|
||||
ItemType,
|
||||
|
||||
// AttractMode DatItem
|
||||
AltName,
|
||||
AltTitle,
|
||||
|
||||
// SoftwareList DatItem
|
||||
PartName,
|
||||
PartInterface,
|
||||
Features,
|
||||
|
||||
@@ -107,6 +107,9 @@ namespace SabreTools.Library.DatItems
|
||||
ItemType = this.ItemType,
|
||||
DupeType = this.DupeType,
|
||||
|
||||
AltName = this.AltName,
|
||||
AltTitle = this.AltTitle,
|
||||
|
||||
PartName = this.PartName,
|
||||
PartInterface = this.PartInterface,
|
||||
Features = this.Features,
|
||||
|
||||
@@ -308,6 +308,9 @@ namespace SabreTools.Library.DatItems
|
||||
ItemType = this.ItemType,
|
||||
DupeType = this.DupeType,
|
||||
|
||||
AltName = this.AltName,
|
||||
AltTitle = this.AltTitle,
|
||||
|
||||
PartName = this.PartName,
|
||||
PartInterface = this.PartInterface,
|
||||
Features = this.Features,
|
||||
|
||||
@@ -28,6 +28,9 @@
|
||||
ItemType = this.ItemType,
|
||||
DupeType = this.DupeType,
|
||||
|
||||
AltName = this.AltName,
|
||||
AltTitle = this.AltTitle,
|
||||
|
||||
PartName = this.PartName,
|
||||
PartInterface = this.PartInterface,
|
||||
Features = this.Features,
|
||||
|
||||
@@ -169,17 +169,35 @@ namespace SabreTools.Library.Filtering
|
||||
|
||||
#region DatItem Filters
|
||||
|
||||
/// <summary>
|
||||
/// Include or exclude item types
|
||||
/// </summary>
|
||||
public FilterItem<string> ItemTypes { get; private set; } = new FilterItem<string>();
|
||||
#region Common
|
||||
|
||||
/// <summary>
|
||||
/// Include or exclude item names
|
||||
/// </summary>
|
||||
public FilterItem<string> ItemName { get; private set; } = new FilterItem<string>();
|
||||
|
||||
// TODO: DatItem.Features - List<KeyValuePair<string, string>>
|
||||
/// <summary>
|
||||
/// Include or exclude item types
|
||||
/// </summary>
|
||||
public FilterItem<string> ItemTypes { get; private set; } = new FilterItem<string>();
|
||||
|
||||
#endregion
|
||||
|
||||
#region AttractMode
|
||||
|
||||
/// <summary>
|
||||
/// Include or exclude alt names
|
||||
/// </summary>
|
||||
public FilterItem<string> AltName { get; private set; } = new FilterItem<string>();
|
||||
|
||||
/// <summary>
|
||||
/// Include or exclude alt titles
|
||||
/// </summary>
|
||||
public FilterItem<string> AltTitle { get; private set; } = new FilterItem<string>();
|
||||
|
||||
#endregion
|
||||
|
||||
#region SoftwareList
|
||||
|
||||
/// <summary>
|
||||
/// Include or exclude part names
|
||||
@@ -191,6 +209,8 @@ namespace SabreTools.Library.Filtering
|
||||
/// </summary>
|
||||
public FilterItem<string> PartInterface { get; private set; } = new FilterItem<string>();
|
||||
|
||||
// TODO: DatItem.Features - List<KeyValuePair<string, string>>
|
||||
|
||||
/// <summary>
|
||||
/// Include or exclude area names
|
||||
/// </summary>
|
||||
@@ -202,6 +222,8 @@ namespace SabreTools.Library.Filtering
|
||||
/// <remarks>Positive means "Greater than or equal", Negative means "Less than or equal", Neutral means "Equal"</remarks>
|
||||
public FilterItem<long?> AreaSize { get; private set; } = new FilterItem<long?>() { Positive = null, Negative = null, Neutral = null };
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// Include or exclude items with the "Default" tag
|
||||
/// </summary>
|
||||
@@ -310,7 +332,7 @@ namespace SabreTools.Library.Filtering
|
||||
/// </summary>
|
||||
public FilterItem<bool?> Inverted { get; private set; } = new FilterItem<bool?>();
|
||||
|
||||
#endregion
|
||||
#endregion // DatItem Filters
|
||||
|
||||
#region Manipulation Flags
|
||||
|
||||
@@ -617,6 +639,15 @@ namespace SabreTools.Library.Filtering
|
||||
|
||||
#region DatItem Filters
|
||||
|
||||
#region Common
|
||||
|
||||
case Field.Name:
|
||||
if (negate)
|
||||
ItemName.NegativeSet.Add(value);
|
||||
else
|
||||
ItemName.PositiveSet.Add(value);
|
||||
break;
|
||||
|
||||
case Field.ItemType:
|
||||
if (value.AsItemType() == null)
|
||||
return;
|
||||
@@ -627,13 +658,28 @@ namespace SabreTools.Library.Filtering
|
||||
ItemTypes.PositiveSet.Add(value);
|
||||
break;
|
||||
|
||||
case Field.Name:
|
||||
#endregion
|
||||
|
||||
#region AttractMode
|
||||
|
||||
case Field.AltName:
|
||||
if (negate)
|
||||
ItemName.NegativeSet.Add(value);
|
||||
AltName.NegativeSet.Add(value);
|
||||
else
|
||||
ItemName.PositiveSet.Add(value);
|
||||
AltName.PositiveSet.Add(value);
|
||||
break;
|
||||
|
||||
case Field.AltTitle:
|
||||
if (negate)
|
||||
AltTitle.NegativeSet.Add(value);
|
||||
else
|
||||
AltTitle.PositiveSet.Add(value);
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
#region SoftwareList
|
||||
|
||||
case Field.PartName:
|
||||
if (negate)
|
||||
PartName.NegativeSet.Add(value);
|
||||
@@ -707,6 +753,8 @@ namespace SabreTools.Library.Filtering
|
||||
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
case Field.Default:
|
||||
if (negate || value.Equals("false", StringComparison.OrdinalIgnoreCase))
|
||||
Default.Neutral = false;
|
||||
@@ -901,7 +949,7 @@ namespace SabreTools.Library.Filtering
|
||||
Inverted.Neutral = true;
|
||||
break;
|
||||
|
||||
#endregion
|
||||
#endregion // DatItem Filters
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -267,12 +267,62 @@ namespace SabreTools.Library.Tools
|
||||
|
||||
#region DatItem
|
||||
|
||||
#region Common
|
||||
|
||||
case "itemname":
|
||||
case "item-name":
|
||||
case "name":
|
||||
return Field.Name;
|
||||
case "itemtype":
|
||||
case "item-type":
|
||||
case "type":
|
||||
return Field.ItemType;
|
||||
|
||||
#endregion
|
||||
|
||||
#region AttractMode
|
||||
|
||||
case "altname":
|
||||
case "alt name":
|
||||
case "alt-name":
|
||||
case "altromname":
|
||||
case "alt romname":
|
||||
case "alt-romname":
|
||||
return Field.AltName;
|
||||
|
||||
case "alttitle":
|
||||
case "alt title":
|
||||
case "alt-title":
|
||||
case "altromtitle":
|
||||
case "alt romtitle":
|
||||
case "alt-romtitle":
|
||||
return Field.AltTitle;
|
||||
|
||||
#endregion
|
||||
|
||||
#region SoftwareList
|
||||
|
||||
case "partname":
|
||||
case "part name":
|
||||
case "part-name":
|
||||
return Field.PartName;
|
||||
case "partinterface":
|
||||
case "part interface":
|
||||
case "part-interface":
|
||||
return Field.PartInterface;
|
||||
case "features":
|
||||
return Field.Features;
|
||||
case "areaname":
|
||||
case "area name":
|
||||
case "area-name":
|
||||
return Field.AreaName;
|
||||
case "areasize":
|
||||
case "area size":
|
||||
case "area-size":
|
||||
return Field.AreaSize;
|
||||
|
||||
#endregion
|
||||
|
||||
case "bios":
|
||||
return Field.Bios;
|
||||
case "biosdescription":
|
||||
@@ -293,24 +343,14 @@ namespace SabreTools.Library.Tools
|
||||
case "less":
|
||||
case "size":
|
||||
return Field.Size;
|
||||
case "features":
|
||||
return Field.Features;
|
||||
case "index":
|
||||
return Field.Index;
|
||||
case "inverted":
|
||||
return Field.Inverted;
|
||||
case "itemname":
|
||||
case "item-name":
|
||||
case "name":
|
||||
return Field.Name;
|
||||
case "itemtatus":
|
||||
case "item-status":
|
||||
case "status":
|
||||
return Field.Status;
|
||||
case "itemtype":
|
||||
case "item-type":
|
||||
case "type":
|
||||
return Field.ItemType;
|
||||
case "language":
|
||||
return Field.Language;
|
||||
case "md5":
|
||||
@@ -323,12 +363,6 @@ namespace SabreTools.Library.Tools
|
||||
return Field.Offset;
|
||||
case "optional":
|
||||
return Field.Optional;
|
||||
case "partinterface":
|
||||
case "part-interface":
|
||||
return Field.PartInterface;
|
||||
case "partname":
|
||||
case "part-name":
|
||||
return Field.PartName;
|
||||
case "region":
|
||||
return Field.Region;
|
||||
#if NET_FRAMEWORK
|
||||
|
||||
Reference in New Issue
Block a user