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