equal
deleted
inserted
replaced
49 { |
49 { |
50 const FiosItem *da = (const FiosItem *)a; |
50 const FiosItem *da = (const FiosItem *)a; |
51 const FiosItem *db = (const FiosItem *)b; |
51 const FiosItem *db = (const FiosItem *)b; |
52 int r; |
52 int r; |
53 |
53 |
54 if (_savegame_sort_order < 2) // sort by date |
54 if (_savegame_sort_order & SORT_BY_NAME) { |
|
55 r = strcasecmp(da->title, db->title); |
|
56 } else { |
55 r = da->mtime < db->mtime ? -1 : 1; |
57 r = da->mtime < db->mtime ? -1 : 1; |
56 else |
58 } |
57 r = strcasecmp(da->title, db->title); |
59 |
58 |
60 if (_savegame_sort_order & SORT_DESCENDING) r = -r; |
59 if (_savegame_sort_order & 1) r = -r; |
|
60 return r; |
61 return r; |
61 } |
62 } |
62 |
63 |
63 |
64 |
64 static void append_path(char *out, const char *path, const char *file) |
65 static void append_path(char *out, const char *path, const char *file) |
114 } |
115 } |
115 |
116 |
116 { |
117 { |
117 /* XXX ugly global variables ... */ |
118 /* XXX ugly global variables ... */ |
118 byte order = _savegame_sort_order; |
119 byte order = _savegame_sort_order; |
119 _savegame_sort_order = 2; // sort ascending by name |
120 _savegame_sort_order = SORT_BY_NAME | SORT_ASCENDING; |
120 qsort(_fios_items, _fios_count, sizeof(FiosItem), compare_FiosItems); |
121 qsort(_fios_items, _fios_count, sizeof(FiosItem), compare_FiosItems); |
121 _savegame_sort_order = order; |
122 _savegame_sort_order = order; |
122 } |
123 } |
123 |
124 |
124 // this is where to start sorting |
125 // this is where to start sorting |
241 } |
242 } |
242 |
243 |
243 { |
244 { |
244 /* XXX ugly global variables ... */ |
245 /* XXX ugly global variables ... */ |
245 byte order = _savegame_sort_order; |
246 byte order = _savegame_sort_order; |
246 _savegame_sort_order = 2; // sort ascending by name |
247 _savegame_sort_order = SORT_BY_NAME | SORT_ASCENDING; |
247 qsort(_fios_items, _fios_count, sizeof(FiosItem), compare_FiosItems); |
248 qsort(_fios_items, _fios_count, sizeof(FiosItem), compare_FiosItems); |
248 _savegame_sort_order = order; |
249 _savegame_sort_order = order; |
249 } |
250 } |
250 |
251 |
251 // this is where to start sorting |
252 // this is where to start sorting |