154dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius/* 254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius***************************************************************************************** 3fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius* Copyright (C) 2014, International Business Machines 454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius* Corporation and others. All Rights Reserved. 554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius***************************************************************************************** 654dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius*/ 754dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius 854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius#ifndef UDISPLAYCONTEXT_H 954dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius#define UDISPLAYCONTEXT_H 1054dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius 1154dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius#include "unicode/utypes.h" 1254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius 1354dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius#if !UCONFIG_NO_FORMATTING 1454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius 1554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius/** 1659d709d503bab6e2b61931737e662dd293b40578ccornelius * \file 1759d709d503bab6e2b61931737e662dd293b40578ccornelius * \brief C API: Display context types (enum values) 1859d709d503bab6e2b61931737e662dd293b40578ccornelius */ 1959d709d503bab6e2b61931737e662dd293b40578ccornelius 2059d709d503bab6e2b61931737e662dd293b40578ccornelius/** 2154dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * Display context types, for getting values of a particular setting. 2254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * Note, the specific numeric values are internal and may change. 23fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 2454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 2554dcd9b6a06071f647dac967e9e267abb9410720Craig Corneliusenum UDisplayContextType { 2654dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 2754dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * Type to retrieve the dialect handling setting, e.g. 2854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * UDISPCTX_STANDARD_NAMES or UDISPCTX_DIALECT_NAMES. 29fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 3054dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 3154dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius UDISPCTX_TYPE_DIALECT_HANDLING = 0, 3254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 3354dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * Type to retrieve the capitalization context setting, e.g. 3454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * UDISPCTX_CAPITALIZATION_NONE, UDISPCTX_CAPITALIZATION_FOR_MIDDLE_OF_SENTENCE, 3554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * UDISPCTX_CAPITALIZATION_FOR_BEGINNING_OF_SENTENCE, etc. 36fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 3754dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 3854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius UDISPCTX_TYPE_CAPITALIZATION = 1 39f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius#ifndef U_HIDE_DRAFT_API 40f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius , 41f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius /** 42f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * Type to retrieve the display length setting, e.g. 43f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * UDISPCTX_LENGTH_FULL, UDISPCTX_LENGTH_SHORT. 44f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * @draft ICU 54 45f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius */ 46f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius UDISPCTX_TYPE_DISPLAY_LENGTH = 2 47f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius#endif /* U_HIDE_DRAFT_API */ 4854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius}; 4954dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius/** 50fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius* @stable ICU 51 5154dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius*/ 5254dcd9b6a06071f647dac967e9e267abb9410720Craig Corneliustypedef enum UDisplayContextType UDisplayContextType; 5354dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius 5454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius/** 5554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * Display context settings. 5654dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * Note, the specific numeric values are internal and may change. 57fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 5854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 5954dcd9b6a06071f647dac967e9e267abb9410720Craig Corneliusenum UDisplayContext { 6054dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 6154dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * ================================ 6254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * DIALECT_HANDLING can be set to one of UDISPCTX_STANDARD_NAMES or 6354dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * UDISPCTX_DIALECT_NAMES. Use UDisplayContextType UDISPCTX_TYPE_DIALECT_HANDLING 6454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * to get the value. 6554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 6654dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 6754dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * A possible setting for DIALECT_HANDLING: 6854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * use standard names when generating a locale name, 6954dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * e.g. en_GB displays as 'English (United Kingdom)'. 70fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 7154dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 7254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius UDISPCTX_STANDARD_NAMES = (UDISPCTX_TYPE_DIALECT_HANDLING<<8) + 0, 7354dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 7454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * A possible setting for DIALECT_HANDLING: 7554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * use dialect names, when generating a locale name, 7654dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * e.g. en_GB displays as 'British English'. 77fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 7854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 7954dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius UDISPCTX_DIALECT_NAMES = (UDISPCTX_TYPE_DIALECT_HANDLING<<8) + 1, 8054dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 8154dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * ================================ 8254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * CAPITALIZATION can be set to one of UDISPCTX_CAPITALIZATION_NONE, 8354dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * UDISPCTX_CAPITALIZATION_FOR_MIDDLE_OF_SENTENCE, 8454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * UDISPCTX_CAPITALIZATION_FOR_BEGINNING_OF_SENTENCE, 8554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * UDISPCTX_CAPITALIZATION_FOR_UI_LIST_OR_MENU, or 8654dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * UDISPCTX_CAPITALIZATION_FOR_STANDALONE. 8754dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * Use UDisplayContextType UDISPCTX_TYPE_CAPITALIZATION to get the value. 8854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 8954dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 9054dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * The capitalization context to be used is unknown (this is the default value). 91fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 9254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 9354dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius UDISPCTX_CAPITALIZATION_NONE = (UDISPCTX_TYPE_CAPITALIZATION<<8) + 0, 9454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 9554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * The capitalization context if a date, date symbol or display name is to be 9654dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * formatted with capitalization appropriate for the middle of a sentence. 97fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 9854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 9954dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius UDISPCTX_CAPITALIZATION_FOR_MIDDLE_OF_SENTENCE = (UDISPCTX_TYPE_CAPITALIZATION<<8) + 1, 10054dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 10154dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * The capitalization context if a date, date symbol or display name is to be 10254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * formatted with capitalization appropriate for the beginning of a sentence. 103fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 10454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 10554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius UDISPCTX_CAPITALIZATION_FOR_BEGINNING_OF_SENTENCE = (UDISPCTX_TYPE_CAPITALIZATION<<8) + 2, 10654dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 10754dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * The capitalization context if a date, date symbol or display name is to be 10854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * formatted with capitalization appropriate for a user-interface list or menu item. 109fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 11054dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 11154dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius UDISPCTX_CAPITALIZATION_FOR_UI_LIST_OR_MENU = (UDISPCTX_TYPE_CAPITALIZATION<<8) + 3, 11254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius /** 11354dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * The capitalization context if a date, date symbol or display name is to be 11454dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * formatted with capitalization appropriate for stand-alone usage such as an 11554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius * isolated name on a calendar page. 116fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius * @stable ICU 51 11754dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius */ 11854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius UDISPCTX_CAPITALIZATION_FOR_STANDALONE = (UDISPCTX_TYPE_CAPITALIZATION<<8) + 4 119f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius#ifndef U_HIDE_DRAFT_API 120f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius , 121f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius /** 122f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * ================================ 123f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * DISPLAY_LENGTH can be set to one of UDISPCTX_LENGTH_FULL or 124f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * UDISPCTX_LENGTH_SHORT. Use UDisplayContextType UDISPCTX_TYPE_DISPLAY_LENGTH 125f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * to get the value. 126f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius */ 127f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius /** 128f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * A possible setting for DISPLAY_LENGTH: 129f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * use full names when generating a locale name, 130f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * e.g. "United States" for US. 131f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * @draft ICU 54 132f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius */ 133f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius UDISPCTX_LENGTH_FULL = (UDISPCTX_TYPE_DISPLAY_LENGTH<<8) + 0, 134f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius /** 135f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * A possible setting for DISPLAY_LENGTH: 136f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * use short names when generating a locale name, 137f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * e.g. "U.S." for US. 138f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius * @draft ICU 54 139f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius */ 140f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius UDISPCTX_LENGTH_SHORT = (UDISPCTX_TYPE_DISPLAY_LENGTH<<8) + 1 141f9878a236aa0d9662d8e40cafdaf2e04cd615835ccornelius#endif /* U_HIDE_DRAFT_API */ 14254dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius}; 14354dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius/** 144fceb39872958b9fa2505e63f8b8699a9e0f882f4ccornelius* @stable ICU 51 14554dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius*/ 14654dcd9b6a06071f647dac967e9e267abb9410720Craig Corneliustypedef enum UDisplayContext UDisplayContext; 14754dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius 14854dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius#endif /* #if !UCONFIG_NO_FORMATTING */ 14954dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius 15054dcd9b6a06071f647dac967e9e267abb9410720Craig Cornelius#endif 151