Remove fgas/localization directory

This Cl moves the CFX_DateTime, CFX_Decimal and IFX_Locale files into
core/fxcrt and builds only for XFA. The CFX_FormatString code is moved
info fgas/crt and renamed CFGAS_FormatString to match the fgas naming.

Change-Id: I8d9061195d2225da0389cbc9d018fcbd2e9a3c0c
Reviewed-on: https://pdfium-review.googlesource.com/3257
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Nicolás Peña <npm@chromium.org>
diff --git a/BUILD.gn b/BUILD.gn
index 9ce6e81..b54f67d 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -805,8 +805,13 @@
     sources += [
       "core/fxcrt/cfx_char.cpp",
       "core/fxcrt/cfx_char.h",
+      "core/fxcrt/cfx_datetime.cpp",
+      "core/fxcrt/cfx_datetime.h",
+      "core/fxcrt/cfx_decimal.cpp",
+      "core/fxcrt/cfx_decimal.h",
       "core/fxcrt/fx_arabic.cpp",
       "core/fxcrt/fx_arabic.h",
+      "core/fxcrt/ifx_locale.h",
     ]
   }
 }
@@ -1229,6 +1234,8 @@
       "xfa/fde/xml/fde_xml.h",
       "xfa/fde/xml/fde_xml_imp.cpp",
       "xfa/fde/xml/fde_xml_imp.h",
+      "xfa/fgas/crt/cfgas_formatstring.cpp",
+      "xfa/fgas/crt/cfgas_formatstring.h",
       "xfa/fgas/crt/fgas_codepage.cpp",
       "xfa/fgas/crt/fgas_codepage.h",
       "xfa/fgas/crt/fgas_language.h",
@@ -1252,13 +1259,6 @@
       "xfa/fgas/layout/fgas_rtfbreak.h",
       "xfa/fgas/layout/fgas_textbreak.cpp",
       "xfa/fgas/layout/fgas_textbreak.h",
-      "xfa/fgas/localization/cfx_datetime.cpp",
-      "xfa/fgas/localization/cfx_datetime.h",
-      "xfa/fgas/localization/cfx_decimal.cpp",
-      "xfa/fgas/localization/cfx_decimal.h",
-      "xfa/fgas/localization/cfx_formatstring.cpp",
-      "xfa/fgas/localization/cfx_formatstring.h",
-      "xfa/fgas/localization/ifx_locale.h",
       "xfa/fwl/cfwl_app.cpp",
       "xfa/fwl/cfwl_app.h",
       "xfa/fwl/cfwl_barcode.cpp",
diff --git a/xfa/fgas/localization/cfx_datetime.cpp b/core/fxcrt/cfx_datetime.cpp
similarity index 98%
rename from xfa/fgas/localization/cfx_datetime.cpp
rename to core/fxcrt/cfx_datetime.cpp
index eb804ee..dcf25d5 100644
--- a/xfa/fgas/localization/cfx_datetime.cpp
+++ b/core/fxcrt/cfx_datetime.cpp
@@ -4,8 +4,8 @@
 
 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 
+#include "core/fxcrt/cfx_datetime.h"
 #include "core/fxcrt/fx_system.h"
-#include "xfa/fgas/localization/cfx_datetime.h"
 
 #if _FX_OS_ == _FX_LINUX_DESKTOP_ || _FX_OS_ == _FX_ANDROID_ || \
     _FX_OS_ == _FX_MACOSX_ || _FX_OS_ == _FX_IOS_
diff --git a/xfa/fgas/localization/cfx_datetime.h b/core/fxcrt/cfx_datetime.h
similarity index 93%
rename from xfa/fgas/localization/cfx_datetime.h
rename to core/fxcrt/cfx_datetime.h
index d7bfa8d..2de75c4 100644
--- a/xfa/fgas/localization/cfx_datetime.h
+++ b/core/fxcrt/cfx_datetime.h
@@ -4,8 +4,8 @@
 
 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 
-#ifndef XFA_FGAS_LOCALIZATION_CFX_DATETIME_H_
-#define XFA_FGAS_LOCALIZATION_CFX_DATETIME_H_
+#ifndef CORE_FXCRT_CFX_DATETIME_H_
+#define CORE_FXCRT_CFX_DATETIME_H_
 
 #include "core/fxcrt/fx_system.h"
 
@@ -100,4 +100,4 @@
 #pragma pack(pop)
 #endif
 
