xref: /haiku/headers/os/locale/Country.h (revision 0975f16f7ca94b654cb6a55b3316daae89843abb)
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 #ifndef U_ICU_NAMESPACE
20   #define U_ICU_NAMESPACE icu
21 #endif
22 namespace U_ICU_NAMESPACE {
23 	class DateFormat;
24 	class Locale;
25 }
26 
27 
28 class BCountry {
29 public:
30 								BCountry(const char* countryCode = NULL);
31 								BCountry(const BCountry& other);
32 								BCountry& operator=(const BCountry& other);
33 								~BCountry();
34 
35 			status_t			GetNativeName(BString& name) const;
36 			status_t			GetName(BString& name,
37 									const BLanguage* displayLanguage = NULL
38 									) const;
39 
40 			const char*			Code() const;
41 									// ISO-3166
42 			status_t			GetIcon(BBitmap* result) const;
43 
44 			status_t			GetAvailableTimeZones(
45 									BMessage* timeZones) const;
46 
47 			class Private;
48 private:
49 	friend	class Private;
50 
51 			U_ICU_NAMESPACE::Locale*		fICULocale;
52 };
53 
54 
55 #endif	/* _COUNTRY_H_ */
56