mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Location number is numeric
This commit is contained in:
@@ -771,7 +771,7 @@ namespace SabreTools.Library.DatFiles
|
||||
case "diplocation":
|
||||
var dipLocation = new Location();
|
||||
dipLocation.Name = reader.GetAttribute("name");
|
||||
dipLocation.Number = reader.GetAttribute("number");
|
||||
dipLocation.Number = Sanitizer.CleanLong(reader.GetAttribute("number"));
|
||||
dipLocation.Inverted = reader.GetAttribute("inverted").AsYesNo();
|
||||
|
||||
dipSwitch.Locations.Add(dipLocation);
|
||||
@@ -895,7 +895,7 @@ namespace SabreTools.Library.DatFiles
|
||||
case "conflocation":
|
||||
var confLocation = new Location();
|
||||
confLocation.Name = reader.GetAttribute("name");
|
||||
confLocation.Number = reader.GetAttribute("number");
|
||||
confLocation.Number = Sanitizer.CleanLong(reader.GetAttribute("number"));
|
||||
confLocation.Inverted = reader.GetAttribute("inverted").AsYesNo();
|
||||
|
||||
configuration.Locations.Add(confLocation);
|
||||
@@ -1396,7 +1396,7 @@ namespace SabreTools.Library.DatFiles
|
||||
{
|
||||
xtw.WriteStartElement("conflocation");
|
||||
xtw.WriteOptionalAttributeString("name", location.Name);
|
||||
xtw.WriteOptionalAttributeString("number", location.Number);
|
||||
xtw.WriteOptionalAttributeString("number", location.Number?.ToString());
|
||||
xtw.WriteOptionalAttributeString("inverted", location.Inverted.FromYesNo());
|
||||
xtw.WriteEndElement();
|
||||
}
|
||||
@@ -1476,7 +1476,7 @@ namespace SabreTools.Library.DatFiles
|
||||
{
|
||||
xtw.WriteStartElement("diplocation");
|
||||
xtw.WriteOptionalAttributeString("name", location.Name);
|
||||
xtw.WriteOptionalAttributeString("number", location.Number);
|
||||
xtw.WriteOptionalAttributeString("number", location.Number?.ToString());
|
||||
xtw.WriteOptionalAttributeString("inverted", location.Inverted.FromYesNo());
|
||||
xtw.WriteEndElement();
|
||||
}
|
||||
|
||||
@@ -732,7 +732,7 @@ namespace SabreTools.Library.DatFiles
|
||||
case "conflocation":
|
||||
var confLocation = new Location();
|
||||
confLocation.Name = reader.GetAttribute("name");
|
||||
confLocation.Number = reader.GetAttribute("number");
|
||||
confLocation.Number = Sanitizer.CleanLong(reader.GetAttribute("number"));
|
||||
confLocation.Inverted = reader.GetAttribute("inverted").AsYesNo();
|
||||
|
||||
(configuration as Configuration).Locations.Add(confLocation);
|
||||
@@ -860,7 +860,7 @@ namespace SabreTools.Library.DatFiles
|
||||
case "diplocation":
|
||||
var dipLocation = new Location();
|
||||
dipLocation.Name = reader.GetAttribute("name");
|
||||
dipLocation.Number = reader.GetAttribute("number");
|
||||
dipLocation.Number = Sanitizer.CleanLong(reader.GetAttribute("number"));
|
||||
dipLocation.Inverted = reader.GetAttribute("inverted").AsYesNo();
|
||||
|
||||
(dipSwitch as DipSwitch).Locations.Add(dipLocation);
|
||||
@@ -1298,7 +1298,7 @@ namespace SabreTools.Library.DatFiles
|
||||
{
|
||||
xtw.WriteStartElement("conflocation");
|
||||
xtw.WriteOptionalAttributeString("name", location.Name);
|
||||
xtw.WriteOptionalAttributeString("number", location.Number);
|
||||
xtw.WriteOptionalAttributeString("number", location.Number?.ToString());
|
||||
xtw.WriteOptionalAttributeString("inverted", location.Inverted.FromYesNo());
|
||||
xtw.WriteEndElement();
|
||||
}
|
||||
@@ -1381,7 +1381,7 @@ namespace SabreTools.Library.DatFiles
|
||||
{
|
||||
xtw.WriteStartElement("diplocation");
|
||||
xtw.WriteOptionalAttributeString("name", location.Name);
|
||||
xtw.WriteOptionalAttributeString("number", location.Number);
|
||||
xtw.WriteOptionalAttributeString("number", location.Number?.ToString());
|
||||
xtw.WriteOptionalAttributeString("inverted", location.Inverted.FromYesNo());
|
||||
xtw.WriteEndElement();
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ namespace SabreTools.Library.DatItems
|
||||
/// Location ID
|
||||
/// </summary>
|
||||
[JsonProperty("number", DefaultValueHandling = DefaultValueHandling.Ignore)]
|
||||
public string Number { get; set; }
|
||||
public long? Number { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Determines if location is inverted or not
|
||||
@@ -61,7 +61,7 @@ namespace SabreTools.Library.DatItems
|
||||
Name = mappings[Field.DatItem_Location_Name];
|
||||
|
||||
if (mappings.Keys.Contains(Field.DatItem_Location_Number))
|
||||
Number = mappings[Field.DatItem_Location_Number];
|
||||
Number = Sanitizer.CleanLong(mappings[Field.DatItem_Location_Number]);
|
||||
|
||||
if (mappings.Keys.Contains(Field.DatItem_Location_Inverted))
|
||||
Inverted = mappings[Field.DatItem_Location_Inverted].AsYesNo();
|
||||
@@ -169,9 +169,11 @@ namespace SabreTools.Library.DatItems
|
||||
return false;
|
||||
|
||||
// Filter on number
|
||||
if (filter.DatItem_Location_Number.MatchesPositiveSet(Number) == false)
|
||||
if (filter.DatItem_Location_Number.MatchesNeutral(null, Number) == false)
|
||||
return false;
|
||||
if (filter.DatItem_Location_Number.MatchesNegativeSet(Number) == true)
|
||||
else if (filter.DatItem_Location_Number.MatchesPositive(null, Number) == false)
|
||||
return false;
|
||||
else if (filter.DatItem_Location_Number.MatchesNegative(null, Number) == false)
|
||||
return false;
|
||||
|
||||
// Filter on inverted
|
||||
|
||||
@@ -235,7 +235,7 @@ namespace SabreTools.Library.Filtering
|
||||
|
||||
// Location
|
||||
public FilterItem<string> DatItem_Location_Name { get; private set; } = new FilterItem<string>();
|
||||
public FilterItem<string> DatItem_Location_Number { get; private set; } = new FilterItem<string>();
|
||||
public FilterItem<long?> DatItem_Location_Number { get; private set; } = new FilterItem<long?>() { Positive = null, Negative = null, Neutral = null };
|
||||
public FilterItem<bool?> DatItem_Location_Inverted { get; private set; } = new FilterItem<bool?>() { Neutral = null };
|
||||
|
||||
// Part
|
||||
@@ -974,7 +974,7 @@ namespace SabreTools.Library.Filtering
|
||||
break;
|
||||
|
||||
case Field.DatItem_Location_Number:
|
||||
SetStringFilter(DatItem_Location_Number, value, negate);
|
||||
SetLongFilter(DatItem_Location_Number, value, negate);
|
||||
break;
|
||||
|
||||
case Field.DatItem_Location_Inverted:
|
||||
|
||||
Reference in New Issue
Block a user