-#endif  // XFA_FGAS_LOCALIZATION_CFX_DATETIME_H_
+#endif  // CORE_FXCRT_CFX_DATETIME_H_
diff --git a/xfa/fgas/localization/cfx_decimal.cpp b/core/fxcrt/cfx_decimal.cpp
similarity index 99%
rename from xfa/fgas/localization/cfx_decimal.cpp
rename to core/fxcrt/cfx_decimal.cpp
index b3296f3..1baa689 100644
--- a/xfa/fgas/localization/cfx_decimal.cpp
+++ b/core/fxcrt/cfx_decimal.cpp
@@ -4,7 +4,7 @@
 
 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 
-#include "xfa/fgas/localization/cfx_decimal.h"
+#include "core/fxcrt/cfx_decimal.h"
 
 #include <algorithm>
 #include <utility>
diff --git a/xfa/fgas/localization/cfx_decimal.h b/core/fxcrt/cfx_decimal.h
similarity index 87%
rename from xfa/fgas/localization/cfx_decimal.h
rename to core/fxcrt/cfx_decimal.h
index 36b898d..5442804 100644
--- a/xfa/fgas/localization/cfx_decimal.h
+++ b/core/fxcrt/cfx_decimal.h
@@ -4,8 +4,8 @@
 
 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 
-#ifndef XFA_FGAS_LOCALIZATION_CFX_DECIMAL_H_
-#define XFA_FGAS_LOCALIZATION_CFX_DECIMAL_H_
+#ifndef CORE_FXCRT_CFX_DECIMAL_H_
+#define CORE_FXCRT_CFX_DECIMAL_H_
 
 #include "core/fxcrt/fx_string.h"
 
@@ -39,4 +39,4 @@
   uint32_t m_uFlags;
 };
 
-#endif  // XFA_FGAS_LOCALIZATION_CFX_DECIMAL_H_
+#endif  // CORE_FXCRT_CFX_DECIMAL_H_
diff --git a/xfa/fgas/localization/ifx_locale.h b/core/fxcrt/ifx_locale.h
similarity index 91%
rename from xfa/fgas/localization/ifx_locale.h
rename to core/fxcrt/ifx_locale.h
index b9079d0..5039aec 100644
--- a/xfa/fgas/localization/ifx_locale.h
+++ b/core/fxcrt/ifx_locale.h
@@ -4,11 +4,11 @@
 
 // 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_
+#ifndef CORE_FXCRT_IFX_LOCALE_H_
+#define CORE_FXCRT_IFX_LOCALE_H_
 
+#include "core/fxcrt/cfx_datetime.h"
 #include "core/fxcrt/fx_string.h"
-#include "xfa/fgas/localization/cfx_datetime.h"
 
 enum FX_LOCALENUMSYMBOL {
   FX_LOCALENUMSYMBOL_Decimal,
@@ -73,4 +73,4 @@
   virtual CFX_WideString GetNumPattern(FX_LOCALENUMSUBCATEGORY eType) const = 0;
 };
 
-#endif  // XFA_FGAS_LOCALIZATION_IFX_LOCALE_H_
+#endif  // CORE_FXCRT_IFX_LOCALE_H_
diff --git a/xfa/fgas/localization/cfx_formatstring.cpp b/xfa/fgas/crt/cfgas_formatstring.cpp
similarity index 96%
rename from xfa/fgas/localization/cfx_formatstring.cpp
rename to xfa/fgas/crt/cfgas_formatstring.cpp
index 01e1096..57882da 100644
--- a/xfa/fgas/localization/cfx_formatstring.cpp
+++ b/xfa/fgas/crt/cfgas_formatstring.cpp
@@ -4,14 +4,14 @@
 
 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 
-#include "xfa/fgas/localization/cfx_formatstring.h"
+#include "xfa/fgas/crt/cfgas_formatstring.h"
 
 #include <algorithm>
 #include <vector>
 
+#include "core/fxcrt/cfx_decimal.h"
 #include "core/fxcrt/fx_ext.h"
 #include "core/fxcrt/fx_xml.h"
-#include "xfa/fgas/localization/cfx_decimal.h"
 
 #define FX_LOCALECATEGORY_DateHash 0xbde9abde
 #define FX_LOCALECATEGORY_TimeHash 0x2d71b00f
@@ -1077,12 +1077,12 @@
   return true;
 }
 
