#ifndef QLOCALE_H
#define QLOCALE_H 
#include <QtCore/qstring.h>
typedef enum QtValidLicenseForCoreModule QtCoreModule;
struct QDate;
struct QTime;
struct QVariant;
struct QLocalePrivate;
class QLocale{
   public: enum Language{
      C = 1,
      Abkhazian = 2,
      Afan = 3,
      Afar = 4,
      Afrikaans = 5,
      Albanian = 6,
      Amharic = 7,
      Arabic = 8,
      Armenian = 9,
      Assamese = 10,
      Aymara = 11,
      Azerbaijani = 12,
      Bashkir = 13,
      Basque = 14,
      Bengali = 15,
      Bhutani = 16,
      Bihari = 17,
      Bislama = 18,
      Breton = 19,
      Bulgarian = 20,
      Burmese = 21,
      Byelorussian = 22,
      Cambodian = 23,
      Catalan = 24,
      Chinese = 25,
      Corsican = 26,
      Croatian = 27,
      Czech = 28,
      Danish = 29,
      Dutch = 30,
      English = 31,
      Esperanto = 32,
      Estonian = 33,
      Faroese = 34,
      FijiLanguage = 35,
      Finnish = 36,
      French = 37,
      Frisian = 38,
      Gaelic = 39,
      Galician = 40,
      Georgian = 41,
      German = 42,
      Greek = 43,
      Greenlandic = 44,
      Guarani = 45,
      Gujarati = 46,
      Hausa = 47,
      Hebrew = 48,
      Hindi = 49,
      Hungarian = 50,
      Icelandic = 51,
      Indonesian = 52,
      Interlingua = 53,
      Interlingue = 54,
      Inuktitut = 55,
      Inupiak = 56,
      Irish = 57,
      Italian = 58,
      Japanese = 59,
      Javanese = 60,
      Kannada = 61,
      Kashmiri = 62,
      Kazakh = 63,
      Kinyarwanda = 64,
      Kirghiz = 65,
      Korean = 66,
      Kurdish = 67,
      Kurundi = 68,
      Laothian = 69,
      Latin = 70,
      Latvian = 71,
      Lingala = 72,
      Lithuanian = 73,
      Macedonian = 74,
      Malagasy = 75,
      Malay = 76,
      Malayalam = 77,
      Maltese = 78,
      Maori = 79,
      Marathi = 80,
      Moldavian = 81,
      Mongolian = 82,
      NauruLanguage = 83,
      Nepali = 84,
      Norwegian = 85,
      Occitan = 86,
      Oriya = 87,
      Pashto = 88,
      Persian = 89,
      Polish = 90,
      Portuguese = 91,
      Punjabi = 92,
      Quechua = 93,
      RhaetoRomance = 94,
      Romanian = 95,
      Russian = 96,
      Samoan = 97,
      Sangho = 98,
      Sanskrit = 99,
      Serbian = 100,
      SerboCroatian = 101,
      Sesotho = 102,
      Setswana = 103,
      Shona = 104,
      Sindhi = 105,
      Singhalese = 106,
      Siswati = 107,
      Slovak = 108,
      Slovenian = 109,
      Somali = 110,
      Spanish = 111,
      Sundanese = 112,
      Swahili = 113,
      Swedish = 114,
      Tagalog = 115,
      Tajik = 116,
      Tamil = 117,
      Tatar = 118,
      Telugu = 119,
      Thai = 120,
      Tibetan = 121,
      Tigrinya = 122,
      TongaLanguage = 123,
      Tsonga = 124,
      Turkish = 125,
      Turkmen = 126,
      Twi = 127,
      Uigur = 128,
      Ukrainian = 129,
      Urdu = 130,
      Uzbek = 131,
      Vietnamese = 132,
      Volapuk = 133,
      Welsh = 134,
      Wolof = 135,
      Xhosa = 136,
      Yiddish = 137,
      Yoruba = 138,
      Zhuang = 139,
      Zulu = 140,
      Nynorsk = 141,
      Bosnian = 142,
      Divehi = 143,
      Manx = 144,
      Cornish = 145,
      LastLanguage = 145,
   };
   public: enum Country{
      AnyCountry = 0,
      Afghanistan = 1,
      Albania = 2,
      Algeria = 3,
      AmericanSamoa = 4,
      Andorra = 5,
      Angola = 6,
      Anguilla = 7,
      Antarctica = 8,
      AntiguaAndBarbuda = 9,
      Argentina = 10,
      Armenia = 11,
      Aruba = 12,
      Australia = 13,
      Austria = 14,
      Azerbaijan = 15,
      Bahamas = 16,
      Bahrain = 17,
      Bangladesh = 18,
      Barbados = 19,
      Belarus = 20,
      Belgium = 21,
      Belize = 22,
      Benin = 23,
      Bermuda = 24,
      Bhutan = 25,
      Bolivia = 26,
      BosniaAndHerzegowina = 27,
      Botswana = 28,
      BouvetIsland = 29,
      Brazil = 30,
      BritishIndianOceanTerritory = 31,
      BruneiDarussalam = 32,
      Bulgaria = 33,
      BurkinaFaso = 34,
      Burundi = 35,
      Cambodia = 36,
      Cameroon = 37,
      Canada = 38,
      CapeVerde = 39,
      CaymanIslands = 40,
      CentralAfricanRepublic = 41,
      Chad = 42,
      Chile = 43,
      China = 44,
      ChristmasIsland = 45,
      CocosIslands = 46,
      Colombia = 47,
      Comoros = 48,
      DemocraticRepublicOfCongo = 49,
      PeoplesRepublicOfCongo = 50,
      CookIslands = 51,
      CostaRica = 52,
      IvoryCoast = 53,
      Croatia = 54,
      Cuba = 55,
      Cyprus = 56,
      CzechRepublic = 57,
      Denmark = 58,
      Djibouti = 59,
      Dominica = 60,
      DominicanRepublic = 61,
      EastTimor = 62,
      Ecuador = 63,
      Egypt = 64,
      ElSalvador = 65,
      EquatorialGuinea = 66,
      Eritrea = 67,
      Estonia = 68,
      Ethiopia = 69,
      FalklandIslands = 70,
      FaroeIslands = 71,
      FijiCountry = 72,
      Finland = 73,
      France = 74,
      MetropolitanFrance = 75,
      FrenchGuiana = 76,
      FrenchPolynesia = 77,
      FrenchSouthernTerritories = 78,
      Gabon = 79,
      Gambia = 80,
      Georgia = 81,
      Germany = 82,
      Ghana = 83,
      Gibraltar = 84,
      Greece = 85,
      Greenland = 86,
      Grenada = 87,
      Guadeloupe = 88,
      Guam = 89,
      Guatemala = 90,
      Guinea = 91,
      GuineaBissau = 92,
      Guyana = 93,
      Haiti = 94,
      HeardAndMcDonaldIslands = 95,
      Honduras = 96,
      HongKong = 97,
      Hungary = 98,
      Iceland = 99,
      India = 100,
      Indonesia = 101,
      Iran = 102,
      Iraq = 103,
      Ireland = 104,
      Israel = 105,
      Italy = 106,
      Jamaica = 107,
      Japan = 108,
      Jordan = 109,
      Kazakhstan = 110,
      Kenya = 111,
      Kiribati = 112,
      DemocraticRepublicOfKorea = 113,
      RepublicOfKorea = 114,
      Kuwait = 115,
      Kyrgyzstan = 116,
      Lao = 117,
      Latvia = 118,
      Lebanon = 119,
      Lesotho = 120,
      Liberia = 121,
      LibyanArabJamahiriya = 122,
      Liechtenstein = 123,
      Lithuania = 124,
      Luxembourg = 125,
      Macau = 126,
      Macedonia = 127,
      Madagascar = 128,
      Malawi = 129,
      Malaysia = 130,
      Maldives = 131,
      Mali = 132,
      Malta = 133,
      MarshallIslands = 134,
      Martinique = 135,
      Mauritania = 136,
      Mauritius = 137,
      Mayotte = 138,
      Mexico = 139,
      Micronesia = 140,
      Moldova = 141,
      Monaco = 142,
      Mongolia = 143,
      Montserrat = 144,
      Morocco = 145,
      Mozambique = 146,
      Myanmar = 147,
      Namibia = 148,
      NauruCountry = 149,
      Nepal = 150,
      Netherlands = 151,
      NetherlandsAntilles = 152,
      NewCaledonia = 153,
      NewZealand = 154,
      Nicaragua = 155,
      Niger = 156,
      Nigeria = 157,
      Niue = 158,
      NorfolkIsland = 159,
      NorthernMarianaIslands = 160,
      Norway = 161,
      Oman = 162,
      Pakistan = 163,
      Palau = 164,
      PalestinianTerritory = 165,
      Panama = 166,
      PapuaNewGuinea = 167,
      Paraguay = 168,
      Peru = 169,
      Philippines = 170,
      Pitcairn = 171,
      Poland = 172,
      Portugal = 173,
      PuertoRico = 174,
      Qatar = 175,
      Reunion = 176,
      Romania = 177,
      RussianFederation = 178,
      Rwanda = 179,
      SaintKittsAndNevis = 180,
      StLucia = 181,
      StVincentAndTheGrenadines = 182,
      Samoa = 183,
      SanMarino = 184,
      SaoTomeAndPrincipe = 185,
      SaudiArabia = 186,
      Senegal = 187,
      Seychelles = 188,
      SierraLeone = 189,
      Singapore = 190,
      Slovakia = 191,
      Slovenia = 192,
      SolomonIslands = 193,
      Somalia = 194,
      SouthAfrica = 195,
      SouthGeorgiaAndTheSouthSandwichIslands = 196,
      Spain = 197,
      SriLanka = 198,
      StHelena = 199,
      StPierreAndMiquelon = 200,
      Sudan = 201,
      Suriname = 202,
      SvalbardAndJanMayenIslands = 203,
      Swaziland = 204,
      Sweden = 205,
      Switzerland = 206,
      SyrianArabRepublic = 207,
      Taiwan = 208,
      Tajikistan = 209,
      Tanzania = 210,
      Thailand = 211,
      Togo = 212,
      Tokelau = 213,
      TongaCountry = 214,
      TrinidadAndTobago = 215,
      Tunisia = 216,
      Turkey = 217,
      Turkmenistan = 218,
      TurksAndCaicosIslands = 219,
      Tuvalu = 220,
      Uganda = 221,
      Ukraine = 222,
      UnitedArabEmirates = 223,
      UnitedKingdom = 224,
      UnitedStates = 225,
      UnitedStatesMinorOutlyingIslands = 226,
      Uruguay = 227,
      Uzbekistan = 228,
      Vanuatu = 229,
      VaticanCityState = 230,
      Venezuela = 231,
      VietNam = 232,
      BritishVirginIslands = 233,
      USVirginIslands = 234,
      WallisAndFutunaIslands = 235,
      WesternSahara = 236,
      Yemen = 237,
      Yugoslavia = 238,
      Zambia = 239,
      Zimbabwe = 240,
      SerbiaAndMontenegro = 241,
      LastCountry = 241,
   };
   public: enum FormatType{
      LongFormat = 0,
      ShortFormat = 1,
   };
   public: enum NumberOption{
      OmitGroupSeparator = 1,
      RejectGroupSeparator = 2,
   };
   public: typedef class QFlags < enum QLocale::NumberOption > NumberOptions;
   public: QLocale();
   public: QLocale(class QString const & name);
   public: QLocale(enum QLocale::Language language, enum QLocale::Country country = QLocale::AnyCountry);
   public: QLocale(class QLocale const & other);
   public: class QLocale& operator =(class QLocale const & other);
   public: enum QLocale::Language language() const
   public: enum QLocale::Country country() const
   public: class QString name() const
   public: short int toShort(class QString const & s, bool* ok = 0, int base = 0) const
   public: ushort toUShort(class QString const & s, bool* ok = 0, int base = 0) const
   public: int toInt(class QString const & s, bool* ok = 0, int base = 0) const
   public: uint toUInt(class QString const & s, bool* ok = 0, int base = 0) const
   public: qlonglong toLongLong(class QString const & s, bool* ok = 0, int base = 0) const
   public: qlonglong toULongLong(class QString const & s, bool* ok = 0, int base = 0) const
   public: float toFloat(class QString const & s, bool* ok = 0) const
   public: double toDouble(class QString const & s, bool* ok = 0) const
   public: class QString toString(qlonglong i) const
   public: class QString toString(qulonglong i) const
   public: class QString toString(double i, char f = 103, int prec = 6) const
   public: class QString toString(struct QDate const & date, class QString const & formatStr) const
   public: class QString toString(struct QDate const & date, enum QLocale::FormatType format = QLocale::LongFormat) const
   public: class QString toString(struct QTime const & time, class QString const & formatStr) const
   public: class QString toString(struct QTime const & time, enum QLocale::FormatType format = QLocale::LongFormat) const
   public: class QString dateFormat(enum QLocale::FormatType format = QLocale::LongFormat) const
   public: class QString timeFormat(enum QLocale::FormatType format = QLocale::LongFormat) const
   public: class QChar decimalPoint() const
   public: class QChar groupSeparator() const
   public: class QChar percent() const
   public: class QChar zeroDigit() const
   public: class QChar negativeSign() const
   public: class QChar exponential() const
   public: class QString monthName(int, enum QLocale::FormatType format = QLocale::LongFormat) const
   public: class QString dayName(int, enum QLocale::FormatType format = QLocale::LongFormat) const
   public: static class QString languageToString(enum QLocale::Language language);
   public: static class QString countryToString(enum QLocale::Country country);
   public: static void setDefault(class QLocale const & locale);
   public: static inline class QLocale c();
   public: static class QLocale system();
   public: void setNumberOptions(class QFlags < enum QLocale::NumberOption > options);
   public: class QFlags < enum QLocale::NumberOption > numberOptions() const
   private: void* v;
   private: struct QLocalePrivate const * d() const
   public: inline class QString toString(short int i) const
   public: inline class QString toString(ushort i) const
   public: inline class QString toString(int i) const
   public: inline class QString toString(uint i) const
   public: inline class QString toString(float i, char f = 103, int prec = 6) const
   public: inline bool operator ==(class QLocale const & other) const
   public: inline bool operator !=(class QLocale const & other) const
   friend class QString;
   friend class QByteArray;
   friend struct QLocalePrivate;
};
template < > class QTypeInfo < class QLocale >{
   public: static inline char const * name();
   public: enum /*anonymous*/{
      isComplex = 1,
      isStatic = 0,
      isLarge = 0,
      isPointer = 0,
      isDummy = 0,
   };
};
inline class QFlags < enum QLocale::NumberOption > operator |(enum QLocale::NumberOption f1, class QFlags < enum QLocale::NumberOption > f2);
inline class QFlags < enum QLocale::NumberOption > operator |(enum QLocale::NumberOption f1, enum QLocale::NumberOption f2);
#ifndef QT_NO_DATASTREAM
struct QDataStream& operator <<(struct QDataStream&, class QLocale const &);
struct QDataStream& operator >>(struct QDataStream&, class QLocale&);
#endif
#ifndef QT_NO_SYSTEMLOCALE
class QSystemLocale{
   public: QSystemLocale();
   public: virtual ~QSystemLocale();
   public: enum QueryType{
      LanguageId = 0,
      CountryId = 1,
      DecimalPoint = 2,
      GroupSeparator = 3,
      ZeroDigit = 4,
      NegativeSign = 5,
      DateFormatLong = 6,
      DateFormatShort = 7,
      TimeFormatLong = 8,
      TimeFormatShort = 9,
      DayNameLong = 10,
      DayNameShort = 11,
      MonthNameLong = 12,
      MonthNameShort = 13,
      DateToStringLong = 14,
      DateToStringShort = 15,
      TimeToStringLong = 16,
      TimeToStringShort = 17,
   };
   public: virtual struct QVariant query(enum QSystemLocale::QueryType type, struct QVariant in) const
   public: virtual class QLocale fallbackLocale() const
};
#endif
#endif // QLOCALE_H