Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qlocale.h
Go to the documentation of this file.
1// Copyright (C) 2021 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QLOCALE_H
5#define QLOCALE_H
6
7#include <QtCore/qvariant.h>
8#include <QtCore/qstring.h>
9#include <QtCore/qobjectdefs.h>
10#include <QtCore/qshareddata.h>
11
13
14class QCalendar;
15class QDataStream;
16class QDate;
17class QDateTime;
18class QLocale;
19class QTime;
20class QVariant;
21class QTextStream;
23
24class QLocalePrivate;
25
26Q_CORE_EXPORT size_t qHash(const QLocale &key, size_t seed = 0) noexcept;
27
28class Q_CORE_EXPORT QLocale
29{
31 friend class QString;
32 friend class QByteArray;
33 friend class QIntValidator;
35 friend class QTextStream;
36 friend class QTextStreamPrivate;
37
38public:
39 static constexpr int DefaultTwoDigitBaseYear = 1900;
40
41// see qlocale_data_p.h for more info on generated data
42// GENERATED PART STARTS HERE
44 AnyLanguage = 0,
45 C = 1,
46 Abkhazian = 2,
47 Afar = 3,
48 Afrikaans = 4,
49 Aghem = 5,
50 Akan = 6,
51 Akkadian = 7,
52 Akoose = 8,
53 Albanian = 9,
54 AmericanSignLanguage = 10,
55 Amharic = 11,
56 AncientEgyptian = 12,
57 AncientGreek = 13,
58 Arabic = 14,
59 Aragonese = 15,
60 Aramaic = 16,
61 Armenian = 17,
62 Assamese = 18,
63 Asturian = 19,
64 Asu = 20,
65 Atsam = 21,
66 Avaric = 22,
67 Avestan = 23,
68 Aymara = 24,
69 Azerbaijani = 25,
70 Bafia = 26,
71 Balinese = 27,
72 Bambara = 28,
73 Bamun = 29,
74 Bangla = 30,
75 Basaa = 31,
76 Bashkir = 32,
77 Basque = 33,
78 BatakToba = 34,
79 Belarusian = 35,
80 Bemba = 36,
81 Bena = 37,
82 Bhojpuri = 38,
83 Bislama = 39,
84 Blin = 40,
85 Bodo = 41,
86 Bosnian = 42,
87 Breton = 43,
88 Buginese = 44,
89 Bulgarian = 45,
90 Burmese = 46,
91 Cantonese = 47,
92 Catalan = 48,
93 Cebuano = 49,
94 CentralAtlasTamazight = 50,
95 CentralKurdish = 51,
96 Chakma = 52,
97 Chamorro = 53,
98 Chechen = 54,
99 Cherokee = 55,
100 Chickasaw = 56,
101 Chiga = 57,
102 Chinese = 58,
103 Church = 59,
104 Chuvash = 60,
105 Colognian = 61,
106 Coptic = 62,
107 Cornish = 63,
108 Corsican = 64,
109 Cree = 65,
110 Croatian = 66,
111 Czech = 67,
112 Danish = 68,
113 Divehi = 69,
114 Dogri = 70,
115 Duala = 71,
116 Dutch = 72,
117 Dzongkha = 73,
118 Embu = 74,
119 English = 75,
120 Erzya = 76,
121 Esperanto = 77,
122 Estonian = 78,
123 Ewe = 79,
124 Ewondo = 80,
125 Faroese = 81,
126 Fijian = 82,
127 Filipino = 83,
128 Finnish = 84,
129 French = 85,
130 Friulian = 86,
131 Fulah = 87,
132 Gaelic = 88,
133 Ga = 89,
134 Galician = 90,
135 Ganda = 91,
136 Geez = 92,
137 Georgian = 93,
138 German = 94,
139 Gothic = 95,
140 Greek = 96,
141 Guarani = 97,
142 Gujarati = 98,
143 Gusii = 99,
144 Haitian = 100,
145 Hausa = 101,
146 Hawaiian = 102,
147 Hebrew = 103,
148 Herero = 104,
149 Hindi = 105,
150 HiriMotu = 106,
151 Hungarian = 107,
152 Icelandic = 108,
153 Ido = 109,
154 Igbo = 110,
155 InariSami = 111,
156 Indonesian = 112,
157 Ingush = 113,
158 Interlingua = 114,
159 Interlingue = 115,
160 Inuktitut = 116,
161 Inupiaq = 117,
162 Irish = 118,
163 Italian = 119,
164 Japanese = 120,
165 Javanese = 121,
166 Jju = 122,
167 JolaFonyi = 123,
168 Kabuverdianu = 124,
169 Kabyle = 125,
170 Kako = 126,
171 Kalaallisut = 127,
172 Kalenjin = 128,
173 Kamba = 129,
174 Kannada = 130,
175 Kanuri = 131,
176 Kashmiri = 132,
177 Kazakh = 133,
178 Kenyang = 134,
179 Khmer = 135,
180 Kiche = 136,
181 Kikuyu = 137,
182 Kinyarwanda = 138,
183 Komi = 139,
184 Kongo = 140,
185 Konkani = 141,
186 Korean = 142,
187 Koro = 143,
188 KoyraboroSenni = 144,
189 KoyraChiini = 145,
190 Kpelle = 146,
191 Kuanyama = 147,
192 Kurdish = 148,
193 Kwasio = 149,
194 Kyrgyz = 150,
195 Lakota = 151,
196 Langi = 152,
197 Lao = 153,
198 Latin = 154,
199 Latvian = 155,
200 Lezghian = 156,
201 Limburgish = 157,
202 Lingala = 158,
203 LiteraryChinese = 159,
204 Lithuanian = 160,
205 Lojban = 161,
206 LowerSorbian = 162,
207 LowGerman = 163,
208 LubaKatanga = 164,
209 LuleSami = 165,
210 Luo = 166,
211 Luxembourgish = 167,
212 Luyia = 168,
213 Macedonian = 169,
214 Machame = 170,
215 Maithili = 171,
216 MakhuwaMeetto = 172,
217 Makonde = 173,
218 Malagasy = 174,
219 Malayalam = 175,
220 Malay = 176,
221 Maltese = 177,
222 Mandingo = 178,
223 Manipuri = 179,
224 Manx = 180,
225 Maori = 181,
226 Mapuche = 182,
227 Marathi = 183,
228 Marshallese = 184,
229 Masai = 185,
230 Mazanderani = 186,
231 Mende = 187,
232 Meru = 188,
233 Meta = 189,
234 Mohawk = 190,
235 Mongolian = 191,
236 Morisyen = 192,
237 Mundang = 193,
238 Muscogee = 194,
239 Nama = 195,
240 NauruLanguage = 196,
241 Navajo = 197,
242 Ndonga = 198,
243 Nepali = 199,
244 Newari = 200,
245 Ngiemboon = 201,
246 Ngomba = 202,
247 NigerianPidgin = 203,
248 Nko = 204,
249 NorthernLuri = 205,
250 NorthernSami = 206,
251 NorthernSotho = 207,
252 NorthNdebele = 208,
253 NorwegianBokmal = 209,
254 NorwegianNynorsk = 210,
255 Nuer = 211,
256 Nyanja = 212,
257 Nyankole = 213,
258 Occitan = 214,
259 Odia = 215,
260 Ojibwa = 216,
261 OldIrish = 217,
262 OldNorse = 218,
263 OldPersian = 219,
264 Oromo = 220,
265 Osage = 221,
266 Ossetic = 222,
267 Pahlavi = 223,
268 Palauan = 224,
269 Pali = 225,
270 Papiamento = 226,
271 Pashto = 227,
272 Persian = 228,
273 Phoenician = 229,
274 Polish = 230,
275 Portuguese = 231,
276 Prussian = 232,
277 Punjabi = 233,
278 Quechua = 234,
279 Romanian = 235,
280 Romansh = 236,
281 Rombo = 237,
282 Rundi = 238,
283 Russian = 239,
284 Rwa = 240,
285 Saho = 241,
286 Sakha = 242,
287 Samburu = 243,
288 Samoan = 244,
289 Sango = 245,
290 Sangu = 246,
291 Sanskrit = 247,
292 Santali = 248,
293 Sardinian = 249,
294 Saurashtra = 250,
295 Sena = 251,
296 Serbian = 252,
297 Shambala = 253,
298 Shona = 254,
299 SichuanYi = 255,
300 Sicilian = 256,
301 Sidamo = 257,
302 Silesian = 258,
303 Sindhi = 259,
304 Sinhala = 260,
305 SkoltSami = 261,
306 Slovak = 262,
307 Slovenian = 263,
308 Soga = 264,
309 Somali = 265,
310 SouthernKurdish = 266,
311 SouthernSami = 267,
312 SouthernSotho = 268,
313 SouthNdebele = 269,
314 Spanish = 270,
315 StandardMoroccanTamazight = 271,
316 Sundanese = 272,
317 Swahili = 273,
318 Swati = 274,
319 Swedish = 275,
320 SwissGerman = 276,
321 Syriac = 277,
322 Tachelhit = 278,
323 Tahitian = 279,
324 TaiDam = 280,
325 Taita = 281,
326 Tajik = 282,
327 Tamil = 283,
328 Taroko = 284,
329 Tasawaq = 285,
330 Tatar = 286,
331 Telugu = 287,
332 Teso = 288,
333 Thai = 289,
334 Tibetan = 290,
335 Tigre = 291,
336 Tigrinya = 292,
337 TokelauLanguage = 293,
338 TokPisin = 294,
339 Tongan = 295,
340 Tsonga = 296,
341 Tswana = 297,
342 Turkish = 298,
343 Turkmen = 299,
344 TuvaluLanguage = 300,
345 Tyap = 301,
346 Ugaritic = 302,
347 Ukrainian = 303,
348 UpperSorbian = 304,
349 Urdu = 305,
350 Uyghur = 306,
351 Uzbek = 307,
352 Vai = 308,
353 Venda = 309,
354 Vietnamese = 310,
355 Volapuk = 311,
356 Vunjo = 312,
357 Walloon = 313,
358 Walser = 314,
359 Warlpiri = 315,
360 Welsh = 316,
361 WesternBalochi = 317,
362 WesternFrisian = 318,
363 Wolaytta = 319,
364 Wolof = 320,
365 Xhosa = 321,
366 Yangben = 322,
367 Yiddish = 323,
368 Yoruba = 324,
369 Zarma = 325,
370 Zhuang = 326,
371 Zulu = 327,
372 Kaingang = 328,
373 Nheengatu = 329,
374 Haryanvi = 330,
375 NorthernFrisian = 331,
376 Rajasthani = 332,
377 Moksha = 333,
378 TokiPona = 334,
379 Pijin = 335,
380 Obolo = 336,
381 Baluchi = 337,
382 Ligurian = 338,
383 Rohingya = 339,
384 Torwali = 340,
385 Anii = 341,
386 Kangri = 342,
387 Venetian = 343,
388
389 Afan = Oromo,
390 Bengali = Bangla,
391 Bhutani = Dzongkha,
392 Byelorussian = Belarusian,
393 Cambodian = Khmer,
394 CentralMoroccoTamazight = CentralAtlasTamazight,
395 Chewa = Nyanja,
396 Frisian = WesternFrisian,
397 Greenlandic = Kalaallisut,
398 Inupiak = Inupiaq,
399 Kirghiz = Kyrgyz,
400 Kurundi = Rundi,
401 Kwanyama = Kuanyama,
402 Navaho = Navajo,
403 Oriya = Odia,
404 RhaetoRomance = Romansh,
405 Uighur = Uyghur,
406 Uigur = Uyghur,
407 Walamo = Wolaytta,
408
409 LastLanguage = Venetian
410 };
411
412 enum Script : ushort {
413 AnyScript = 0,
414 AdlamScript = 1,
415 AhomScript = 2,
416 AnatolianHieroglyphsScript = 3,
417 ArabicScript = 4,
418 ArmenianScript = 5,
419 AvestanScript = 6,
420 BalineseScript = 7,
421 BamumScript = 8,
422 BanglaScript = 9,
423 BassaVahScript = 10,
424 BatakScript = 11,
425 BhaiksukiScript = 12,
426 BopomofoScript = 13,
427 BrahmiScript = 14,
428 BrailleScript = 15,
429 BugineseScript = 16,
430 BuhidScript = 17,
431 CanadianAboriginalScript = 18,
432 CarianScript = 19,
433 CaucasianAlbanianScript = 20,
434 ChakmaScript = 21,
435 ChamScript = 22,
436 CherokeeScript = 23,
437 CopticScript = 24,
438 CuneiformScript = 25,
439 CypriotScript = 26,
440 CyrillicScript = 27,
441 DeseretScript = 28,
442 DevanagariScript = 29,
443 DuployanScript = 30,
444 EgyptianHieroglyphsScript = 31,
445 ElbasanScript = 32,
446 EthiopicScript = 33,
447 FraserScript = 34,
448 GeorgianScript = 35,
449 GlagoliticScript = 36,
450 GothicScript = 37,
451 GranthaScript = 38,
452 GreekScript = 39,
453 GujaratiScript = 40,
454 GurmukhiScript = 41,
455 HangulScript = 42,
456 HanScript = 43,
457 HanunooScript = 44,
458 HanWithBopomofoScript = 45,
459 HatranScript = 46,
460 HebrewScript = 47,
461 HiraganaScript = 48,
462 ImperialAramaicScript = 49,
463 InscriptionalPahlaviScript = 50,
464 InscriptionalParthianScript = 51,
465 JamoScript = 52,
466 JapaneseScript = 53,
467 JavaneseScript = 54,
468 KaithiScript = 55,
469 KannadaScript = 56,
470 KatakanaScript = 57,
471 KayahLiScript = 58,
472 KharoshthiScript = 59,
473 KhmerScript = 60,
474 KhojkiScript = 61,
475 KhudawadiScript = 62,
476 KoreanScript = 63,
477 LannaScript = 64,
478 LaoScript = 65,
479 LatinScript = 66,
480 LepchaScript = 67,
481 LimbuScript = 68,
482 LinearAScript = 69,
483 LinearBScript = 70,
484 LycianScript = 71,
485 LydianScript = 72,
486 MahajaniScript = 73,
487 MalayalamScript = 74,
488 MandaeanScript = 75,
489 ManichaeanScript = 76,
490 MarchenScript = 77,
491 MeiteiMayekScript = 78,
492 MendeScript = 79,
493 MeroiticCursiveScript = 80,
494 MeroiticScript = 81,
495 ModiScript = 82,
496 MongolianScript = 83,
497 MroScript = 84,
498 MultaniScript = 85,
499 MyanmarScript = 86,
500 NabataeanScript = 87,
501 NewaScript = 88,
502 NewTaiLueScript = 89,
503 NkoScript = 90,
504 OdiaScript = 91,
505 OghamScript = 92,
506 OlChikiScript = 93,
507 OldHungarianScript = 94,
508 OldItalicScript = 95,
509 OldNorthArabianScript = 96,
510 OldPermicScript = 97,
511 OldPersianScript = 98,
512 OldSouthArabianScript = 99,
513 OrkhonScript = 100,
514 OsageScript = 101,
515 OsmanyaScript = 102,
516 PahawhHmongScript = 103,
517 PalmyreneScript = 104,
518 PauCinHauScript = 105,
519 PhagsPaScript = 106,
520 PhoenicianScript = 107,
521 PollardPhoneticScript = 108,
522 PsalterPahlaviScript = 109,
523 RejangScript = 110,
524 RunicScript = 111,
525 SamaritanScript = 112,
526 SaurashtraScript = 113,
527 SharadaScript = 114,
528 ShavianScript = 115,
529 SiddhamScript = 116,
530 SignWritingScript = 117,
531 SimplifiedHanScript = 118,
532 SinhalaScript = 119,
533 SoraSompengScript = 120,
534 SundaneseScript = 121,
535 SylotiNagriScript = 122,
536 SyriacScript = 123,
537 TagalogScript = 124,
538 TagbanwaScript = 125,
539 TaiLeScript = 126,
540 TaiVietScript = 127,
541 TakriScript = 128,
542 TamilScript = 129,
543 TangutScript = 130,
544 TeluguScript = 131,
545 ThaanaScript = 132,
546 ThaiScript = 133,
547 TibetanScript = 134,
548 TifinaghScript = 135,
549 TirhutaScript = 136,
550 TraditionalHanScript = 137,
551 UgariticScript = 138,
552 VaiScript = 139,
553 VarangKshitiScript = 140,
554 YiScript = 141,
555 HanifiScript = 142,
556
557 BengaliScript = BanglaScript,
558 MendeKikakuiScript = MendeScript,
559 OriyaScript = OdiaScript,
560 SimplifiedChineseScript = SimplifiedHanScript,
561 TraditionalChineseScript = TraditionalHanScript,
562
563 LastScript = HanifiScript
564 };
565
566 // ### Qt 7: Rename to Territory
568 AnyTerritory = 0,
569 Afghanistan = 1,
570 AlandIslands = 2,
571 Albania = 3,
572 Algeria = 4,
573 AmericanSamoa = 5,
574 Andorra = 6,
575 Angola = 7,
576 Anguilla = 8,
577 Antarctica = 9,
578 AntiguaAndBarbuda = 10,
579 Argentina = 11,
580 Armenia = 12,
581 Aruba = 13,
582 AscensionIsland = 14,
583 Australia = 15,
584 Austria = 16,
585 Azerbaijan = 17,
586 Bahamas = 18,
587 Bahrain = 19,
588 Bangladesh = 20,
589 Barbados = 21,
590 Belarus = 22,
591 Belgium = 23,
592 Belize = 24,
593 Benin = 25,
594 Bermuda = 26,
595 Bhutan = 27,
596 Bolivia = 28,
597 BosniaAndHerzegovina = 29,
598 Botswana = 30,
599 BouvetIsland = 31,
600 Brazil = 32,
601 BritishIndianOceanTerritory = 33,
602 BritishVirginIslands = 34,
603 Brunei = 35,
604 Bulgaria = 36,
605 BurkinaFaso = 37,
606 Burundi = 38,
607 Cambodia = 39,
608 Cameroon = 40,
609 Canada = 41,
610 CanaryIslands = 42,
611 CapeVerde = 43,
612 CaribbeanNetherlands = 44,
613 CaymanIslands = 45,
614 CentralAfricanRepublic = 46,
615 CeutaAndMelilla = 47,
616 Chad = 48,
617 Chile = 49,
618 China = 50,
619 ChristmasIsland = 51,
620 ClippertonIsland = 52,
621 CocosIslands = 53,
622 Colombia = 54,
623 Comoros = 55,
624 CongoBrazzaville = 56,
625 CongoKinshasa = 57,
626 CookIslands = 58,
627 CostaRica = 59,
628 Croatia = 60,
629 Cuba = 61,
630 Curacao = 62,
631 Cyprus = 63,
632 Czechia = 64,
633 Denmark = 65,
634 DiegoGarcia = 66,
635 Djibouti = 67,
636 Dominica = 68,
637 DominicanRepublic = 69,
638 Ecuador = 70,
639 Egypt = 71,
640 ElSalvador = 72,
641 EquatorialGuinea = 73,
642 Eritrea = 74,
643 Estonia = 75,
644 Eswatini = 76,
645 Ethiopia = 77,
646 Europe = 78,
647 EuropeanUnion = 79,
648 FalklandIslands = 80,
649 FaroeIslands = 81,
650 Fiji = 82,
651 Finland = 83,
652 France = 84,
653 FrenchGuiana = 85,
654 FrenchPolynesia = 86,
655 FrenchSouthernTerritories = 87,
656 Gabon = 88,
657 Gambia = 89,
658 Georgia = 90,
659 Germany = 91,
660 Ghana = 92,
661 Gibraltar = 93,
662 Greece = 94,
663 Greenland = 95,
664 Grenada = 96,
665 Guadeloupe = 97,
666 Guam = 98,
667 Guatemala = 99,
668 Guernsey = 100,
669 GuineaBissau = 101,
670 Guinea = 102,
671 Guyana = 103,
672 Haiti = 104,
673 HeardAndMcDonaldIslands = 105,
674 Honduras = 106,
675 HongKong = 107,
676 Hungary = 108,
677 Iceland = 109,
678 India = 110,
679 Indonesia = 111,
680 Iran = 112,
681 Iraq = 113,
682 Ireland = 114,
683 IsleOfMan = 115,
684 Israel = 116,
685 Italy = 117,
686 IvoryCoast = 118,
687 Jamaica = 119,
688 Japan = 120,
689 Jersey = 121,
690 Jordan = 122,
691 Kazakhstan = 123,
692 Kenya = 124,
693 Kiribati = 125,
694 Kosovo = 126,
695 Kuwait = 127,
696 Kyrgyzstan = 128,
697 Laos = 129,
698 LatinAmerica = 130,
699 Latvia = 131,
700 Lebanon = 132,
701 Lesotho = 133,
702 Liberia = 134,
703 Libya = 135,
704 Liechtenstein = 136,
705 Lithuania = 137,
706 Luxembourg = 138,
707 Macao = 139,
708 Macedonia = 140,
709 Madagascar = 141,
710 Malawi = 142,
711 Malaysia = 143,
712 Maldives = 144,
713 Mali = 145,
714 Malta = 146,
715 MarshallIslands = 147,
716 Martinique = 148,
717 Mauritania = 149,
718 Mauritius = 150,
719 Mayotte = 151,
720 Mexico = 152,
721 Micronesia = 153,
722 Moldova = 154,
723 Monaco = 155,
724 Mongolia = 156,
725 Montenegro = 157,
726 Montserrat = 158,
727 Morocco = 159,
728 Mozambique = 160,
729 Myanmar = 161,
730 Namibia = 162,
731 NauruTerritory = 163,
732 Nepal = 164,
733 Netherlands = 165,
734 NewCaledonia = 166,
735 NewZealand = 167,
736 Nicaragua = 168,
737 Nigeria = 169,
738 Niger = 170,
739 Niue = 171,
740 NorfolkIsland = 172,
741 NorthernMarianaIslands = 173,
742 NorthKorea = 174,
743 Norway = 175,
744 Oman = 176,
745 OutlyingOceania = 177,
746 Pakistan = 178,
747 Palau = 179,
748 PalestinianTerritories = 180,
749 Panama = 181,
750 PapuaNewGuinea = 182,
751 Paraguay = 183,
752 Peru = 184,
753 Philippines = 185,
754 Pitcairn = 186,
755 Poland = 187,
756 Portugal = 188,
757 PuertoRico = 189,
758 Qatar = 190,
759 Reunion = 191,
760 Romania = 192,
761 Russia = 193,
762 Rwanda = 194,
763 SaintBarthelemy = 195,
764 SaintHelena = 196,
765 SaintKittsAndNevis = 197,
766 SaintLucia = 198,
767 SaintMartin = 199,
768 SaintPierreAndMiquelon = 200,
769 SaintVincentAndGrenadines = 201,
770 Samoa = 202,
771 SanMarino = 203,
772 SaoTomeAndPrincipe = 204,
773 SaudiArabia = 205,
774 Senegal = 206,
775 Serbia = 207,
776 Seychelles = 208,
777 SierraLeone = 209,
778 Singapore = 210,
779 SintMaarten = 211,
780 Slovakia = 212,
781 Slovenia = 213,
782 SolomonIslands = 214,
783 Somalia = 215,
784 SouthAfrica = 216,
785 SouthGeorgiaAndSouthSandwichIslands = 217,
786 SouthKorea = 218,
787 SouthSudan = 219,
788 Spain = 220,
789 SriLanka = 221,
790 Sudan = 222,
791 Suriname = 223,
792 SvalbardAndJanMayen = 224,
793 Sweden = 225,
794 Switzerland = 226,
795 Syria = 227,
796 Taiwan = 228,
797 Tajikistan = 229,
798 Tanzania = 230,
799 Thailand = 231,
800 TimorLeste = 232,
801 Togo = 233,
802 TokelauTerritory = 234,
803 Tonga = 235,
804 TrinidadAndTobago = 236,
805 TristanDaCunha = 237,
806 Tunisia = 238,
807 Turkey = 239,
808 Turkmenistan = 240,
809 TurksAndCaicosIslands = 241,
810 TuvaluTerritory = 242,
811 Uganda = 243,
812 Ukraine = 244,
813 UnitedArabEmirates = 245,
814 UnitedKingdom = 246,
815 UnitedStatesOutlyingIslands = 247,
816 UnitedStates = 248,
817 UnitedStatesVirginIslands = 249,
818 Uruguay = 250,
819 Uzbekistan = 251,
820 Vanuatu = 252,
821 VaticanCity = 253,
822 Venezuela = 254,
823 Vietnam = 255,
824 WallisAndFutuna = 256,
825 WesternSahara = 257,
826 World = 258,
827 Yemen = 259,
828 Zambia = 260,
829 Zimbabwe = 261,
830
831 AnyCountry = AnyTerritory,
832 Bonaire = CaribbeanNetherlands,
833 BosniaAndHerzegowina = BosniaAndHerzegovina,
834 CuraSao = Curacao,
835 CzechRepublic = Czechia,
836 DemocraticRepublicOfCongo = CongoKinshasa,
837 DemocraticRepublicOfKorea = NorthKorea,
838 EastTimor = TimorLeste,
839 LatinAmericaAndTheCaribbean = LatinAmerica,
840 Macau = Macao,
841 NauruCountry = NauruTerritory,
842 PeoplesRepublicOfCongo = CongoBrazzaville,
843 RepublicOfKorea = SouthKorea,
844 RussianFederation = Russia,
845 SaintVincentAndTheGrenadines = SaintVincentAndGrenadines,
846 SouthGeorgiaAndTheSouthSandwichIslands = SouthGeorgiaAndSouthSandwichIslands,
847 SvalbardAndJanMayenIslands = SvalbardAndJanMayen,
848 Swaziland = Eswatini,
849 SyrianArabRepublic = Syria,
850 TokelauCountry = TokelauTerritory,
851 TuvaluCountry = TuvaluTerritory,
852 UnitedStatesMinorOutlyingIslands = UnitedStatesOutlyingIslands,
853 VaticanCityState = VaticanCity,
854 WallisAndFutunaIslands = WallisAndFutuna,
855
856 LastTerritory = Zimbabwe,
857 LastCountry = LastTerritory
858 };
859// GENERATED PART ENDS HERE
860
861 using Territory = Country; // ### Qt 7: reverse
862
866
871 ImperialSystem = ImperialUSSystem // Qt 4 compatibility
872 };
873 Q_ENUM(MeasurementSystem)
874
875 enum FormatType { LongFormat, ShortFormat, NarrowFormat };
876 Q_ENUM(FormatType)
878 DefaultNumberOptions = 0x0,
879 OmitGroupSeparator = 0x01,
880 RejectGroupSeparator = 0x02,
881 OmitLeadingZeroInExponent = 0x04,
882 RejectLeadingZeroInExponent = 0x08,
883 IncludeTrailingZeroesAfterDot = 0x10,
884 RejectTrailingZeroesAfterDot = 0x20
885 };
886 Q_DECLARE_FLAGS(NumberOptions, NumberOption)
887 Q_FLAG(NumberOptions)
888
890 FloatingPointShortest = -128
891 };
892
893 enum class TagSeparator : char { Dash = '-', Underscore = '_' };
894 Q_ENUM(TagSeparator)
895
901 Q_ENUM(CurrencySymbolFormat)
902
904 // Single-bit values, for internal use.
905 DataSizeBase1000 = 1, // use factors of 1000 instead of IEC's 1024;
906 DataSizeSIQuantifiers = 2, // use SI quantifiers instead of IEC ones.
907
908 // Flags values for use in API:
909 DataSizeIecFormat = 0, // base 1024, KiB, MiB, GiB, ...
910 DataSizeTraditionalFormat = DataSizeSIQuantifiers, // base 1024, kB, MB, GB, ...
911 DataSizeSIFormat = DataSizeBase1000 | DataSizeSIQuantifiers // base 1000, kB, MB, GB, ...
912 };
913 Q_DECLARE_FLAGS(DataSizeFormats, DataSizeFormat)
914 Q_FLAG(DataSizeFormats)
915
916 QLocale();
917 QT_CORE_INLINE_SINCE(6, 4)
921 QLocale(Language language, Script script = AnyScript, Territory territory = AnyTerritory);
922 QLocale(const QLocale &other) noexcept;
923 QT_MOVE_ASSIGNMENT_OPERATOR_IMPL_VIA_PURE_SWAP(QLocale)
924 QLocale &operator=(const QLocale &other) noexcept;
925 ~QLocale();
926
927 void swap(QLocale &other) noexcept { d.swap(other.d); }
928
929 Language language() const;
930 Script script() const;
931 Territory territory() const;
932#if QT_DEPRECATED_SINCE(6, 6)
933 QT_DEPRECATED_VERSION_X_6_6("Use territory() instead")
934 Country country() const;
935#endif
936
937#if QT_CORE_REMOVED_SINCE(6, 7)
938 QString name() const;
939 QString bcp47Name() const;
940#endif
941 QString name(TagSeparator separator = TagSeparator::Underscore) const;
942 QString bcp47Name(TagSeparator separator = TagSeparator::Dash) const;
943
944 QString nativeLanguageName() const;
945 QString nativeTerritoryName() const;
946#if QT_DEPRECATED_SINCE(6, 6)
947 QT_DEPRECATED_VERSION_X_6_6("Use nativeTerritoryName() instead")
948 QString nativeCountryName() const;
949#endif
950
951 short toShort(const QString &s, bool *ok = nullptr) const
952 { return toShort(qToStringViewIgnoringNull(s), ok); }
953 ushort toUShort(const QString &s, bool *ok = nullptr) const
954 { return toUShort(qToStringViewIgnoringNull(s), ok); }
955 int toInt(const QString &s, bool *ok = nullptr) const
956 { return toInt(qToStringViewIgnoringNull(s), ok); }
957 uint toUInt(const QString &s, bool *ok = nullptr) const
958 { return toUInt(qToStringViewIgnoringNull(s), ok); }
959 long toLong(const QString &s, bool *ok = nullptr) const
960 { return toLong(qToStringViewIgnoringNull(s), ok); }
961 ulong toULong(const QString &s, bool *ok = nullptr) const
962 { return toULong(qToStringViewIgnoringNull(s), ok); }
963 qlonglong toLongLong(const QString &s, bool *ok = nullptr) const
964 { return toLongLong(qToStringViewIgnoringNull(s), ok); }
965 qulonglong toULongLong(const QString &s, bool *ok = nullptr) const
966 { return toULongLong(qToStringViewIgnoringNull(s), ok); }
967 float toFloat(const QString &s, bool *ok = nullptr) const
968 { return toFloat(qToStringViewIgnoringNull(s), ok); }
969 double toDouble(const QString &s, bool *ok = nullptr) const
971
972 short toShort(QStringView s, bool *ok = nullptr) const;
973 ushort toUShort(QStringView s, bool *ok = nullptr) const;
974 int toInt(QStringView s, bool *ok = nullptr) const;
975 uint toUInt(QStringView s, bool *ok = nullptr) const;
976 long toLong(QStringView s, bool *ok = nullptr) const;
977 ulong toULong(QStringView s, bool *ok = nullptr) const;
978 qlonglong toLongLong(QStringView s, bool *ok = nullptr) const;
979 qulonglong toULongLong(QStringView s, bool *ok = nullptr) const;
980 float toFloat(QStringView s, bool *ok = nullptr) const;
981 double toDouble(QStringView s, bool *ok = nullptr) const;
982
985 QString toString(long i) const { return toString(qlonglong(i)); }
987 QString toString(short i) const { return toString(qlonglong(i)); }
989 QString toString(int i) const { return toString(qlonglong(i)); }
991 QString toString(double f, char format = 'g', int precision = 6) const;
992 QString toString(float f, char format = 'g', int precision = 6) const
993 { return toString(double(f), format, precision); }
994
995 // (Can't inline first two: passing by value doesn't work when only forward-declared.)
996 QString toString(QDate date, const QString &format) const;
997 QString toString(QTime time, const QString &format) const;
1003 QString toString(QDate date, FormatType format = LongFormat) const;
1004 QString toString(QTime time, FormatType format = LongFormat) const;
1005 QString toString(const QDateTime &dateTime, FormatType format = LongFormat) const;
1006 /* We can't pass a default for QCalendar (its declaration mentions
1007 * QLocale::FormatType, so it has to #include this header, which thus can't
1008 * #include its, so we can't instantiate QCalendar() as default). This
1009 * precludes any default for format, too.
1010 */
1012 QString toString(QDate date, FormatType format, QCalendar cal) const;
1013 QString toString(const QDateTime &dateTime, FormatType format, QCalendar cal) const;
1015
1016 QString dateFormat(FormatType format = LongFormat) const;
1017 QString timeFormat(FormatType format = LongFormat) const;
1018 QString dateTimeFormat(FormatType format = LongFormat) const;
1019 // QCalendar's header has to #include QLocale's, preventing the reverse, so
1020 // QCalendar parameters can't have defaults here.
1021#if QT_CONFIG(datestring)
1022 QTime toTime(const QString &string, FormatType = LongFormat) const;
1023 QTime toTime(const QString &string, const QString &format) const;
1024# if QT_CORE_REMOVED_SINCE(6, 7)
1025 QDate toDate(const QString &string, FormatType = LongFormat) const;
1026 QDate toDate(const QString &string, const QString &format) const;
1027 QDateTime toDateTime(const QString &string, FormatType format = LongFormat) const;
1028 QDateTime toDateTime(const QString &string, const QString &format) const;
1029 // Calendar-aware API
1030 QDate toDate(const QString &string, FormatType format, QCalendar cal) const;
1031 QDate toDate(const QString &string, const QString &format, QCalendar cal) const;
1032 QDateTime toDateTime(const QString &string, FormatType format, QCalendar cal) const;
1033 QDateTime toDateTime(const QString &string, const QString &format, QCalendar cal) const;
1034# endif
1035 QDate toDate(const QString &string, FormatType = LongFormat,
1036 int baseYear = DefaultTwoDigitBaseYear) const;
1037 QDate toDate(const QString &string, const QString &format,
1038 int baseYear = DefaultTwoDigitBaseYear) const;
1039 QDateTime toDateTime(const QString &string, FormatType format = LongFormat,
1040 int baseYear = DefaultTwoDigitBaseYear) const;
1041 QDateTime toDateTime(const QString &string, const QString &format,
1042 int baseYear = DefaultTwoDigitBaseYear) const;
1043 // Calendar-aware API
1044 QDate toDate(const QString &string, FormatType format, QCalendar cal,
1045 int baseYear = DefaultTwoDigitBaseYear) const;
1046 QDate toDate(const QString &string, const QString &format, QCalendar cal,
1047 int baseYear = DefaultTwoDigitBaseYear) const;
1048 QDateTime toDateTime(const QString &string, FormatType format, QCalendar cal,
1049 int baseYear = DefaultTwoDigitBaseYear) const;
1050 QDateTime toDateTime(const QString &string, const QString &format, QCalendar cal,
1051 int baseYear = DefaultTwoDigitBaseYear) const;
1052#endif
1053
1054 QString decimalPoint() const;
1055 QString groupSeparator() const;
1056 QString percent() const;
1057 QString zeroDigit() const;
1058 QString negativeSign() const;
1059 QString positiveSign() const;
1060 QString exponential() const;
1061
1062 QString monthName(int, FormatType format = LongFormat) const;
1063 QString standaloneMonthName(int, FormatType format = LongFormat) const;
1064 QString dayName(int, FormatType format = LongFormat) const;
1065 QString standaloneDayName(int, FormatType format = LongFormat) const;
1066
1067 Qt::DayOfWeek firstDayOfWeek() const;
1068 QList<Qt::DayOfWeek> weekdays() const;
1069
1070 QString amText() const;
1071 QString pmText() const;
1072
1073 MeasurementSystem measurementSystem() const;
1074 QLocale collation() const;
1075 Qt::LayoutDirection textDirection() const;
1076
1077 QString toUpper(const QString &str) const;
1078 QString toLower(const QString &str) const;
1079
1080 QString currencySymbol(CurrencySymbolFormat = CurrencySymbol) const;
1081 QString toCurrencyString(qlonglong, const QString &symbol = QString()) const;
1082 QString toCurrencyString(qulonglong, const QString &symbol = QString()) const;
1083 QString toCurrencyString(short i, const QString &symbol = QString()) const
1084 { return toCurrencyString(qlonglong(i), symbol); }
1086 { return toCurrencyString(qulonglong(i), symbol); }
1087 QString toCurrencyString(int i, const QString &symbol = QString()) const
1088 { return toCurrencyString(qlonglong(i), symbol); }
1089 QString toCurrencyString(uint i, const QString &symbol = QString()) const
1090 { return toCurrencyString(qulonglong(i), symbol); }
1091 QString toCurrencyString(double, const QString &symbol = QString(), int precision = -1) const;
1092 QString toCurrencyString(float i, const QString &symbol = QString(), int precision = -1) const
1093 { return toCurrencyString(double(i), symbol, precision); }
1094
1095 QString formattedDataSize(qint64 bytes, int precision = 2, DataSizeFormats format = DataSizeIecFormat) const;
1096
1097#if QT_CORE_REMOVED_SINCE(6, 7)
1098 QStringList uiLanguages() const;
1099#endif
1100 QStringList uiLanguages(TagSeparator separator = TagSeparator::Dash) const;
1101
1103 ISO639Part1 = 1 << 0,
1104 ISO639Part2B = 1 << 1,
1105 ISO639Part2T = 1 << 2,
1106 ISO639Part3 = 1 << 3,
1107 LegacyLanguageCode = 1 << 15,
1108
1109 ISO639Part2 = ISO639Part2B | ISO639Part2T,
1110 ISO639Alpha2 = ISO639Part1,
1111 ISO639Alpha3 = ISO639Part2 | ISO639Part3,
1112 ISO639 = ISO639Alpha2 | ISO639Alpha3,
1113
1114 AnyLanguageCode = -1
1116 Q_DECLARE_FLAGS(LanguageCodeTypes, LanguageCodeType)
1117 Q_FLAG(LanguageCodeTypes)
1118
1119#if QT_CORE_REMOVED_SINCE(6, 3)
1120 static QString languageToCode(Language language);
1121 static Language codeToLanguage(QStringView languageCode) noexcept;
1122#endif
1123 static QString languageToCode(Language language, LanguageCodeTypes codeTypes = AnyLanguageCode);
1124 static Language codeToLanguage(QStringView languageCode,
1125 LanguageCodeTypes codeTypes = AnyLanguageCode) noexcept;
1126 static QString territoryToCode(Territory territory);
1127 static Territory codeToTerritory(QStringView territoryCode) noexcept;
1128#if QT_DEPRECATED_SINCE(6, 6)
1129 QT_DEPRECATED_VERSION_X_6_6("Use territoryToCode(Territory) instead")
1130 static QString countryToCode(Country country);
1131 QT_DEPRECATED_VERSION_X_6_6("Use codeToTerritory(QStringView) instead")
1132 static Country codeToCountry(QStringView countryCode) noexcept;
1133#endif
1134 static QString scriptToCode(Script script);
1135 static Script codeToScript(QStringView scriptCode) noexcept;
1136
1137 static QString languageToString(Language language);
1138 static QString territoryToString(Territory territory);
1139#if QT_DEPRECATED_SINCE(6, 6)
1140 QT_DEPRECATED_VERSION_X_6_6("Use territoryToString(Territory) instead")
1141 static QString countryToString(Country country);
1142#endif
1143 static QString scriptToString(Script script);
1144 static void setDefault(const QLocale &locale);
1145
1146 static QLocale c() { return QLocale(C); }
1147 static QLocale system();
1148
1149 static QList<QLocale> matchingLocales(QLocale::Language language, QLocale::Script script,
1150 QLocale::Territory territory);
1151#if QT_DEPRECATED_SINCE(6, 6)
1152 QT_DEPRECATED_VERSION_X_6_6("Query territory() on each entry from matchingLocales() instead")
1153 static QList<Country> countriesForLanguage(Language lang);
1154#endif
1155
1156 void setNumberOptions(NumberOptions options);
1157 NumberOptions numberOptions() const;
1158
1159 enum QuotationStyle { StandardQuotation, AlternateQuotation };
1160 Q_ENUM(QuotationStyle)
1161 QString quoteString(const QString &str, QuotationStyle style = StandardQuotation) const
1162 { return quoteString(QStringView(str), style); }
1163 QString quoteString(QStringView str, QuotationStyle style = StandardQuotation) const;
1164
1165 QString createSeparatedList(const QStringList &strl) const;
1166
1167private:
1169 bool equals(const QLocale &other) const;
1170 friend class QLocalePrivate;
1171 friend class QSystemLocale;
1172 friend class QCalendarBackend;
1173 friend class QRomanCalendar;
1174 friend Q_CORE_EXPORT size_t qHash(const QLocale &key, size_t seed) noexcept;
1175
1176 friend bool comparesEqual(const QLocale &lhs, const QLocale &rhs) noexcept
1177 {
1178 return lhs.equals(rhs);
1179 }
1181
1182 QSharedDataPointer<QLocalePrivate> d;
1183};
1184Q_DECLARE_SHARED(QLocale)
1185Q_DECLARE_OPERATORS_FOR_FLAGS(QLocale::NumberOptions)
1186Q_DECLARE_OPERATORS_FOR_FLAGS(QLocale::LanguageCodeTypes)
1187
1188#if QT_CORE_INLINE_IMPL_SINCE(6, 4)
1191#endif
1192
1193#ifndef QT_NO_DATASTREAM
1194Q_CORE_EXPORT QDataStream &operator<<(QDataStream &, const QLocale &);
1195Q_CORE_EXPORT QDataStream &operator>>(QDataStream &, QLocale &);
1196#endif
1197
1198#ifndef QT_NO_DEBUG_STREAM
1199Q_CORE_EXPORT QDebug operator<<(QDebug, const QLocale &);
1200#endif
1201
1203
1204#endif // QLOCALE_H
\inmodule QtCore
Definition qbytearray.h:57
The QCalendarBackend class provides basic calendaring functions.
The QCalendar class describes calendar systems.
Definition qcalendar.h:53
\inmodule QtCore\reentrant
Definition qdatastream.h:46
\inmodule QtCore\reentrant
Definition qdatetime.h:283
\inmodule QtCore \reentrant
Definition qdatetime.h:29
\inmodule QtCore
The QIntValidator class provides a validator that ensures a string contains a valid integer within a ...
Definition qvalidator.h:56
Definition qlist.h:75
QString toString(ulong i) const
Definition qlocale.h:986
double toDouble(const QString &s, bool *ok=nullptr) const
Returns the double represented by the localized string s.
Definition qlocale.h:969
QString toCurrencyString(ushort i, const QString &symbol=QString()) const
Definition qlocale.h:1085
float toFloat(const QString &s, bool *ok=nullptr) const
Returns the float represented by the localized string s.
Definition qlocale.h:967
uint toUInt(const QString &s, bool *ok=nullptr) const
Returns the unsigned int represented by the localized string s.
Definition qlocale.h:957
QString toString(uint i) const
Definition qlocale.h:990
long toLong(const QString &s, bool *ok=nullptr) const
Definition qlocale.h:959
QuotationStyle
Definition qlocale.h:1159
void swap(QLocale &other) noexcept
Definition qlocale.h:927
FloatingPointPrecisionOption
Definition qlocale.h:889
MeasurementSystem
Definition qlocale.h:867
@ ImperialUSSystem
Definition qlocale.h:869
@ MetricSystem
Definition qlocale.h:868
@ ImperialUKSystem
Definition qlocale.h:870
CurrencySymbolFormat
Definition qlocale.h:896
@ CurrencySymbol
Definition qlocale.h:898
@ CurrencyIsoCode
Definition qlocale.h:897
LanguageCodeType
Definition qlocale.h:1102
friend bool comparesEqual(const QLocale &lhs, const QLocale &rhs) noexcept
Definition qlocale.h:1176
QString toString(long i) const
Definition qlocale.h:985
QString toString(float f, char format='g', int precision=6) const
Definition qlocale.h:992
QString toString(int i) const
Definition qlocale.h:989
DataSizeFormat
Definition qlocale.h:903
int toInt(const QString &s, bool *ok=nullptr) const
Returns the int represented by the localized string s.
Definition qlocale.h:955
static QLocale c()
Returns a QLocale object initialized to the "C" locale.
Definition qlocale.h:1146
qulonglong toULongLong(const QString &s, bool *ok=nullptr) const
Returns the unsigned long long int represented by the localized string s.
Definition qlocale.h:965
ulong toULong(const QString &s, bool *ok=nullptr) const
Definition qlocale.h:961
short toShort(const QString &s, bool *ok=nullptr) const
Returns the short int represented by the localized string s.
Definition qlocale.h:951
qlonglong toLongLong(const QString &s, bool *ok=nullptr) const
Returns the long long int represented by the localized string s.
Definition qlocale.h:963
QLocale()
Constructs a QLocale object initialized with the default locale.
Definition qlocale.cpp:1070
ushort toUShort(const QString &s, bool *ok=nullptr) const
Returns the unsigned short int represented by the localized string s.
Definition qlocale.h:953
QString toCurrencyString(float i, const QString &symbol=QString(), int precision=-1) const
Definition qlocale.h:1092
QString toString(const QDateTime &dateTime, const QString &format) const
Definition qlocale.h:998
NumberOption
Definition qlocale.h:877
TagSeparator
Definition qlocale.h:893
QString toString(ushort i) const
Definition qlocale.h:988
QString toCurrencyString(uint i, const QString &symbol=QString()) const
Definition qlocale.h:1089
QString toCurrencyString(int i, const QString &symbol=QString()) const
Definition qlocale.h:1087
QString toCurrencyString(short i, const QString &symbol=QString()) const
Definition qlocale.h:1083
QString toString(short i) const
Definition qlocale.h:987
The QRomanCalendar class is a shared base for calendars based on the ancient Roman calendar.
\inmodule QtCore
\inmodule QtCore
Definition qstringview.h:78
\macro QT_RESTRICTED_CAST_FROM_ASCII
Definition qstring.h:129
\inmodule QtCore
\inmodule QtCore \reentrant
Definition qdatetime.h:215
\inmodule QtCore
Definition qvariant.h:65
QString str
[2]
QDate date
[1]
Language
Definition language.h:13
Combined button and popup list for selecting options.
LayoutDirection
DayOfWeek
#define Q_DECLARE_EQUALITY_COMPARABLE(...)
#define Q_DECLARE_FLAGS(Flags, Enum)
Definition qflags.h:174
#define Q_DECLARE_OPERATORS_FOR_FLAGS(Flags)
Definition qflags.h:194
Q_CORE_EXPORT size_t qHash(const QLocale &key, size_t seed=0) noexcept
Q_CORE_EXPORT QDataStream & operator>>(QDataStream &, QLocale &)
Definition qlocale.cpp:869
Q_CORE_EXPORT QDataStream & operator<<(QDataStream &, const QLocale &)
Definition qlocale.cpp:863
static QLocale::Language codeToLanguage(QStringView s)
GLuint64 key
GLfloat GLfloat f
GLuint name
GLint GLsizei GLsizei GLenum format
GLdouble s
[6]
Definition qopenglext.h:235
GLenum GLint GLint * precision
static Q_CONSTINIT QBasicAtomicInteger< unsigned > seed
Definition qrandom.cpp:196
static ISC_DATE toDate(QDate t)
static ISC_TIME toTime(QTime t)
QStringView qToStringViewIgnoringNull(const QStringLike &s) noexcept
#define QT_DEPRECATED_VERSION_X_6_6(text)
#define Q_ENUM(x)
#define Q_FLAG(x)
#define Q_GADGET
unsigned long ulong
Definition qtypes.h:35
quint64 qulonglong
Definition qtypes.h:64
unsigned int uint
Definition qtypes.h:34
long long qint64
Definition qtypes.h:60
unsigned short ushort
Definition qtypes.h:33
qint64 qlonglong
Definition qtypes.h:63
static int toInt(const QChar &qc, int R)
static double toDouble(Value v)
#define explicit
QDateTime dateTime
[12]
QSharedPointer< T > other(t)
[5]
this swap(other)
char * toString(const MyType &t)
[31]