summaryrefslogtreecommitdiff
path: root/src/strings.cpp
diff options
context:
space:
mode:
authorglx <glx@openttd.org>2007-06-04 16:07:22 +0000
committerglx <glx@openttd.org>2007-06-04 16:07:22 +0000
commitcb340626cafacd29c41580141fb00d137891b6a5 (patch)
treed201cb22a10fec046b45e4b47074038bb3b7b91a /src/strings.cpp
parentf61029d47ee4f95282b09ab8c187f446ed819ffc (diff)
downloadopenttd-cb340626cafacd29c41580141fb00d137891b6a5.tar.xz
(svn r10032) -Add: sort the strings in server language dropdown
Diffstat (limited to 'src/strings.cpp')
-rw-r--r--src/strings.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/strings.cpp b/src/strings.cpp
index eae48281a..57b3111c2 100644
--- a/src/strings.cpp
+++ b/src/strings.cpp
@@ -1101,6 +1101,8 @@ StringID RemapOldStringID(StringID s)
}
}
+extern void SortNetworkLanguages();
+
bool ReadLanguagePack(int lang_index)
{
int tot_count, i;
@@ -1156,6 +1158,7 @@ bool ReadLanguagePack(int lang_index)
_dynlang.curr = lang_index;
SetCurrentGrfLangID(_langpack->isocode);
+ SortNetworkLanguages();
return true;
}
@@ -1191,6 +1194,18 @@ static int CDECL LanguageCompareFunc(const void *a, const void *b)
return strcmp(cmp1->file, cmp2->file);
}
+int CDECL StringIDSorter(const void *a, const void *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));
+
+ return strcmp(stra, strb);
+}
+
/**
* Checks whether the given language is already found.
* @param langs languages we've found so fa