diff options
Diffstat (limited to 'xfa/fgas/localization/ifx_locale.h')
-rw-r--r-- | xfa/fgas/localization/ifx_locale.h | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/xfa/fgas/localization/ifx_locale.h b/xfa/fgas/localization/ifx_locale.h new file mode 100644 index 0000000000..b9079d0462 --- /dev/null +++ b/xfa/fgas/localization/ifx_locale.h @@ -0,0 +1,76 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// 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_LOCALIZATION_IFX_LOCALE_H_ +#define XFA_FGAS_LOCALIZATION_IFX_LOCALE_H_ + +#include "core/fxcrt/fx_string.h" +#include "xfa/fgas/localization/cfx_datetime.h" + +enum FX_LOCALENUMSYMBOL { + FX_LOCALENUMSYMBOL_Decimal, + FX_LOCALENUMSYMBOL_Grouping, + FX_LOCALENUMSYMBOL_Percent, + FX_LOCALENUMSYMBOL_Minus, + FX_LOCALENUMSYMBOL_Zero, + FX_LOCALENUMSYMBOL_CurrencySymbol, + FX_LOCALENUMSYMBOL_CurrencyName, +}; + +enum FX_LOCALEDATETIMESUBCATEGORY { + FX_LOCALEDATETIMESUBCATEGORY_Default, + FX_LOCALEDATETIMESUBCATEGORY_Short, + FX_LOCALEDATETIMESUBCATEGORY_Medium, + FX_LOCALEDATETIMESUBCATEGORY_Full, + FX_LOCALEDATETIMESUBCATEGORY_Long, +}; + +enum FX_LOCALENUMSUBCATEGORY { + FX_LOCALENUMPATTERN_Percent, + FX_LOCALENUMPATTERN_Currency, + FX_LOCALENUMPATTERN_Decimal, + FX_LOCALENUMPATTERN_Integer, +}; + +enum FX_LOCALECATEGORY { + FX_LOCALECATEGORY_Unknown, + FX_LOCALECATEGORY_Date, + FX_LOCALECATEGORY_Time, + FX_LOCALECATEGORY_DateTime, + FX_LOCALECATEGORY_Num, + FX_LOCALECATEGORY_Text, + FX_LOCALECATEGORY_Zero, + FX_LOCALECATEGORY_Null, +}; + +enum FX_DATETIMETYPE { + FX_DATETIMETYPE_Unknown, + FX_DATETIMETYPE_Date, + FX_DATETIMETYPE_Time, + FX_DATETIMETYPE_DateTime, + FX_DATETIMETYPE_TimeDate, +}; + +class IFX_Locale { + public: + virtual ~IFX_Locale() {} + + virtual CFX_WideString GetName() const = 0; + virtual CFX_WideString GetNumbericSymbol(FX_LOCALENUMSYMBOL eType) const = 0; + virtual CFX_WideString GetDateTimeSymbols() const = 0; + virtual CFX_WideString GetMonthName(int32_t nMonth, bool bAbbr) const = 0; + virtual CFX_WideString GetDayName(int32_t nWeek, bool bAbbr) const = 0; + virtual CFX_WideString GetMeridiemName(bool bAM) const = 0; + virtual FX_TIMEZONE GetTimeZone() const = 0; + virtual CFX_WideString GetEraName(bool bAD) const = 0; + virtual CFX_WideString GetDatePattern( + FX_LOCALEDATETIMESUBCATEGORY eType) const = 0; + virtual CFX_WideString GetTimePattern( + FX_LOCALEDATETIMESUBCATEGORY eType) const = 0; + virtual CFX_WideString GetNumPattern(FX_LOCALENUMSUBCATEGORY eType) const = 0; +}; + +#endif // XFA_FGAS_LOCALIZATION_IFX_LOCALE_H_ |