Index: xfa/src/fgas/include/fx_locale.h |
diff --git a/xfa/src/fgas/include/fx_locale.h b/xfa/src/fgas/include/fx_locale.h |
index 17a2f91d0a5cd2916ec142766a0e1d254d1a09d3..7ead311c53c3ae152cbc2ffd17574f6d84cbcbbc 100644 |
--- a/xfa/src/fgas/include/fx_locale.h |
+++ b/xfa/src/fgas/include/fx_locale.h |
@@ -1,203 +1,203 @@ |
-// 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 _FX_LOCALE_H_ |
-#define _FX_LOCALE_H_ |
-class CFX_Unitime; |
-class IFX_Locale; |
-class IFX_FormatString; |
-class IFX_LocaleMgr; |
-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: |
- static IFX_Locale* Create(CXML_Element* pLocaleData); |
- |
- virtual ~IFX_Locale() {} |
- virtual void Release() = 0; |
- |
- virtual CFX_WideString GetName() = 0; |
- |
- virtual void GetNumbericSymbol(FX_LOCALENUMSYMBOL eType, |
- CFX_WideString& wsNumSymbol) const = 0; |
- virtual void GetDateTimeSymbols(CFX_WideString& wsDtSymbol) const = 0; |
- virtual void GetMonthName(int32_t nMonth, |
- CFX_WideString& wsMonthName, |
- FX_BOOL bAbbr = TRUE) const = 0; |
- virtual void GetDayName(int32_t nWeek, |
- CFX_WideString& wsDayName, |
- FX_BOOL bAbbr = TRUE) const = 0; |
- virtual void GetMeridiemName(CFX_WideString& wsMeridiemName, |
- FX_BOOL bAM = TRUE) const = 0; |
- virtual void GetTimeZone(FX_TIMEZONE& tz) const = 0; |
- virtual void GetEraName(CFX_WideString& wsEraName, |
- FX_BOOL bAD = TRUE) const = 0; |
- virtual void GetDatePattern(FX_LOCALEDATETIMESUBCATEGORY eType, |
- CFX_WideString& wsPattern) const = 0; |
- virtual void GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY eType, |
- CFX_WideString& wsPattern) const = 0; |
- virtual void GetNumPattern(FX_LOCALENUMSUBCATEGORY eType, |
- CFX_WideString& wsPattern) const = 0; |
-}; |
- |
-class IFX_LocaleMgr { |
- public: |
- virtual ~IFX_LocaleMgr() {} |
- virtual void Release() = 0; |
- virtual FX_WORD GetDefLocaleID() = 0; |
- virtual IFX_Locale* GetDefLocale() = 0; |
- virtual IFX_Locale* GetLocale(FX_WORD lcid) = 0; |
- virtual IFX_Locale* GetLocaleByName(const CFX_WideStringC& wsLocaleName) = 0; |
-}; |
-IFX_LocaleMgr* FX_LocaleMgr_Create(const FX_WCHAR* pszLocalPath, |
- FX_WORD wDefaultLCID); |
-void FX_ParseNumString(const CFX_WideString& wsNum, CFX_WideString& wsResult); |
-FX_BOOL FX_DateFromCanonical(const CFX_WideString& wsDate, |
- CFX_Unitime& datetime); |
-FX_BOOL FX_TimeFromCanonical(const CFX_WideStringC& wsTime, |
- CFX_Unitime& datetime, |
- IFX_Locale* pLocale); |
-class IFX_FormatString { |
- public: |
- static IFX_FormatString* Create(IFX_LocaleMgr* pLocaleMgr, FX_BOOL bUseLCID); |
- |
- virtual ~IFX_FormatString() {} |
- virtual void Release() = 0; |
- virtual void SplitFormatString(const CFX_WideString& wsFormatString, |
- CFX_WideStringArray& wsPatterns) = 0; |
- virtual FX_LOCALECATEGORY GetCategory(const CFX_WideString& wsPattern) = 0; |
- virtual FX_WORD GetLCID(const CFX_WideString& wsPattern) = 0; |
- virtual CFX_WideString GetLocaleName(const CFX_WideString& wsPattern) = 0; |
- virtual FX_BOOL ParseText(const CFX_WideString& wsSrcText, |
- const CFX_WideString& wsPattern, |
- CFX_WideString& wsValue) = 0; |
- virtual FX_BOOL ParseNum(const CFX_WideString& wsSrcNum, |
- const CFX_WideString& wsPattern, |
- FX_FLOAT& fValue) = 0; |
- virtual FX_BOOL ParseNum(const CFX_WideString& wsSrcNum, |
- const CFX_WideString& wsPattern, |
- CFX_WideString& wsValue) = 0; |
- virtual FX_BOOL ParseDateTime(const CFX_WideString& wsSrcDateTime, |
- const CFX_WideString& wsPattern, |
- FX_DATETIMETYPE eDateTimeType, |
- CFX_Unitime& dtValue) = 0; |
- virtual FX_BOOL ParseZero(const CFX_WideString& wsSrcText, |
- const CFX_WideString& wsPattern) = 0; |
- virtual FX_BOOL ParseNull(const CFX_WideString& wsSrcText, |
- const CFX_WideString& wsPattern) = 0; |
- virtual FX_BOOL FormatText(const CFX_WideString& wsSrcText, |
- const CFX_WideString& wsPattern, |
- CFX_WideString& wsOutput) = 0; |
- virtual FX_BOOL FormatNum(const CFX_WideString& wsSrcNum, |
- const CFX_WideString& wsPattern, |
- CFX_WideString& wsOutput) = 0; |
- virtual FX_BOOL FormatNum(FX_FLOAT fNum, |
- const CFX_WideString& wsPattern, |
- CFX_WideString& wsOutput) = 0; |
- virtual FX_BOOL FormatDateTime(const CFX_WideString& wsSrcDateTime, |
- const CFX_WideString& wsPattern, |
- CFX_WideString& wsOutput) = 0; |
- virtual FX_BOOL FormatDateTime(const CFX_WideString& wsSrcDateTime, |
- const CFX_WideString& wsPattern, |
- CFX_WideString& wsOutput, |
- FX_DATETIMETYPE eDateTimeType) = 0; |
- virtual FX_BOOL FormatDateTime(const CFX_Unitime& dt, |
- const CFX_WideString& wsPattern, |
- CFX_WideString& wsOutput) = 0; |
- virtual FX_BOOL FormatZero(const CFX_WideString& wsPattern, |
- CFX_WideString& wsOutput) = 0; |
- virtual FX_BOOL FormatNull(const CFX_WideString& wsPattern, |
- CFX_WideString& wsOutput) = 0; |
-}; |
-class CFX_Decimal { |
- public: |
- CFX_Decimal(); |
- CFX_Decimal(uint32_t val); |
- CFX_Decimal(uint64_t val); |
- CFX_Decimal(int32_t val); |
- CFX_Decimal(int64_t val); |
- CFX_Decimal(FX_FLOAT val, uint8_t scale = 3); |
- CFX_Decimal(const CFX_WideStringC& str); |
- CFX_Decimal(const CFX_ByteStringC& str); |
- operator CFX_WideString() const; |
- operator double() const; |
- FX_BOOL operator==(const CFX_Decimal& val) const; |
- FX_BOOL operator<=(const CFX_Decimal& val) const; |
- FX_BOOL operator>=(const CFX_Decimal& val) const; |
- FX_BOOL operator!=(const CFX_Decimal& val) const; |
- FX_BOOL operator<(const CFX_Decimal& val) const; |
- FX_BOOL operator>(const CFX_Decimal& val) const; |
- CFX_Decimal operator+(const CFX_Decimal& val) const; |
- CFX_Decimal operator-(const CFX_Decimal& val) const; |
- CFX_Decimal operator*(const CFX_Decimal& val) const; |
- CFX_Decimal operator/(const CFX_Decimal& val) const; |
- CFX_Decimal operator%(const CFX_Decimal& val) const; |
- void SetScale(uint8_t newScale); |
- uint8_t GetScale(); |
- void SetAbs(); |
- void SetNegate(); |
- void SetFloor(); |
- void SetCeiling(); |
- void SetTruncate(); |
- |
- protected: |
- CFX_Decimal(uint32_t hi, |
- uint32_t mid, |
- uint32_t lo, |
- FX_BOOL neg, |
- uint8_t scale); |
- inline FX_BOOL IsNotZero() const { return m_uHi || m_uMid || m_uLo; } |
- inline int8_t Compare(const CFX_Decimal& val) const; |
- inline void Swap(CFX_Decimal& val); |
- inline void FloorOrCeil(FX_BOOL bFloor); |
- CFX_Decimal AddOrMinus(const CFX_Decimal& val, FX_BOOL isAdding) const; |
- CFX_Decimal Multiply(const CFX_Decimal& val) const; |
- CFX_Decimal Divide(const CFX_Decimal& val) const; |
- CFX_Decimal Modulus(const CFX_Decimal& val) const; |
- uint32_t m_uFlags; |
- uint32_t m_uHi; |
- uint32_t m_uLo; |
- uint32_t m_uMid; |
-}; |
-#endif |
+// 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 _FX_LOCALE_H_ |
+#define _FX_LOCALE_H_ |
+class CFX_Unitime; |
+class IFX_Locale; |
+class IFX_FormatString; |
+class IFX_LocaleMgr; |
+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: |
+ static IFX_Locale* Create(CXML_Element* pLocaleData); |
+ |
+ virtual ~IFX_Locale() {} |
+ virtual void Release() = 0; |
+ |
+ virtual CFX_WideString GetName() = 0; |
+ |
+ virtual void GetNumbericSymbol(FX_LOCALENUMSYMBOL eType, |
+ CFX_WideString& wsNumSymbol) const = 0; |
+ virtual void GetDateTimeSymbols(CFX_WideString& wsDtSymbol) const = 0; |
+ virtual void GetMonthName(int32_t nMonth, |
+ CFX_WideString& wsMonthName, |
+ FX_BOOL bAbbr = TRUE) const = 0; |
+ virtual void GetDayName(int32_t nWeek, |
+ CFX_WideString& wsDayName, |
+ FX_BOOL bAbbr = TRUE) const = 0; |
+ virtual void GetMeridiemName(CFX_WideString& wsMeridiemName, |
+ FX_BOOL bAM = TRUE) const = 0; |
+ virtual void GetTimeZone(FX_TIMEZONE& tz) const = 0; |
+ virtual void GetEraName(CFX_WideString& wsEraName, |
+ FX_BOOL bAD = TRUE) const = 0; |
+ virtual void GetDatePattern(FX_LOCALEDATETIMESUBCATEGORY eType, |
+ CFX_WideString& wsPattern) const = 0; |
+ virtual void GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY eType, |
+ CFX_WideString& wsPattern) const = 0; |
+ virtual void GetNumPattern(FX_LOCALENUMSUBCATEGORY eType, |
+ CFX_WideString& wsPattern) const = 0; |
+}; |
+ |
+class IFX_LocaleMgr { |
+ public: |
+ virtual ~IFX_LocaleMgr() {} |
+ virtual void Release() = 0; |
+ virtual FX_WORD GetDefLocaleID() = 0; |
+ virtual IFX_Locale* GetDefLocale() = 0; |
+ virtual IFX_Locale* GetLocale(FX_WORD lcid) = 0; |
+ virtual IFX_Locale* GetLocaleByName(const CFX_WideStringC& wsLocaleName) = 0; |
+}; |
+IFX_LocaleMgr* FX_LocaleMgr_Create(const FX_WCHAR* pszLocalPath, |
+ FX_WORD wDefaultLCID); |
+void FX_ParseNumString(const CFX_WideString& wsNum, CFX_WideString& wsResult); |
+FX_BOOL FX_DateFromCanonical(const CFX_WideString& wsDate, |
+ CFX_Unitime& datetime); |
+FX_BOOL FX_TimeFromCanonical(const CFX_WideStringC& wsTime, |
+ CFX_Unitime& datetime, |
+ IFX_Locale* pLocale); |
+class IFX_FormatString { |
+ public: |
+ static IFX_FormatString* Create(IFX_LocaleMgr* pLocaleMgr, FX_BOOL bUseLCID); |
+ |
+ virtual ~IFX_FormatString() {} |
+ virtual void Release() = 0; |
+ virtual void SplitFormatString(const CFX_WideString& wsFormatString, |
+ CFX_WideStringArray& wsPatterns) = 0; |
+ virtual FX_LOCALECATEGORY GetCategory(const CFX_WideString& wsPattern) = 0; |
+ virtual FX_WORD GetLCID(const CFX_WideString& wsPattern) = 0; |
+ virtual CFX_WideString GetLocaleName(const CFX_WideString& wsPattern) = 0; |
+ virtual FX_BOOL ParseText(const CFX_WideString& wsSrcText, |
+ const CFX_WideString& wsPattern, |
+ CFX_WideString& wsValue) = 0; |
+ virtual FX_BOOL ParseNum(const CFX_WideString& wsSrcNum, |
+ const CFX_WideString& wsPattern, |
+ FX_FLOAT& fValue) = 0; |
+ virtual FX_BOOL ParseNum(const CFX_WideString& wsSrcNum, |
+ const CFX_WideString& wsPattern, |
+ CFX_WideString& wsValue) = 0; |
+ virtual FX_BOOL ParseDateTime(const CFX_WideString& wsSrcDateTime, |
+ const CFX_WideString& wsPattern, |
+ FX_DATETIMETYPE eDateTimeType, |
+ CFX_Unitime& dtValue) = 0; |
+ virtual FX_BOOL ParseZero(const CFX_WideString& wsSrcText, |
+ const CFX_WideString& wsPattern) = 0; |
+ virtual FX_BOOL ParseNull(const CFX_WideString& wsSrcText, |
+ const CFX_WideString& wsPattern) = 0; |
+ virtual FX_BOOL FormatText(const CFX_WideString& wsSrcText, |
+ const CFX_WideString& wsPattern, |
+ CFX_WideString& wsOutput) = 0; |
+ virtual FX_BOOL FormatNum(const CFX_WideString& wsSrcNum, |
+ const CFX_WideString& wsPattern, |
+ CFX_WideString& wsOutput) = 0; |
+ virtual FX_BOOL FormatNum(FX_FLOAT fNum, |
+ const CFX_WideString& wsPattern, |
+ CFX_WideString& wsOutput) = 0; |
+ virtual FX_BOOL FormatDateTime(const CFX_WideString& wsSrcDateTime, |
+ const CFX_WideString& wsPattern, |
+ CFX_WideString& wsOutput) = 0; |
+ virtual FX_BOOL FormatDateTime(const CFX_WideString& wsSrcDateTime, |
+ const CFX_WideString& wsPattern, |
+ CFX_WideString& wsOutput, |
+ FX_DATETIMETYPE eDateTimeType) = 0; |
+ virtual FX_BOOL FormatDateTime(const CFX_Unitime& dt, |
+ const CFX_WideString& wsPattern, |
+ CFX_WideString& wsOutput) = 0; |
+ virtual FX_BOOL FormatZero(const CFX_WideString& wsPattern, |
+ CFX_WideString& wsOutput) = 0; |
+ virtual FX_BOOL FormatNull(const CFX_WideString& wsPattern, |
+ CFX_WideString& wsOutput) = 0; |
+}; |
+class CFX_Decimal { |
+ public: |
+ CFX_Decimal(); |
+ CFX_Decimal(uint32_t val); |
+ CFX_Decimal(uint64_t val); |
+ CFX_Decimal(int32_t val); |
+ CFX_Decimal(int64_t val); |
+ CFX_Decimal(FX_FLOAT val, uint8_t scale = 3); |
+ CFX_Decimal(const CFX_WideStringC& str); |
+ CFX_Decimal(const CFX_ByteStringC& str); |
+ operator CFX_WideString() const; |
+ operator double() const; |
+ FX_BOOL operator==(const CFX_Decimal& val) const; |
+ FX_BOOL operator<=(const CFX_Decimal& val) const; |
+ FX_BOOL operator>=(const CFX_Decimal& val) const; |
+ FX_BOOL operator!=(const CFX_Decimal& val) const; |
+ FX_BOOL operator<(const CFX_Decimal& val) const; |
+ FX_BOOL operator>(const CFX_Decimal& val) const; |
+ CFX_Decimal operator+(const CFX_Decimal& val) const; |
+ CFX_Decimal operator-(const CFX_Decimal& val) const; |
+ CFX_Decimal operator*(const CFX_Decimal& val) const; |
+ CFX_Decimal operator/(const CFX_Decimal& val) const; |
+ CFX_Decimal operator%(const CFX_Decimal& val) const; |
+ void SetScale(uint8_t newScale); |
+ uint8_t GetScale(); |
+ void SetAbs(); |
+ void SetNegate(); |
+ void SetFloor(); |
+ void SetCeiling(); |
+ void SetTruncate(); |
+ |
+ protected: |
+ CFX_Decimal(uint32_t hi, |
+ uint32_t mid, |
+ uint32_t lo, |
+ FX_BOOL neg, |
+ uint8_t scale); |
+ inline FX_BOOL IsNotZero() const { return m_uHi || m_uMid || m_uLo; } |
+ inline int8_t Compare(const CFX_Decimal& val) const; |
+ inline void Swap(CFX_Decimal& val); |
+ inline void FloorOrCeil(FX_BOOL bFloor); |
+ CFX_Decimal AddOrMinus(const CFX_Decimal& val, FX_BOOL isAdding) const; |
+ CFX_Decimal Multiply(const CFX_Decimal& val) const; |
+ CFX_Decimal Divide(const CFX_Decimal& val) const; |
+ CFX_Decimal Modulus(const CFX_Decimal& val) const; |
+ uint32_t m_uFlags; |
+ uint32_t m_uHi; |
+ uint32_t m_uLo; |
+ uint32_t m_uMid; |
+}; |
+#endif |