Locale Settings Overview

Provides a number of APIs for configuring standard location specific data.

Purpose

Provides access to locale-sensitive information, such as date and time formatting, currency symbols and units of measurement.

Architectural relationships

All applications should use this API for getting the format for any locale-sensitive information.

The API also provides functions to configure the locale settings. These are normally only used by system applications.

Description

The API has seven key concepts: locale, calendar settings, country code, currency format, date and time formatting, numeric values, and time zone information.

Locale

A single class provides a central point for getting and setting locale information. Most other classes and types in this API are used as parameters in its functions. It is provided by TLocale.

Calendar settings

The first day of the week and working days are recorded for the locale. Days are enumerated in TDay; day names are stored in TDayName and TDayNameAbb.

Country code

The country code (international dialling prefix) is stored in the locale as an integer.

Currency format

The currency symbol is stored in TCurrencySymbol. Aspects of formatting are handled through TLocale.

Date and time formatting

Date and time formatting, for instance, separator characters, ordering of date components, and positioning of am/pm text, are set in the locale. Options are set through classes TDateSuffix, TAmPmName, and enumerations, TClockFormat, TDateFormat and TTimeFormat.

Numeric values

The locale characters for the thousands separator, and decimal point separator are stored.

Time zone information

A locale’s time zone is defined as an offset from UTC, with daylight saving options handled by TDaylightSavingZone.

Units of distance

Locale options for imperial or metric units are handled by the enumeration TUnitsFormat.