public void Sort(SortTypes.SortType sort) { base.Sort(delegate(IndexedFile a, IndexedFile b) { if (SortTypes.IsReverseSortType(sort)) { return(b.SortString(sort).CompareTo(a.SortString(sort))); } else { return(a.SortString(sort).CompareTo(b.SortString(sort))); } } ); }
public void Sort(SortTypes.SortType sort) { base.Sort(delegate(IndexedTerm a, IndexedTerm b) { if (SortTypes.IsReverseSortType(sort)) { return(b.SortString(sort).CompareTo(a.SortString(sort))); } else { return(a.SortString(sort).CompareTo(b.SortString(sort))); } } ); base.ForEach(n => n.SortIndexedFiles(sort)); }
public string SortString(SortTypes.SortType sort) { if (sort == SortTypes.SortType.AtoZ || sort == SortTypes.SortType.ZtoA) { return(Name); } else if (sort == SortTypes.SortType.StoL || sort == SortTypes.SortType.LtoS) { return(Name); } else if (sort == SortTypes.SortType.NtoO || sort == SortTypes.SortType.OtoN) { return(File.LastWriteTimeUtc.ToFileTime().ToString()); } else { return(Name); } }
public string SortString(SortTypes.SortType sort) { if (sort == SortTypes.SortType.AtoZ || sort == SortTypes.SortType.ZtoA) { return(Term + " " + IndexedFiles.Distinct().Count().ToString().PadLeft(10, '0')); } else if (sort == SortTypes.SortType.StoL || sort == SortTypes.SortType.LtoS) { return(IndexedFiles.Count.ToString().PadLeft(10, '0') + " " + Term); } else if (sort == SortTypes.SortType.NtoO || sort == SortTypes.SortType.OtoN) { return(IndexedFiles.Count > 0 ? IndexedFiles.OrderBy(n => n.File.LastWriteTimeUtc.ToFileTime()).First().File.LastWriteTimeUtc.ToFileTime().ToString() + " " + Term : new DateTime(2000, 1, 1).ToFileTime().ToString() + " " + Term); } else { return(Term); } }
public string SortString(SortTypes.SortType sort) { if (sort == SortTypes.SortType.AtoZ) { return(FileData.Name + " " + IndexedStrings.Count.ToString().PadLeft(10, '0')); } else if (sort == SortTypes.SortType.ZtoA) { return(FileData.Name + " " + IndexedStrings.Count.ToString().PadLeft(10, '0')); } else if (sort == SortTypes.SortType.LtoS) { return(IndexedStrings.Count.ToString().PadLeft(10, '0') + " " + FileData.Name); } else if (sort == SortTypes.SortType.StoL) { return(IndexedStrings.Count.ToString().PadLeft(10, '0') + " " + FileData.Name); } else { return(FileData.Name); } }
public void SortIndexedFiles(SortTypes.SortType sort) { if (sort == SortTypes.SortType.NtoO || sort == SortTypes.SortType.OtoN) { IndexedFiles.Sort(delegate(IndexedFileData a, IndexedFileData b) { if (SortTypes.IsReverseSortType(sort)) { return(b.SortString(sort).CompareTo(a.SortString(sort))); } else { return(a.SortString(sort).CompareTo(b.SortString(sort))); } }); } else { IndexedFiles.Sort(delegate(IndexedFileData a, IndexedFileData b) { return(a.SortString(sort).CompareTo(b.SortString(sort))); }); } }