InSkipCollection and MakeHiddenIfAllItemsAreHidden

This commit is contained in:
2023-03-26 12:20:28 -07:00
parent bea7a172c5
commit 7b33fbe050
7 changed files with 75 additions and 10 deletions

View File

@ -180,7 +180,6 @@ public class MapLogic : Shared.Models.Methods.IMapLogic
const int zero = 0;
string mappingSegmentB;
PersonBirthday personBirthday;
List<int>? normalizedRectangles;
PersonContainer[]? personContainers;
Dictionary<int, PersonContainer[]>? normalizedRectangleToPersonContainers;
for (int i = 1; i < 2; i++)
@ -189,14 +188,14 @@ public class MapLogic : Shared.Models.Methods.IMapLogic
continue;
if (!_IdThenNormalizedRectangleToPersonContainers.TryGetValue(mapping.MappingFromItem.Id, out normalizedRectangleToPersonContainers))
{
if (_SkipCollection.TryGetValue(mapping.MappingFromItem.Id, out normalizedRectangles) && normalizedRectangles.Contains(mapping.MappingFromLocation.NormalizedRectangle))
if (mapping.MappingFromFilter.InSkipCollection is not null && mapping.MappingFromFilter.InSkipCollection.Value)
continue;
result += 1;
continue;
}
if (!normalizedRectangleToPersonContainers.TryGetValue(mapping.MappingFromLocation.NormalizedRectangle, out personContainers))
{
if (_SkipCollection.TryGetValue(mapping.MappingFromItem.Id, out normalizedRectangles) && normalizedRectangles.Contains(mapping.MappingFromLocation.NormalizedRectangle))
if (mapping.MappingFromFilter.InSkipCollection is not null && mapping.MappingFromFilter.InSkipCollection.Value)
continue;
result += 1;
continue;
@ -455,9 +454,7 @@ public class MapLogic : Shared.Models.Methods.IMapLogic
SaveContainer? saveContainer;
FileHolder facePartsFileHolder;
FileHolder hiddenFaceFileHolder;
List<int>? normalizedRectangles;
Dictionary<int, Mapping>? normalizedRectangleToMapping;
bool skipNotSkipDirectoriesAny = _Configuration.SkipNotSkipDirectories.Any();
string forceSingleImageHumanized = nameof(Shared.Models.Stateless.IMapLogic.ForceSingleImage).Humanize(LetterCasing.Title);
foreach (Mapping mapping in mappingCollection)
{
@ -466,9 +463,7 @@ public class MapLogic : Shared.Models.Methods.IMapLogic
directoryName = Path.GetDirectoryName(mapping.MappingFromItem.RelativePath);
if (directoryName is null)
throw new NotSupportedException();
if (_SkipCollection.TryGetValue(mapping.MappingFromItem.Id, out normalizedRectangles) && normalizedRectangles.Contains(mapping.MappingFromLocation.NormalizedRectangle))
continue;
if (mapping.By is null && skipNotSkipDirectoriesAny)
if (mapping.MappingFromFilter.InSkipCollection is not null && mapping.MappingFromFilter.InSkipCollection.Value)
continue;
(by, isByMapping, isBySorting) = Get(useFiltersCounter, sortingContainersAny, forceSingleImageHumanized, mapping);
if (isByMapping && !saveMapped)
@ -1350,4 +1345,11 @@ public class MapLogic : Shared.Models.Methods.IMapLogic
return results;
}
public bool InSkipCollection(int id, MappingFromLocation mappingFromLocation)
{
bool result;
result = _SkipCollection.TryGetValue(id, out List<int>? normalizedRectangles) && normalizedRectangles.Contains(mappingFromLocation.NormalizedRectangle);
return result;
}
}