150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/* 250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho******************************************************************************* 350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho* Copyright (C) 2010, International Business Machines Corporation and * 450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho* others. All Rights Reserved. * 550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho******************************************************************************* 650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho*/ 750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#ifndef __ULDNAMES_H__ 950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#define __ULDNAMES_H__ 1050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 1150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 1250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * \file 1350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * \brief C++ API: Provides display names of Locale ids and their components. 1450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 1550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 1650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#include "unicode/utypes.h" 1750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#include "unicode/localpointer.h" 1850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#include "unicode/uscript.h" 1950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 2050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 2150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Enum used in LocaleDisplayNames::createInstance. 2250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 2350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 2450294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehotypedef enum { 2550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho /** 2650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Use standard names when generating a locale name, 2750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * e.g. en_GB displays as 'English (United Kingdom)'. 2850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 2950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 3050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho ULDN_STANDARD_NAMES = 0, 3150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho /** 3250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Use dialect names, when generating a locale name, 3350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * e.g. en_GB displays as 'British English'. 3450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 3550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 3650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho ULDN_DIALECT_NAMES 3750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho} UDialectHandling; 3850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 3950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 4050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Opaque C service object type for the locale display names API 4150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 4250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 4350294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehostruct ULocaleDisplayNames; 4450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 4550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 4650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * C typedef for struct ULocaleDisplayNames. 4750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 4850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 4950294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehotypedef struct ULocaleDisplayNames ULocaleDisplayNames; 5050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 5150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#if !UCONFIG_NO_FORMATTING 5250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 5350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 5450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns an instance of LocaleDisplayNames that returns names 5550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * formatted for the provided locale, using the provided 5650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * dialectHandling. The usual value for dialectHandling is 5750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * ULOC_STANDARD_NAMES. 5850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * 5950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param locale the display locale 6050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param dialectHandling how to select names for locales 6150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return a ULocaleDisplayNames instance 6250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param pErrorCode the status code 6350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 6450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 6550294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT ULocaleDisplayNames * U_EXPORT2 6650294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_open(const char * locale, 6750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UDialectHandling dialectHandling, 6850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UErrorCode *pErrorCode); 6950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 7050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 7150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Closes a ULocaleDisplayNames instance obtained from uldn_open(). 7250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the ULocaleDisplayNames instance to be closed 7350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 7450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 7550294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT void U_EXPORT2 7650294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_close(ULocaleDisplayNames *ldn); 7750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 7850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#if U_SHOW_CPLUSPLUS_API 7950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 8050294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_NAMESPACE_BEGIN 8150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 8250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 8350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * \class LocalULocaleDisplayNamesPointer 8450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * "Smart pointer" class, closes a ULocaleDisplayNames via uldn_close(). 8550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * For most methods see the LocalPointerBase base class. 8650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * 8750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @see LocalPointerBase 8850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @see LocalPointer 8950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 9050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 9150294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DEFINE_LOCAL_OPEN_POINTER(LocalULocaleDisplayNamesPointer, ULocaleDisplayNames, uldn_close); 9250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 9350294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_NAMESPACE_END 9450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 9550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#endif 9650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 9750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/* getters for state */ 9850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 9950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 10050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns the locale used to determine the display names. This is 10150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * not necessarily the same locale passed to {@link #uldn_open}. 10250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the LocaleDisplayNames instance 10350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return the display locale 10450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 10550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 10650294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT const char * U_EXPORT2 10750294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_getLocale(const ULocaleDisplayNames *ldn); 10850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 10950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 11050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns the dialect handling used in the display names. 11150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the LocaleDisplayNames instance 11250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return the dialect handling enum 11350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 11450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 11550294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT UDialectHandling U_EXPORT2 11650294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_getDialectHandling(const ULocaleDisplayNames *ldn); 11750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 11850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/* names for entire locales */ 11950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 12050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 12150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns the display name of the provided locale. 12250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the LocaleDisplayNames instance 12350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param locale the locale whose display name to return 12450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param result receives the display name 12550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param maxResultSize the size of the result buffer 12650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param pErrorCode the status code 12750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return the actual buffer size needed for the display name. If it's 12850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * greater than maxResultSize, the returned name will be truncated. 12950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 13050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 13150294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT int32_t U_EXPORT2 13250294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_localeDisplayName(const ULocaleDisplayNames *ldn, 13350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho const char *locale, 13450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UChar *result, 13550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho int32_t maxResultSize, 13650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UErrorCode *pErrorCode); 13750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 13850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/* names for components of a locale */ 13950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 14050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 14150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns the display name of the provided language code. 14250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the LocaleDisplayNames instance 14350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param lang the language code whose display name to return 14450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param result receives the display name 14550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param maxResultSize the size of the result buffer 14650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param pErrorCode the status code 14750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return the actual buffer size needed for the display name. If it's 14850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * greater than maxResultSize, the returned name will be truncated. 14950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 15050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 15150294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT int32_t U_EXPORT2 15250294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_languageDisplayName(const ULocaleDisplayNames *ldn, 15350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho const char *lang, 15450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UChar *result, 15550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho int32_t maxResultSize, 15650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UErrorCode *pErrorCode); 15750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 15850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 15950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns the display name of the provided script. 16050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the LocaleDisplayNames instance 16150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param script the script whose display name to return 16250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param result receives the display name 16350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param maxResultSize the size of the result buffer 16450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param pErrorCode the status code 16550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return the actual buffer size needed for the display name. If it's 16650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * greater than maxResultSize, the returned name will be truncated. 16750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 16850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 16950294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT int32_t U_EXPORT2 17050294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_scriptDisplayName(const ULocaleDisplayNames *ldn, 17150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho const char *script, 17250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UChar *result, 17350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho int32_t maxResultSize, 17450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UErrorCode *pErrorCode); 17550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 17650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 17750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns the display name of the provided script code. 17850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the LocaleDisplayNames instance 17950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param scriptCode the script code whose display name to return 18050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param result receives the display name 18150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param maxResultSize the size of the result buffer 18250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param pErrorCode the status code 18350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return the actual buffer size needed for the display name. If it's 18450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * greater than maxResultSize, the returned name will be truncated. 18550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 18650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 18750294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT int32_t U_EXPORT2 18850294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_scriptCodeDisplayName(const ULocaleDisplayNames *ldn, 18950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UScriptCode scriptCode, 19050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UChar *result, 19150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho int32_t maxResultSize, 19250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UErrorCode *pErrorCode); 19350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 19450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 19550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns the display name of the provided region code. 19650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the LocaleDisplayNames instance 19750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param region the region code whose display name to return 19850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param result receives the display name 19950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param maxResultSize the size of the result buffer 20050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param pErrorCode the status code 20150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return the actual buffer size needed for the display name. If it's 20250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * greater than maxResultSize, the returned name will be truncated. 20350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 20450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 20550294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT int32_t U_EXPORT2 20650294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_regionDisplayName(const ULocaleDisplayNames *ldn, 20750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho const char *region, 20850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UChar *result, 20950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho int32_t maxResultSize, 21050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UErrorCode *pErrorCode); 21150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 21250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 21350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns the display name of the provided variant 21450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the LocaleDisplayNames instance 21550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param variant the variant whose display name to return 21650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param result receives the display name 21750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param maxResultSize the size of the result buffer 21850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param pErrorCode the status code 21950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return the actual buffer size needed for the display name. If it's 22050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * greater than maxResultSize, the returned name will be truncated. 22150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 22250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 22350294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT int32_t U_EXPORT2 22450294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_variantDisplayName(const ULocaleDisplayNames *ldn, 22550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho const char *variant, 22650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UChar *result, 22750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho int32_t maxResultSize, 22850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UErrorCode *pErrorCode); 22950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 23050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 23150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns the display name of the provided locale key 23250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the LocaleDisplayNames instance 23350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param key the locale key whose display name to return 23450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param result receives the display name 23550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param maxResultSize the size of the result buffer 23650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param pErrorCode the status code 23750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return the actual buffer size needed for the display name. If it's 23850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * greater than maxResultSize, the returned name will be truncated. 23950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 24050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 24150294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT int32_t U_EXPORT2 24250294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_keyDisplayName(const ULocaleDisplayNames *ldn, 24350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho const char *key, 24450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UChar *result, 24550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho int32_t maxResultSize, 24650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UErrorCode *pErrorCode); 24750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 24850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho/** 24950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Returns the display name of the provided value (used with the provided key). 25050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param ldn the LocaleDisplayNames instance 25150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param key the locale key 25250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param value the locale key's value 25350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param result receives the display name 25450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param maxResultSize the size of the result buffer 25550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @param pErrorCode the status code 25650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @return the actual buffer size needed for the display name. If it's 25750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * greater than maxResultSize, the returned name will be truncated. 25850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * @draft ICU 4.4 25950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho */ 26050294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehoU_DRAFT int32_t U_EXPORT2 26150294ead5e5d23f5bbfed76e00e6b510bd41eee1clairehouldn_keyValueDisplayName(const ULocaleDisplayNames *ldn, 26250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho const char *key, 26350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho const char *value, 26450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UChar *result, 26550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho int32_t maxResultSize, 26650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UErrorCode *pErrorCode); 26750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 26850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 26950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#endif /* !UCONFIG_NO_FORMATTING */ 27050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#endif /* __ULDNAMES_H__ */ 271