Atlas - SDL_syslocale.cpp
Home / ext / SDL / src / locale / ngage Lines: 1 | Size: 7186 bytes [Download] [Show on GitHub] [Search similar files] [Raw] [Raw (proxy)][FILE BEGIN]1/* 2 Simple DirectMedia Layer 3 Copyright (C) 1997-2025 Sam Lantinga <[email protected]> 4 5 This software is provided 'as-is', without any express or implied 6 warranty. In no event will the authors be held liable for any damages 7 arising from the use of this software. 8 9 Permission is granted to anyone to use this software for any purpose, 10 including commercial applications, and to alter it and redistribute it 11 freely, subject to the following restrictions: 12 13 1. The origin of this software must not be misrepresented; you must not 14 claim that you wrote the original software. If you use this software 15 in a product, an acknowledgment in the product documentation would be 16 appreciated but is not required. 17 2. Altered source versions must be plainly marked as such, and must not be 18 misrepresented as being the original software. 19 3. This notice may not be removed or altered from any source distribution. 20*/ 21#include "../SDL_syslocale.h" 22#include "SDL_internal.h" 23 24#include <bautils.h> 25#include <e32base.h> 26#include <e32cons.h> 27#include <e32std.h> 28 29bool SDL_SYS_GetPreferredLocales(char *buf, size_t buflen) 30{ 31 TLanguage language = User::Language(); 32 const char *locale; 33 34 switch (language) { 35 case ELangFrench: 36 case ELangSwissFrench: 37 locale = "fr_CH"; 38 break; 39 case ELangBelgianFrench: 40 locale = "fr_BE"; 41 break; 42 case ELangInternationalFrench: 43 locale = "fr_FR"; 44 break; 45 case ELangGerman: 46 case ELangSwissGerman: 47 case ELangAustrian: 48 locale = "de_DE"; 49 break; 50 case ELangSpanish: 51 case ELangInternationalSpanish: 52 case ELangLatinAmericanSpanish: 53 locale = "es_ES"; 54 break; 55 case ELangItalian: 56 case ELangSwissItalian: 57 locale = "it_IT"; 58 break; 59 case ELangSwedish: 60 case ELangFinlandSwedish: 61 locale = "sv_SE"; 62 break; 63 case ELangDanish: 64 locale = "da_DK"; 65 break; 66 case ELangNorwegian: 67 case ELangNorwegianNynorsk: 68 locale = "no_NO"; 69 break; 70 case ELangFinnish: 71 locale = "fi_FI"; 72 break; 73 case ELangPortuguese: 74 locale = "pt_PT"; 75 break; 76 case ELangBrazilianPortuguese: 77 locale = "pt_BR"; 78 break; 79 case ELangTurkish: 80 case ELangCyprusTurkish: 81 locale = "tr_TR"; 82 break; 83 case ELangIcelandic: 84 locale = "is_IS"; 85 break; 86 case ELangRussian: 87 locale = "ru_RU"; 88 break; 89 case ELangHungarian: 90 locale = "hu_HU"; 91 break; 92 case ELangDutch: 93 locale = "nl_NL"; 94 break; 95 case ELangBelgianFlemish: 96 locale = "nl_BE"; 97 break; 98 case ELangAustralian: 99 case ELangNewZealand: 100 locale = "en_AU"; 101 break; 102 case ELangCzech: 103 locale = "cs_CZ"; 104 break; 105 case ELangSlovak: 106 locale = "sk_SK"; 107 break; 108 case ELangPolish: 109 locale = "pl_PL"; 110 break; 111 case ELangSlovenian: 112 locale = "sl_SI"; 113 break; 114 case ELangTaiwanChinese: 115 locale = "zh_TW"; 116 break; 117 case ELangHongKongChinese: 118 locale = "zh_HK"; 119 break; 120 case ELangPrcChinese: 121 locale = "zh_CN"; 122 break; 123 case ELangJapanese: 124 locale = "ja_JP"; 125 break; 126 case ELangThai: 127 locale = "th_TH"; 128 break; 129 case ELangAfrikaans: 130 locale = "af_ZA"; 131 break; 132 case ELangAlbanian: 133 locale = "sq_AL"; 134 break; 135 case ELangAmharic: 136 locale = "am_ET"; 137 break; 138 case ELangArabic: 139 locale = "ar_SA"; 140 break; 141 case ELangArmenian: 142 locale = "hy_AM"; 143 break; 144 case ELangAzerbaijani: 145 locale = "az_AZ"; 146 break; 147 case ELangBelarussian: 148 locale = "be_BY"; 149 break; 150 case ELangBengali: 151 locale = "bn_IN"; 152 break; 153 case ELangBulgarian: 154 locale = "bg_BG"; 155 break; 156 case ELangBurmese: 157 locale = "my_MM"; 158 break; 159 case ELangCatalan: 160 locale = "ca_ES"; 161 break; 162 case ELangCroatian: 163 locale = "hr_HR"; 164 break; 165 case ELangEstonian: 166 locale = "et_EE"; 167 break; 168 case ELangFarsi: 169 locale = "fa_IR"; 170 break; 171 case ELangCanadianFrench: 172 locale = "fr_CA"; 173 break; 174 case ELangScotsGaelic: 175 locale = "gd_GB"; 176 break; 177 case ELangGeorgian: 178 locale = "ka_GE"; 179 break; 180 case ELangGreek: 181 case ELangCyprusGreek: 182 locale = "el_GR"; 183 break; 184 case ELangGujarati: 185 locale = "gu_IN"; 186 break; 187 case ELangHebrew: 188 locale = "he_IL"; 189 break; 190 case ELangHindi: 191 locale = "hi_IN"; 192 break; 193 case ELangIndonesian: 194 locale = "id_ID"; 195 break; 196 case ELangIrish: 197 locale = "ga_IE"; 198 break; 199 case ELangKannada: 200 locale = "kn_IN"; 201 break; 202 case ELangKazakh: 203 locale = "kk_KZ"; 204 break; 205 case ELangKhmer: 206 locale = "km_KH"; 207 break; 208 case ELangKorean: 209 locale = "ko_KR"; 210 break; 211 case ELangLao: 212 locale = "lo_LA"; 213 break; 214 case ELangLatvian: 215 locale = "lv_LV"; 216 break; 217 case ELangLithuanian: 218 locale = "lt_LT"; 219 break; 220 case ELangMacedonian: 221 locale = "mk_MK"; 222 break; 223 case ELangMalay: 224 locale = "ms_MY"; 225 break; 226 case ELangMalayalam: 227 locale = "ml_IN"; 228 break; 229 case ELangMarathi: 230 locale = "mr_IN"; 231 break; 232 case ELangMoldavian: 233 locale = "ro_MD"; 234 break; 235 case ELangMongolian: 236 locale = "mn_MN"; 237 break; 238 case ELangPunjabi: 239 locale = "pa_IN"; 240 break; 241 case ELangRomanian: 242 locale = "ro_RO"; 243 break; 244 case ELangSerbian: 245 locale = "sr_RS"; 246 break; 247 case ELangSinhalese: 248 locale = "si_LK"; 249 break; 250 case ELangSomali: 251 locale = "so_SO"; 252 break; 253 case ELangSwahili: 254 locale = "sw_KE"; 255 break; 256 case ELangTajik: 257 locale = "tg_TJ"; 258 break; 259 case ELangTamil: 260 locale = "ta_IN"; 261 break; 262 case ELangTelugu: 263 locale = "te_IN"; 264 break; 265 case ELangTibetan: 266 locale = "bo_CN"; 267 break; 268 case ELangTigrinya: 269 locale = "ti_ET"; 270 break; 271 case ELangTurkmen: 272 locale = "tk_TM"; 273 break; 274 case ELangUkrainian: 275 locale = "uk_UA"; 276 break; 277 case ELangUrdu: 278 locale = "ur_PK"; 279 break; 280 case ELangUzbek: 281 locale = "uz_UZ"; 282 break; 283 case ELangVietnamese: 284 locale = "vi_VN"; 285 break; 286 case ELangWelsh: 287 locale = "cy_GB"; 288 break; 289 case ELangZulu: 290 locale = "zu_ZA"; 291 break; 292 case ELangEnglish: 293 locale = "en_GB"; 294 break; 295 case ELangAmerican: 296 case ELangCanadianEnglish: 297 case ELangInternationalEnglish: 298 case ELangSouthAfricanEnglish: 299 default: 300 locale = "en_US"; 301 break; 302 } 303 304 SDL_strlcpy(buf, locale, buflen); 305 306 return true; 307} 308[FILE END](C) 2025 0x4248 (C) 2025 4248 Media and 4248 Systems, All part of 0x4248 See LICENCE files for more information. Not all files are by 0x4248 always check Licencing.