(svn r17526) -Codechange: use QSortT instead of qsort for sorting the language list in the network GUI

This commit is contained in:
rubidium 2009-09-13 17:38:07 +00:00
parent 734edc178d
commit 45e3141444
3 changed files with 6 additions and 7 deletions

View File

@ -31,6 +31,7 @@
#include "../sortlist_type.h"
#include "../company_base.h"
#include "../company_func.h"
#include "../core/sort_func.hpp"
#include "table/strings.h"
#include "../table/sprites.h"
@ -63,7 +64,7 @@ void SortNetworkLanguages()
}
/* Sort the strings (we don't move 'any' and the 'invalid' one) */
qsort(&_language_dropdown[1], NETLANG_COUNT - 1, sizeof(StringID), &StringIDSorter);
QSortT(_language_dropdown, NETLANG_COUNT - 1, &StringIDSorter);
}
enum {

View File

@ -1350,14 +1350,12 @@ const char *GetCurrentLocale(const char *param)
const char *GetCurrentLocale(const char *param);
#endif /* !(defined(WIN32) || defined(__APPLE__)) */
int CDECL StringIDSorter(const void *a, const void *b)
int CDECL StringIDSorter(const StringID *a, const StringID *b)
{
const StringID va = *(const StringID*)a;
const StringID vb = *(const StringID*)b;
char stra[512];
char strb[512];
GetString(stra, va, lastof(stra));
GetString(strb, vb, lastof(strb));
GetString(stra, *a, lastof(stra));
GetString(strb, *b, lastof(strb));
return strcmp(stra, strb);
}

View File

@ -100,7 +100,7 @@ extern DynamicLanguages _dynlang; // defined in strings.cpp
bool ReadLanguagePack(int index);
void InitializeLanguagePacks();
int CDECL StringIDSorter(const void *a, const void *b);
int CDECL StringIDSorter(const StringID *a, const StringID *b);
/** Key comparison function for std::map */
struct StringIDCompare