Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(60)

Side by Side Diff: public/i18n/unicode/uldnames.h

Issue 19417002: Move ICU header part 2 (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/third_party/icu46/
Patch Set: Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « public/i18n/unicode/udatpg.h ('k') | public/i18n/unicode/ulocdata.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 /*
2 *******************************************************************************
3 * Copyright (C) 2010, International Business Machines Corporation and *
4 * others. All Rights Reserved. *
5 *******************************************************************************
6 */
7
8 #ifndef __ULDNAMES_H__
9 #define __ULDNAMES_H__
10
11 /**
12 * \file
13 * \brief C++ API: Provides display names of Locale ids and their components.
14 */
15
16 #include "unicode/utypes.h"
17 #include "unicode/localpointer.h"
18 #include "unicode/uscript.h"
19
20 /**
21 * Enum used in LocaleDisplayNames::createInstance.
22 * @stable ICU 4.4
23 */
24 typedef enum {
25 /**
26 * Use standard names when generating a locale name,
27 * e.g. en_GB displays as 'English (United Kingdom)'.
28 * @stable ICU 4.4
29 */
30 ULDN_STANDARD_NAMES = 0,
31 /**
32 * Use dialect names, when generating a locale name,
33 * e.g. en_GB displays as 'British English'.
34 * @stable ICU 4.4
35 */
36 ULDN_DIALECT_NAMES
37 } UDialectHandling;
38
39 /**
40 * Opaque C service object type for the locale display names API
41 * @stable ICU 4.4
42 */
43 struct ULocaleDisplayNames;
44
45 /**
46 * C typedef for struct ULocaleDisplayNames.
47 * @stable ICU 4.4
48 */
49 typedef struct ULocaleDisplayNames ULocaleDisplayNames;
50
51 #if !UCONFIG_NO_FORMATTING
52
53 /**
54 * Returns an instance of LocaleDisplayNames that returns names
55 * formatted for the provided locale, using the provided
56 * dialectHandling. The usual value for dialectHandling is
57 * ULOC_STANDARD_NAMES.
58 *
59 * @param locale the display locale
60 * @param dialectHandling how to select names for locales
61 * @return a ULocaleDisplayNames instance
62 * @param pErrorCode the status code
63 * @stable ICU 4.4
64 */
65 U_STABLE ULocaleDisplayNames * U_EXPORT2
66 uldn_open(const char * locale,
67 UDialectHandling dialectHandling,
68 UErrorCode *pErrorCode);
69
70 /**
71 * Closes a ULocaleDisplayNames instance obtained from uldn_open().
72 * @param ldn the ULocaleDisplayNames instance to be closed
73 * @stable ICU 4.4
74 */
75 U_STABLE void U_EXPORT2
76 uldn_close(ULocaleDisplayNames *ldn);
77
78 #if U_SHOW_CPLUSPLUS_API
79
80 U_NAMESPACE_BEGIN
81
82 /**
83 * \class LocalULocaleDisplayNamesPointer
84 * "Smart pointer" class, closes a ULocaleDisplayNames via uldn_close().
85 * For most methods see the LocalPointerBase base class.
86 *
87 * @see LocalPointerBase
88 * @see LocalPointer
89 * @stable ICU 4.4
90 */
91 U_DEFINE_LOCAL_OPEN_POINTER(LocalULocaleDisplayNamesPointer, ULocaleDisplayNames , uldn_close);
92
93 U_NAMESPACE_END
94
95 #endif
96
97 /* getters for state */
98
99 /**
100 * Returns the locale used to determine the display names. This is
101 * not necessarily the same locale passed to {@link #uldn_open}.
102 * @param ldn the LocaleDisplayNames instance
103 * @return the display locale
104 * @stable ICU 4.4
105 */
106 U_STABLE const char * U_EXPORT2
107 uldn_getLocale(const ULocaleDisplayNames *ldn);
108
109 /**
110 * Returns the dialect handling used in the display names.
111 * @param ldn the LocaleDisplayNames instance
112 * @return the dialect handling enum
113 * @stable ICU 4.4
114 */
115 U_STABLE UDialectHandling U_EXPORT2
116 uldn_getDialectHandling(const ULocaleDisplayNames *ldn);
117
118 /* names for entire locales */
119
120 /**
121 * Returns the display name of the provided locale.
122 * @param ldn the LocaleDisplayNames instance
123 * @param locale the locale whose display name to return
124 * @param result receives the display name
125 * @param maxResultSize the size of the result buffer
126 * @param pErrorCode the status code
127 * @return the actual buffer size needed for the display name. If it's
128 * greater than maxResultSize, the returned name will be truncated.
129 * @stable ICU 4.4
130 */
131 U_STABLE int32_t U_EXPORT2
132 uldn_localeDisplayName(const ULocaleDisplayNames *ldn,
133 const char *locale,
134 UChar *result,
135 int32_t maxResultSize,
136 UErrorCode *pErrorCode);
137
138 /* names for components of a locale */
139
140 /**
141 * Returns the display name of the provided language code.
142 * @param ldn the LocaleDisplayNames instance
143 * @param lang the language code whose display name to return
144 * @param result receives the display name
145 * @param maxResultSize the size of the result buffer
146 * @param pErrorCode the status code
147 * @return the actual buffer size needed for the display name. If it's
148 * greater than maxResultSize, the returned name will be truncated.
149 * @stable ICU 4.4
150 */
151 U_STABLE int32_t U_EXPORT2
152 uldn_languageDisplayName(const ULocaleDisplayNames *ldn,
153 const char *lang,
154 UChar *result,
155 int32_t maxResultSize,
156 UErrorCode *pErrorCode);
157
158 /**
159 * Returns the display name of the provided script.
160 * @param ldn the LocaleDisplayNames instance
161 * @param script the script whose display name to return
162 * @param result receives the display name
163 * @param maxResultSize the size of the result buffer
164 * @param pErrorCode the status code
165 * @return the actual buffer size needed for the display name. If it's
166 * greater than maxResultSize, the returned name will be truncated.
167 * @stable ICU 4.4
168 */
169 U_STABLE int32_t U_EXPORT2
170 uldn_scriptDisplayName(const ULocaleDisplayNames *ldn,
171 const char *script,
172 UChar *result,
173 int32_t maxResultSize,
174 UErrorCode *pErrorCode);
175
176 /**
177 * Returns the display name of the provided script code.
178 * @param ldn the LocaleDisplayNames instance
179 * @param scriptCode the script code whose display name to return
180 * @param result receives the display name
181 * @param maxResultSize the size of the result buffer
182 * @param pErrorCode the status code
183 * @return the actual buffer size needed for the display name. If it's
184 * greater than maxResultSize, the returned name will be truncated.
185 * @stable ICU 4.4
186 */
187 U_STABLE int32_t U_EXPORT2
188 uldn_scriptCodeDisplayName(const ULocaleDisplayNames *ldn,
189 UScriptCode scriptCode,
190 UChar *result,
191 int32_t maxResultSize,
192 UErrorCode *pErrorCode);
193
194 /**
195 * Returns the display name of the provided region code.
196 * @param ldn the LocaleDisplayNames instance
197 * @param region the region code whose display name to return
198 * @param result receives the display name
199 * @param maxResultSize the size of the result buffer
200 * @param pErrorCode the status code
201 * @return the actual buffer size needed for the display name. If it's
202 * greater than maxResultSize, the returned name will be truncated.
203 * @stable ICU 4.4
204 */
205 U_STABLE int32_t U_EXPORT2
206 uldn_regionDisplayName(const ULocaleDisplayNames *ldn,
207 const char *region,
208 UChar *result,
209 int32_t maxResultSize,
210 UErrorCode *pErrorCode);
211
212 /**
213 * Returns the display name of the provided variant
214 * @param ldn the LocaleDisplayNames instance
215 * @param variant the variant whose display name to return
216 * @param result receives the display name
217 * @param maxResultSize the size of the result buffer
218 * @param pErrorCode the status code
219 * @return the actual buffer size needed for the display name. If it's
220 * greater than maxResultSize, the returned name will be truncated.
221 * @stable ICU 4.4
222 */
223 U_STABLE int32_t U_EXPORT2
224 uldn_variantDisplayName(const ULocaleDisplayNames *ldn,
225 const char *variant,
226 UChar *result,
227 int32_t maxResultSize,
228 UErrorCode *pErrorCode);
229
230 /**
231 * Returns the display name of the provided locale key
232 * @param ldn the LocaleDisplayNames instance
233 * @param key the locale key whose display name to return
234 * @param result receives the display name
235 * @param maxResultSize the size of the result buffer
236 * @param pErrorCode the status code
237 * @return the actual buffer size needed for the display name. If it's
238 * greater than maxResultSize, the returned name will be truncated.
239 * @stable ICU 4.4
240 */
241 U_STABLE int32_t U_EXPORT2
242 uldn_keyDisplayName(const ULocaleDisplayNames *ldn,
243 const char *key,
244 UChar *result,
245 int32_t maxResultSize,
246 UErrorCode *pErrorCode);
247
248 /**
249 * Returns the display name of the provided value (used with the provided key).
250 * @param ldn the LocaleDisplayNames instance
251 * @param key the locale key
252 * @param value the locale key's value
253 * @param result receives the display name
254 * @param maxResultSize the size of the result buffer
255 * @param pErrorCode the status code
256 * @return the actual buffer size needed for the display name. If it's
257 * greater than maxResultSize, the returned name will be truncated.
258 * @stable ICU 4.4
259 */
260 U_STABLE int32_t U_EXPORT2
261 uldn_keyValueDisplayName(const ULocaleDisplayNames *ldn,
262 const char *key,
263 const char *value,
264 UChar *result,
265 int32_t maxResultSize,
266 UErrorCode *pErrorCode);
267
268
269 #endif /* !UCONFIG_NO_FORMATTING */
270 #endif /* __ULDNAMES_H__ */
OLDNEW
« no previous file with comments | « public/i18n/unicode/udatpg.h ('k') | public/i18n/unicode/ulocdata.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698