diff options
Diffstat (limited to 'src/locales.cpp')
| -rw-r--r-- | src/locales.cpp | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/src/locales.cpp b/src/locales.cpp index 883d511..ac3df1d 100644 --- a/src/locales.cpp +++ b/src/locales.cpp @@ -14,14 +14,21 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -#include <stdio.h> -#include <string.h> - #include "locales.hpp" +#include "strops.hpp" + +extern locale_entry en_locales[]; +extern int en_locale_count; + +typedef struct { + const char* lang_code; + locale_entry* entries; + int entry_count; +} locale_map; namespace locale { static locale_map locales[] = { - {"en", locale::en_locales, locale::en_locale_count}, + {"en", en_locales, en_locale_count}, // Add new locales here. }; @@ -36,7 +43,7 @@ namespace locale { void set_locale(const char* key) { for (int i = 0; i < locale_map_count; ++i) { - if (strcmp(locales[i].lang_code, key) == 0) { + if (strops::equals(locales[i].lang_code, key)) { g_locale = locales[i]; } } @@ -45,7 +52,7 @@ namespace locale { const char* get(const char* key) { for (int i = 0; i < g_locale.entry_count; ++i) { - if (strcmp(g_locale.entries[i].key, key) == 0) { + if (strops::equals(g_locale.entries[i].key, key)) { return g_locale.entries[i].value; } } |
