private List<BExplorer.Shell._Plugin_Interfaces.IListItemEx> DateFilter(List<BExplorer.Shell._Plugin_Interfaces.IListItemEx> shells, ConditionalSelectParameters.DateParameters filter, Func<FileInfo, DateTime> GetDate) {
var outshells = new List<BExplorer.Shell._Plugin_Interfaces.IListItemEx>();
foreach (var item in shells) {
var Date = GetDate(new FileInfo(item.ParsingName));
switch (filter.filter) {
case ConditionalSelectParameters.DateFilterTypes.EarlierThan:
if (DateTime.Compare(Date, filter.queryDate) < 0) outshells.Add(item);
break;
case ConditionalSelectParameters.DateFilterTypes.LaterThan:
if (DateTime.Compare(Date, filter.queryDate) > 0) outshells.Add(item);
break;
case ConditionalSelectParameters.DateFilterTypes.Equals:
if (DateTime.Compare(Date, filter.queryDate) == 0) outshells.Add(item);
break;
default:
break;
}
}
return outshells;
}