1 /* 2 * Copyright 2003-2011, Haiku, Inc. 3 * Distributed under the terms of the MIT Licence. 4 */ 5 #ifndef _COUNTRY_H_ 6 #define _COUNTRY_H_ 7 8 9 #include <List.h> 10 #include <LocaleStrings.h> 11 #include <String.h> 12 #include <SupportDefs.h> 13 14 15 class BBitmap; 16 class BLanguage; 17 class BMessage; 18 19 namespace icu { 20 class DateFormat; 21 class Locale; 22 } 23 24 25 class BCountry { 26 public: 27 BCountry(const char* countryCode = NULL); 28 BCountry(const BCountry& other); 29 BCountry& operator=(const BCountry& other); 30 ~BCountry(); 31 32 status_t GetNativeName(BString& name) const; 33 status_t GetName(BString& name, 34 const BLanguage* displayLanguage = NULL 35 ) const; 36 37 const char* Code() const; 38 // ISO-3166 39 status_t GetIcon(BBitmap* result) const; 40 41 status_t GetAvailableTimeZones( 42 BMessage* timeZones) const; 43 44 class Private; 45 private: 46 friend class Private; 47 48 icu::Locale* fICULocale; 49 }; 50 51 52 #endif /* _COUNTRY_H_ */ 53