-CFX_FormatString::CFX_FormatString(CXFA_LocaleMgr* pLocaleMgr)
+CFGAS_FormatString::CFGAS_FormatString(CXFA_LocaleMgr* pLocaleMgr)
     : m_pLocaleMgr(pLocaleMgr) {}
 
-CFX_FormatString::~CFX_FormatString() {}
+CFGAS_FormatString::~CFGAS_FormatString() {}
 
-void CFX_FormatString::SplitFormatString(
+void CFGAS_FormatString::SplitFormatString(
     const CFX_WideString& wsFormatString,
     std::vector<CFX_WideString>& wsPatterns) {
   int32_t iStrLen = wsFormatString.GetLength();
@@ -1105,7 +1105,7 @@
   }
 }
 
-FX_LOCALECATEGORY CFX_FormatString::GetCategory(
+FX_LOCALECATEGORY CFGAS_FormatString::GetCategory(
     const CFX_WideString& wsPattern) {
   FX_LOCALECATEGORY eCategory = FX_LOCALECATEGORY_Unknown;
   int32_t ccf = 0;
@@ -1163,7 +1163,7 @@
   return eCategory;
 }
 
-CFX_WideString CFX_FormatString::GetLocaleName(
+CFX_WideString CFGAS_FormatString::GetLocaleName(
     const CFX_WideString& wsPattern) {
   int32_t ccf = 0;
   int32_t iLenf = wsPattern.GetLength();
@@ -1184,9 +1184,9 @@
   return CFX_WideString();
 }
 
-IFX_Locale* CFX_FormatString::GetTextFormat(const CFX_WideString& wsPattern,
-                                            const CFX_WideStringC& wsCategory,
-                                            CFX_WideString& wsPurgePattern) {
+IFX_Locale* CFGAS_FormatString::GetTextFormat(const CFX_WideString& wsPattern,
+                                              const CFX_WideStringC& wsCategory,
+                                              CFX_WideString& wsPurgePattern) {
   IFX_Locale* pLocale = nullptr;
   int32_t ccf = 0;
   int32_t iLenf = wsPattern.GetLength();
@@ -1239,10 +1239,11 @@
 #define FX_NUMSTYLE_Percent 0x01
 #define FX_NUMSTYLE_Exponent 0x02
 #define FX_NUMSTYLE_DotVorv 0x04
-IFX_Locale* CFX_FormatString::GetNumericFormat(const CFX_WideString& wsPattern,
-                                               int32_t& iDotIndex,
-                                               uint32_t& dwStyle,
-                                               CFX_WideString& wsPurgePattern) {
+IFX_Locale* CFGAS_FormatString::GetNumericFormat(
+    const CFX_WideString& wsPattern,
+    int32_t& iDotIndex,
+    uint32_t& dwStyle,
+    CFX_WideString& wsPurgePattern) {
   dwStyle = 0;
   IFX_Locale* pLocale = nullptr;
   int32_t ccf = 0;
@@ -1343,9 +1344,9 @@
   return pLocale;
 }
 
-bool CFX_FormatString::ParseText(const CFX_WideString& wsSrcText,
-                                 const CFX_WideString& wsPattern,
-                                 CFX_WideString& wsValue) {
+bool CFGAS_FormatString::ParseText(const CFX_WideString& wsSrcText,
+                                   const CFX_WideString& wsPattern,
+                                   CFX_WideString& wsValue) {
   wsValue.clear();
   if (wsSrcText.IsEmpty() || wsPattern.IsEmpty()) {
     return false;
@@ -1416,9 +1417,9 @@
   return iPattern == iLenPattern && iText == iLenText;
 }
 
-bool CFX_FormatString::ParseNum(const CFX_WideString& wsSrcNum,
-                                const CFX_WideString& wsPattern,
-                                CFX_WideString& wsValue) {
+bool CFGAS_FormatString::ParseNum(const CFX_WideString& wsSrcNum,
+                                  const CFX_WideString& wsPattern,
+                                  CFX_WideString& wsValue) {
   wsValue.clear();
   if (wsSrcNum.IsEmpty() || wsPattern.IsEmpty())
     return false;
@@ -1897,7 +1898,7 @@
   return true;
 }
 
-FX_DATETIMETYPE CFX_FormatString::GetDateTimeFormat(
+FX_DATETIMETYPE CFGAS_FormatString::GetDateTimeFormat(
     const CFX_WideString& wsPattern,
     IFX_Locale*& pLocale,
     CFX_WideString& wsDatePattern,
@@ -2036,10 +2037,10 @@
   return (FX_DATETIMETYPE)iFindCategory;
 }
 
-bool CFX_FormatString::ParseDateTime(const CFX_WideString& wsSrcDateTime,
-                                     const CFX_WideString& wsPattern,
-                                     FX_DATETIMETYPE eDateTimeType,
-                                     CFX_DateTime* dtValue) {
+bool CFGAS_FormatString::ParseDateTime(const CFX_WideString& wsSrcDateTime,
+                                       const CFX_WideString& wsPattern,
+                                       FX_DATETIMETYPE eDateTimeType,
+                                       CFX_DateTime* dtValue) {
   dtValue->Reset();
 
   if (wsSrcDateTime.IsEmpty() || wsPattern.IsEmpty()) {
@@ -2083,8 +2084,8 @@
   }
   return true;
 }
-bool CFX_FormatString::ParseZero(const CFX_WideString& wsSrcText,
-                                 const CFX_WideString& wsPattern) {
+bool CFGAS_FormatString::ParseZero(const CFX_WideString& wsSrcText,
+                                   const CFX_WideString& wsPattern) {
   CFX_WideString wsTextFormat;
   GetTextFormat(wsPattern, L"zero", wsTextFormat);
   int32_t iText = 0, iPattern = 0;
@@ -2113,8 +2114,8 @@
   }
   return iPattern == iLenPattern && iText == iLenText;
 }
-bool CFX_FormatString::ParseNull(const CFX_WideString& wsSrcText,
-                                 const CFX_WideString& wsPattern) {
+bool CFGAS_FormatString::ParseNull(const CFX_WideString& wsSrcText,
+                                   const CFX_WideString& wsPattern) {
   CFX_WideString wsTextFormat;
   GetTextFormat(wsPattern, L"null", wsTextFormat);
   int32_t iText = 0, iPattern = 0;
@@ -2143,9 +2144,9 @@
   }
   return iPattern == iLenPattern && iText == iLenText;
 }
-bool CFX_FormatString::FormatText(const CFX_WideString& wsSrcText,
-                                  const CFX_WideString& wsPattern,
-                                  CFX_WideString& wsOutput) {
+bool CFGAS_FormatString::FormatText(const CFX_WideString& wsSrcText,
+                                    const CFX_WideString& wsPattern,
+                                    CFX_WideString& wsOutput) {
   if (wsPattern.IsEmpty()) {
     return false;
   }
@@ -2204,9 +2205,9 @@
   return iText == iLenText;
 }
 
-bool CFX_FormatString::FormatStrNum(const CFX_WideStringC& wsInputNum,
-                                    const CFX_WideString& wsPattern,
-                                    CFX_WideString& wsOutput) {
+bool CFGAS_FormatString::FormatStrNum(const CFX_WideStringC& wsInputNum,
+                                      const CFX_WideString& wsPattern,
+                                      CFX_WideString& wsOutput) {
   if (wsInputNum.IsEmpty() || wsPattern.IsEmpty()) {
     return false;
   }
@@ -2626,19 +2627,19 @@
   return true;
 }
 
-bool CFX_FormatString::FormatNum(const CFX_WideString& wsSrcNum,
-                                 const CFX_WideString& wsPattern,
-                                 CFX_WideString& wsOutput) {
+bool CFGAS_FormatString::FormatNum(const CFX_WideString& wsSrcNum,
+                                   const CFX_WideString& wsPattern,
+                                   CFX_WideString& wsOutput) {
   if (wsSrcNum.IsEmpty() || wsPattern.IsEmpty()) {
     return false;
   }
   return FormatStrNum(wsSrcNum.AsStringC(), wsPattern, wsOutput);
 }
 
-bool CFX_FormatString::FormatDateTime(const CFX_WideString& wsSrcDateTime,
-                                      const CFX_WideString& wsPattern,
-                                      CFX_WideString& wsOutput,
-                                      FX_DATETIMETYPE eDateTimeType) {
+bool CFGAS_FormatString::FormatDateTime(const CFX_WideString& wsSrcDateTime,
+                                        const CFX_WideString& wsPattern,
+                                        CFX_WideString& wsOutput,
+                                        FX_DATETIMETYPE eDateTimeType) {
   if (wsSrcDateTime.IsEmpty() || wsPattern.IsEmpty()) {
     return false;
   }
@@ -2689,8 +2690,8 @@
   return false;
 }
 
-bool CFX_FormatString::FormatZero(const CFX_WideString& wsPattern,
-                                  CFX_WideString& wsOutput) {
+bool CFGAS_FormatString::FormatZero(const CFX_WideString& wsPattern,
+                                    CFX_WideString& wsOutput) {
   if (wsPattern.IsEmpty()) {
     return false;
   }
@@ -2711,8 +2712,8 @@
   }
   return true;
 }
-bool CFX_FormatString::FormatNull(const CFX_WideString& wsPattern,
-                                  CFX_WideString& wsOutput) {
+bool CFGAS_FormatString::FormatNull(const CFX_WideString& wsPattern,
+                                    CFX_WideString& wsOutput) {
   if (wsPattern.IsEmpty()) {
     return false;
   }
@@ -2734,6 +2735,7 @@
   return true;
 }
 
-IFX_Locale* CFX_FormatString::GetPatternLocale(const CFX_WideString& wsLocale) {
+IFX_Locale* CFGAS_FormatString::GetPatternLocale(
+    const CFX_WideString& wsLocale) {
   return m_pLocaleMgr->GetLocaleByName(wsLocale);
 }
diff --git a/xfa/fgas/localization/cfx_formatstring.h b/xfa/fgas/crt/cfgas_formatstring.h
similarity index 90%
rename from xfa/fgas/localization/cfx_formatstring.h
rename to xfa/fgas/crt/cfgas_formatstring.h
index 80e036f..d2d35a3 100644
--- a/xfa/fgas/localization/cfx_formatstring.h
+++ b/xfa/fgas/crt/cfgas_formatstring.h
@@ -4,12 +4,12 @@
 
 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 
-#ifndef XFA_FGAS_LOCALIZATION_CFX_FORMATSTRING_H_
-#define XFA_FGAS_LOCALIZATION_CFX_FORMATSTRING_H_
+#ifndef XFA_FGAS_CRT_CFGAS_FORMATSTRING_H_
+#define XFA_FGAS_CRT_CFGAS_FORMATSTRING_H_
 
 #include <vector>
 
-#include "xfa/fgas/localization/ifx_locale.h"
+#include "core/fxcrt/ifx_locale.h"
 #include "xfa/fxfa/parser/cxfa_localemgr.h"
 
 bool FX_DateFromCanonical(const CFX_WideString& wsDate, CFX_DateTime* datetime);
@@ -17,10 +17,10 @@
                           CFX_DateTime* datetime,
                           IFX_Locale* pLocale);
 
-class CFX_FormatString {
+class CFGAS_FormatString {
  public:
-  explicit CFX_FormatString(CXFA_LocaleMgr* pLocaleMgr);
-  ~CFX_FormatString();
+  explicit CFGAS_FormatString(CXFA_LocaleMgr* pLocaleMgr);
+  ~CFGAS_FormatString();
 
   void SplitFormatString(const CFX_WideString& wsFormatString,
                          std::vector<CFX_WideString>& wsPatterns);
@@ -73,4 +73,4 @@
   CXFA_LocaleMgr* m_pLocaleMgr;
 };
 
-#endif  // XFA_FGAS_LOCALIZATION_CFX_FORMATSTRING_H_
+#endif  // XFA_FGAS_CRT_CFGAS_FORMATSTRING_H_
diff --git a/xfa/fwl/cfwl_monthcalendar.h b/xfa/fwl/cfwl_monthcalendar.h
index 4835320..70c0401 100644
--- a/xfa/fwl/cfwl_monthcalendar.h
+++ b/xfa/fwl/cfwl_monthcalendar.h
@@ -10,7 +10,7 @@
 #include <memory>
 #include <vector>
 
-#include "xfa/fgas/localization/cfx_datetime.h"
+#include "core/fxcrt/cfx_datetime.h"
 #include "xfa/fwl/cfwl_event.h"
 #include "xfa/fwl/cfwl_widget.h"
 #include "xfa/fwl/cfwl_widgetproperties.h"
diff --git a/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp b/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
index bbda9ee..b95a6d3 100644
--- a/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
+++ b/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
@@ -10,13 +10,13 @@
 
 #include <algorithm>
 
+#include "core/fxcrt/cfx_decimal.h"
 #include "core/fxcrt/fx_ext.h"
 #include "fxjs/cfxjse_arguments.h"
 #include "fxjs/cfxjse_class.h"
 #include "fxjs/cfxjse_value.h"
 #include "third_party/base/ptr_util.h"
 #include "third_party/base/stl_util.h"
-#include "xfa/fgas/localization/cfx_decimal.h"
 #include "xfa/fxfa/app/xfa_ffnotify.h"
 #include "xfa/fxfa/fm2js/xfa_program.h"
 #include "xfa/fxfa/parser/cxfa_document.h"
diff --git a/xfa/fxfa/parser/cxfa_localemgr.cpp b/xfa/fxfa/parser/cxfa_localemgr.cpp
index ddcee39..ec29c56 100644
--- a/xfa/fxfa/parser/cxfa_localemgr.cpp
+++ b/xfa/fxfa/parser/cxfa_localemgr.cpp
@@ -14,7 +14,6 @@
 #include "core/fxcodec/fx_codec.h"
 #include "core/fxcrt/fx_xml.h"
 #include "core/fxge/cfx_gemodule.h"
-#include "xfa/fxfa/parser/cxfa_document.h"
 #include "xfa/fxfa/parser/cxfa_node.h"
 #include "xfa/fxfa/parser/cxfa_nodelocale.h"
 #include "xfa/fxfa/parser/cxfa_xmllocale.h"
diff --git a/xfa/fxfa/parser/cxfa_localemgr.h b/xfa/fxfa/parser/cxfa_localemgr.h
index 4151317..307cc62 100644
--- a/xfa/fxfa/parser/cxfa_localemgr.h
+++ b/xfa/fxfa/parser/cxfa_localemgr.h
@@ -10,8 +10,8 @@
 #include <memory>
 #include <vector>
 
-#include "xfa/fgas/localization/cfx_datetime.h"
-#include "xfa/fgas/localization/ifx_locale.h"
+#include "core/fxcrt/cfx_datetime.h"
+#include "core/fxcrt/ifx_locale.h"
 #include "xfa/fxfa/parser/cxfa_localemgr.h"
 
 class CXFA_Node;
diff --git a/xfa/fxfa/parser/cxfa_localevalue.cpp b/xfa/fxfa/parser/cxfa_localevalue.cpp
index e66e553..6778092 100644
--- a/xfa/fxfa/parser/cxfa_localevalue.cpp
+++ b/xfa/fxfa/parser/cxfa_localevalue.cpp
@@ -11,7 +11,7 @@
 #include "core/fxcrt/fx_ext.h"
 #include "third_party/base/ptr_util.h"
 #include "third_party/base/stl_util.h"
-#include "xfa/fgas/localization/cfx_formatstring.h"
+#include "xfa/fgas/crt/cfgas_formatstring.h"
 #include "xfa/fxfa/parser/cxfa_document.h"
 #include "xfa/fxfa/parser/cxfa_localemgr.h"
 #include "xfa/fxfa/parser/xfa_utils.h"
@@ -90,7 +90,7 @@
   if (pLocale)
     m_pLocaleMgr->SetDefLocale(pLocale);
 
-  auto pFormat = pdfium::MakeUnique<CFX_FormatString>(m_pLocaleMgr);
+  auto pFormat = pdfium::MakeUnique<CFGAS_FormatString>(m_pLocaleMgr);
   std::vector<CFX_WideString> wsPatterns;
   pFormat->SplitFormatString(wsPattern, wsPatterns);
 
@@ -464,7 +464,7 @@
                                       const CFX_WideString& wsFormat,
                                       IFX_Locale* pLocale,
                                       XFA_VALUEPICTURE eValueType) const {
-  auto pFormat = pdfium::MakeUnique<CFX_FormatString>(m_pLocaleMgr);
+  auto pFormat = pdfium::MakeUnique<CFGAS_FormatString>(m_pLocaleMgr);
   std::vector<CFX_WideString> wsPatterns;
   pFormat->SplitFormatString(wsFormat, wsPatterns);
   wsResult.clear();
@@ -486,7 +486,7 @@
 
   wsResult.clear();
   bool bRet = false;
-  auto pFormat = pdfium::MakeUnique<CFX_FormatString>(m_pLocaleMgr);
+  auto pFormat = pdfium::MakeUnique<CFGAS_FormatString>(m_pLocaleMgr);
   FX_LOCALECATEGORY eCategory = pFormat->GetCategory(wsFormat);
   eCategory = XFA_ValugeCategory(eCategory, m_dwType);
   switch (eCategory) {
@@ -795,7 +795,7 @@
   if (pLocale)
     m_pLocaleMgr->SetDefLocale(pLocale);
 
-  auto pFormat = pdfium::MakeUnique<CFX_FormatString>(m_pLocaleMgr);
+  auto pFormat = pdfium::MakeUnique<CFGAS_FormatString>(m_pLocaleMgr);
   std::vector<CFX_WideString> wsPatterns;
   pFormat->SplitFormatString(wsPattern, wsPatterns);
   bool bRet = false;
diff --git a/xfa/fxfa/parser/cxfa_node.cpp b/xfa/fxfa/parser/cxfa_node.cpp
index cd65f6a..75a125b 100644
--- a/xfa/fxfa/parser/cxfa_node.cpp
+++ b/xfa/fxfa/parser/cxfa_node.cpp
@@ -12,13 +12,13 @@
 #include <utility>
 #include <vector>
 
+#include "core/fxcrt/cfx_decimal.h"
 #include "core/fxcrt/fx_ext.h"
 #include "fxjs/cfxjse_value.h"
 #include "third_party/base/ptr_util.h"
 #include "third_party/base/stl_util.h"
 #include "xfa/fde/xml/fde_xml_imp.h"
 #include "xfa/fgas/crt/fgas_codepage.h"
-#include "xfa/fgas/localization/cfx_decimal.h"
 #include "xfa/fxfa/app/xfa_ffnotify.h"
 #include "xfa/fxfa/cxfa_eventparam.h"
 #include "xfa/fxfa/cxfa_ffwidget.h"
diff --git a/xfa/fxfa/parser/cxfa_nodelocale.h b/xfa/fxfa/parser/cxfa_nodelocale.h
index dbecdca..2465650 100644
--- a/xfa/fxfa/parser/cxfa_nodelocale.h
+++ b/xfa/fxfa/parser/cxfa_nodelocale.h
@@ -9,7 +9,7 @@
 
 #include <memory>
 
-#include "xfa/fgas/localization/ifx_locale.h"
+#include "core/fxcrt/ifx_locale.h"
 #include "xfa/fxfa/fxfa_basic.h"
 
 class CXFA_Node;
diff --git a/xfa/fxfa/parser/cxfa_timezoneprovider.h b/xfa/fxfa/parser/cxfa_timezoneprovider.h
index eace151..753fbb7 100644
--- a/xfa/fxfa/parser/cxfa_timezoneprovider.h
+++ b/xfa/fxfa/parser/cxfa_timezoneprovider.h
@@ -7,7 +7,7 @@
 #ifndef XFA_FXFA_PARSER_CXFA_TIMEZONEPROVIDER_H_
 #define XFA_FXFA_PARSER_CXFA_TIMEZONEPROVIDER_H_
 
-#include "xfa/fgas/localization/cfx_datetime.h"
+#include "core/fxcrt/cfx_datetime.h"
 
 class CXFA_TimeZoneProvider {
  public:
diff --git a/xfa/fxfa/parser/cxfa_widgetdata.cpp b/xfa/fxfa/parser/cxfa_widgetdata.cpp
index d6fb3a9..0065296 100644
--- a/xfa/fxfa/parser/cxfa_widgetdata.cpp
+++ b/xfa/fxfa/parser/cxfa_widgetdata.cpp
@@ -6,9 +6,9 @@
 
 #include "xfa/fxfa/parser/cxfa_widgetdata.h"
 
+#include "core/fxcrt/cfx_decimal.h"
 #include "core/fxcrt/fx_ext.h"
 #include "third_party/base/stl_util.h"
-#include "xfa/fgas/localization/cfx_decimal.h"
 #include "xfa/fxbarcode/BC_Library.h"
 #include "xfa/fxfa/app/xfa_ffnotify.h"
 #include "xfa/fxfa/parser/cxfa_document.h"
diff --git a/xfa/fxfa/parser/cxfa_xmllocale.h b/xfa/fxfa/parser/cxfa_xmllocale.h
index 374dab0..a583856 100644
--- a/xfa/fxfa/parser/cxfa_xmllocale.h
+++ b/xfa/fxfa/parser/cxfa_xmllocale.h
@@ -9,7 +9,7 @@
 
 #include <memory>
 
-#include "xfa/fgas/localization/ifx_locale.h"
+#include "core/fxcrt/ifx_locale.h"
 
 class CXML_Element;