private int _SortByFieldTitle(CSongPointer s1, CSongPointer s2) { int res = String.Compare(s1.SortString, s2.SortString, StringComparison.CurrentCultureIgnoreCase); if (res == 0) { return(_IgnoreArticles == EOffOn.TR_CONFIG_ON ? String.Compare(CSongs.Songs[s1.SongID].TitleSorting, CSongs.Songs[s2.SongID].TitleSorting, StringComparison.CurrentCultureIgnoreCase) : String.Compare(CSongs.Songs[s1.SongID].Title, CSongs.Songs[s2.SongID].Title, StringComparison.CurrentCultureIgnoreCase)); } return(res); }
/// <summary> /// Compares two songs by means of: first letter of sorting field, sorting field, artist, title. /// </summary> private int _SortByLetterFieldArtistTitle(CSongPointer s1, CSongPointer s2) { int res = String.Compare(s1.SortString[0].ToString(), s2.SortString[0].ToString(), StringComparison.CurrentCultureIgnoreCase); return(res != 0 ? res : _SortByFieldArtistTitle(s1, s2)); }