// Copyright 2014 The PDFium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com #ifndef XFA_FGAS_CRT_LOCALE_IFACE_H_ #define XFA_FGAS_CRT_LOCALE_IFACE_H_ #include "core/fxcrt/widestring.h" class LocaleIface { public: enum class DateTimeSubcategory { kDefault, kShort, kMedium, kFull, kLong, }; enum class NumSubcategory { kPercent, kCurrency, kDecimal, kInteger, }; virtual ~LocaleIface() = default; virtual WideString GetName() const = 0; virtual WideString GetDecimalSymbol() const = 0; virtual WideString GetGroupingSymbol() const = 0; virtual WideString GetPercentSymbol() const = 0; virtual WideString GetMinusSymbol() const = 0; virtual WideString GetCurrencySymbol() const = 0; virtual WideString GetDateTimeSymbols() const = 0; virtual WideString GetMonthName(int32_t nMonth, bool bAbbr) const = 0; virtual WideString GetDayName(int32_t nWeek, bool bAbbr) const = 0; virtual WideString GetMeridiemName(bool bAM) const = 0; virtual int GetTimeZoneInMinutes() const = 0; virtual WideString GetEraName(bool bAD) const = 0; virtual WideString GetDatePattern(DateTimeSubcategory eType) const = 0; virtual WideString GetTimePattern(DateTimeSubcategory eType) const = 0; virtual WideString GetNumPattern(NumSubcategory eType) const = 0; }; #endif // XFA_FGAS_CRT_LOCALE_IFACE_H_