LocationContainerDistanceGroupMinimum

This commit is contained in:
2023-09-21 20:43:28 -07:00
parent 5633430bfb
commit f540cac462
11 changed files with 190 additions and 104 deletions

View File

@ -1,4 +1,4 @@
using ShellProgressBar;
using ShellProgressBar;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.Drawing;
@ -475,6 +475,7 @@ internal abstract class MapLogic
private static void ParallelFor(Configuration configuration, Dictionary<int, List<(string, int)>> skipCollection, List<LocationContainer<MetadataExtractor.Directory>> locationContainers, MappedFile mappedFile)
{
string checkFile;
DateOnly dateOnly;
string[] fileMatches;
const string lnk = ".lnk";
int? id, wholePercentages;
@ -502,6 +503,7 @@ internal abstract class MapLogic
continue;
}
}
dateOnly = DateOnly.FromDateTime(new FileInfo(mappedFile.File).CreationTime);
if (mappedFile.File.EndsWith(lnk) || (!configuration.DistanceMoveUnableToMatch && !configuration.DistanceRenameToMatch) || !File.Exists(mappedFile.File))
directories = new List<MetadataExtractor.Directory>();
else
@ -509,7 +511,17 @@ internal abstract class MapLogic
RectangleF? rectangle = ILocation.GetPercentagesRectangle(configuration.LocationDigits, wholePercentages.Value);
personDisplayDirectoryName = mappedFile.PersonDisplayDirectoryName is null ? configuration.MappingDefaultName : mappedFile.PersonDisplayDirectoryName;
lock (locationContainers)
locationContainers.Add(new(fromDistanceContent, mappedFile.DirectoryNumber, mappedFile.File, mappedFile.PersonKey, personDisplayDirectoryName, id.Value, wholePercentages.Value, directories, rectangle, null));
locationContainers.Add(new(dateOnly,
directories,
mappedFile.DirectoryNumber,
personDisplayDirectoryName,
mappedFile.File,
fromDistanceContent,
id.Value,
null,
mappedFile.PersonKey,
rectangle,
wholePercentages.Value));
}
private static void LookForPossibleDuplicates(Configuration configuration, ReadOnlyCollection<LocationContainer<MetadataExtractor.Directory>> locationContainers)