1 /* 2 ***************************************************************************************** 3 * Copyright (C) 2014, International Business Machines 4 * Corporation and others. All Rights Reserved. 5 ***************************************************************************************** 6 */ 7 8 #ifndef UDISPLAYCONTEXT_H 9 #define UDISPLAYCONTEXT_H 10 11 #include "unicode/utypes.h" 12 13 #if !UCONFIG_NO_FORMATTING 14 15 /** 16 * \file 17 * \brief C API: Display context types (enum values) 18 */ 19 20 /** 21 * Display context types, for getting values of a particular setting. 22 * Note, the specific numeric values are internal and may change. 23 * @stable ICU 51 24 */ 25 enum UDisplayContextType { 26 /** 27 * Type to retrieve the dialect handling setting, e.g. 28 * UDISPCTX_STANDARD_NAMES or UDISPCTX_DIALECT_NAMES. 29 * @stable ICU 51 30 */ 31 UDISPCTX_TYPE_DIALECT_HANDLING = 0, 32 /** 33 * Type to retrieve the capitalization context setting, e.g. 34 * UDISPCTX_CAPITALIZATION_NONE, UDISPCTX_CAPITALIZATION_FOR_MIDDLE_OF_SENTENCE, 35 * UDISPCTX_CAPITALIZATION_FOR_BEGINNING_OF_SENTENCE, etc. 36 * @stable ICU 51 37 */ 38 UDISPCTX_TYPE_CAPITALIZATION = 1 39 }; 40 /** 41 * @stable ICU 51 42 */ 43 typedef enum UDisplayContextType UDisplayContextType; 44 45 /** 46 * Display context settings. 47 * Note, the specific numeric values are internal and may change. 48 * @stable ICU 51 49 */ 50 enum UDisplayContext { 51 /** 52 * ================================ 53 * DIALECT_HANDLING can be set to one of UDISPCTX_STANDARD_NAMES or 54 * UDISPCTX_DIALECT_NAMES. Use UDisplayContextType UDISPCTX_TYPE_DIALECT_HANDLING 55 * to get the value. 56 */ 57 /** 58 * A possible setting for DIALECT_HANDLING: 59 * use standard names when generating a locale name, 60 * e.g. en_GB displays as 'English (United Kingdom)'. 61 * @stable ICU 51 62 */ 63 UDISPCTX_STANDARD_NAMES = (UDISPCTX_TYPE_DIALECT_HANDLING<<8) + 0, 64 /** 65 * A possible setting for DIALECT_HANDLING: 66 * use dialect names, when generating a locale name, 67 * e.g. en_GB displays as 'British English'. 68 * @stable ICU 51 69 */ 70 UDISPCTX_DIALECT_NAMES = (UDISPCTX_TYPE_DIALECT_HANDLING<<8) + 1, 71 /** 72 * ================================ 73 * CAPITALIZATION can be set to one of UDISPCTX_CAPITALIZATION_NONE, 74 * UDISPCTX_CAPITALIZATION_FOR_MIDDLE_OF_SENTENCE, 75 * UDISPCTX_CAPITALIZATION_FOR_BEGINNING_OF_SENTENCE, 76 * UDISPCTX_CAPITALIZATION_FOR_UI_LIST_OR_MENU, or 77 * UDISPCTX_CAPITALIZATION_FOR_STANDALONE. 78 * Use UDisplayContextType UDISPCTX_TYPE_CAPITALIZATION to get the value. 79 */ 80 /** 81 * The capitalization context to be used is unknown (this is the default value). 82 * @stable ICU 51 83 */ 84 UDISPCTX_CAPITALIZATION_NONE = (UDISPCTX_TYPE_CAPITALIZATION<<8) + 0, 85 /** 86 * The capitalization context if a date, date symbol or display name is to be 87 * formatted with capitalization appropriate for the middle of a sentence. 88 * @stable ICU 51 89 */ 90 UDISPCTX_CAPITALIZATION_FOR_MIDDLE_OF_SENTENCE = (UDISPCTX_TYPE_CAPITALIZATION<<8) + 1, 91 /** 92 * The capitalization context if a date, date symbol or display name is to be 93 * formatted with capitalization appropriate for the beginning of a sentence. 94 * @stable ICU 51 95 */ 96 UDISPCTX_CAPITALIZATION_FOR_BEGINNING_OF_SENTENCE = (UDISPCTX_TYPE_CAPITALIZATION<<8) + 2, 97 /** 98 * The capitalization context if a date, date symbol or display name is to be 99 * formatted with capitalization appropriate for a user-interface list or menu item. 100 * @stable ICU 51 101 */ 102 UDISPCTX_CAPITALIZATION_FOR_UI_LIST_OR_MENU = (UDISPCTX_TYPE_CAPITALIZATION<<8) + 3, 103 /** 104 * The capitalization context if a date, date symbol or display name is to be 105 * formatted with capitalization appropriate for stand-alone usage such as an 106 * isolated name on a calendar page. 107 * @stable ICU 51 108 */ 109 UDISPCTX_CAPITALIZATION_FOR_STANDALONE = (UDISPCTX_TYPE_CAPITALIZATION<<8) + 4 110 }; 111 /** 112 * @stable ICU 51 113 */ 114 typedef enum UDisplayContext UDisplayContext; 115 116 #endif /* #if !UCONFIG_NO_FORMATTING */ 117 118 #endif 119