Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(378)

Side by Side Diff: xfa/fxfa/fm2js/xfa_fm2jscontext.cpp

Issue 1857713003: Rename GetCStr and GetPtr to match CFX_ByteString (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #include "xfa/fxfa/fm2js/xfa_fm2jscontext.h" 7 #include "xfa/fxfa/fm2js/xfa_fm2jscontext.h"
8 8
9 #include <time.h> 9 #include <time.h>
10 10
(...skipping 2008 matching lines...) Expand 10 before | Expand all | Expand 10 after
2019 } 2019 }
2020 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr(); 2020 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr();
2021 IFX_Locale* pLocale = NULL; 2021 IFX_Locale* pLocale = NULL;
2022 if (szLocale.IsEmpty()) { 2022 if (szLocale.IsEmpty()) {
2023 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject()); 2023 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject());
2024 FXSYS_assert(pThisNode); 2024 FXSYS_assert(pThisNode);
2025 CXFA_WidgetData widgetData(pThisNode); 2025 CXFA_WidgetData widgetData(pThisNode);
2026 pLocale = widgetData.GetLocal(); 2026 pLocale = widgetData.GetLocal();
2027 } else { 2027 } else {
2028 pLocale = pMgr->GetLocaleByName( 2028 pLocale = pMgr->GetLocaleByName(
2029 CFX_WideString::FromUTF8(szLocale.GetCStr(), szLocale.GetLength())); 2029 CFX_WideString::FromUTF8(szLocale.c_str(), szLocale.GetLength()));
2030 } 2030 }
2031 if (!pLocale) { 2031 if (!pLocale) {
2032 return FALSE; 2032 return FALSE;
2033 } 2033 }
2034 CFX_WideString wsFormat; 2034 CFX_WideString wsFormat;
2035 if (szFormat.IsEmpty()) { 2035 if (szFormat.IsEmpty()) {
2036 pLocale->GetDatePattern(FX_LOCALEDATETIMESUBCATEGORY_Default, wsFormat); 2036 pLocale->GetDatePattern(FX_LOCALEDATETIMESUBCATEGORY_Default, wsFormat);
2037 } else { 2037 } else {
2038 wsFormat = 2038 wsFormat = CFX_WideString::FromUTF8(szFormat.c_str(), szFormat.GetLength());
2039 CFX_WideString::FromUTF8(szFormat.GetCStr(), szFormat.GetLength());
2040 } 2039 }
2041 CXFA_LocaleValue widgetValue( 2040 CXFA_LocaleValue widgetValue(
2042 XFA_VT_DATE, 2041 XFA_VT_DATE, CFX_WideString::FromUTF8(szDate.c_str(), szDate.GetLength()),
2043 CFX_WideString::FromUTF8(szDate.GetCStr(), szDate.GetLength()), wsFormat, 2042 wsFormat, pLocale, (CXFA_LocaleMgr*)pMgr);
2044 pLocale, (CXFA_LocaleMgr*)pMgr);
2045 CFX_Unitime dt = widgetValue.GetDate(); 2043 CFX_Unitime dt = widgetValue.GetDate();
2046 strIsoDate.Format("%4d-%02d-%02d", dt.GetYear(), dt.GetMonth(), dt.GetDay()); 2044 strIsoDate.Format("%4d-%02d-%02d", dt.GetYear(), dt.GetMonth(), dt.GetDay());
2047 return TRUE; 2045 return TRUE;
2048 } 2046 }
2049 FX_BOOL CXFA_FM2JSContext::Local2IsoTime(FXJSE_HOBJECT hThis, 2047 FX_BOOL CXFA_FM2JSContext::Local2IsoTime(FXJSE_HOBJECT hThis,
2050 const CFX_ByteStringC& szTime, 2048 const CFX_ByteStringC& szTime,
2051 const CFX_ByteStringC& szFormat, 2049 const CFX_ByteStringC& szFormat,
2052 const CFX_ByteStringC& szLocale, 2050 const CFX_ByteStringC& szLocale,
2053 CFX_ByteString& strIsoTime) { 2051 CFX_ByteString& strIsoTime) {
2054 CXFA_FM2JSContext* pContext = 2052 CXFA_FM2JSContext* pContext =
2055 (CXFA_FM2JSContext*)FXJSE_Value_ToObject(hThis, NULL); 2053 (CXFA_FM2JSContext*)FXJSE_Value_ToObject(hThis, NULL);
2056 CXFA_Document* pDoc = pContext->GetDocument(); 2054 CXFA_Document* pDoc = pContext->GetDocument();
2057 if (!pDoc) { 2055 if (!pDoc) {
2058 return FALSE; 2056 return FALSE;
2059 } 2057 }
2060 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr(); 2058 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr();
2061 IFX_Locale* pLocale = NULL; 2059 IFX_Locale* pLocale = NULL;
2062 if (szLocale.IsEmpty()) { 2060 if (szLocale.IsEmpty()) {
2063 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject()); 2061 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject());
2064 FXSYS_assert(pThisNode); 2062 FXSYS_assert(pThisNode);
2065 CXFA_WidgetData widgetData(pThisNode); 2063 CXFA_WidgetData widgetData(pThisNode);
2066 pLocale = widgetData.GetLocal(); 2064 pLocale = widgetData.GetLocal();
2067 } else { 2065 } else {
2068 pLocale = pMgr->GetLocaleByName( 2066 pLocale = pMgr->GetLocaleByName(
2069 CFX_WideString::FromUTF8(szLocale.GetCStr(), szLocale.GetLength())); 2067 CFX_WideString::FromUTF8(szLocale.c_str(), szLocale.GetLength()));
2070 } 2068 }
2071 if (!pLocale) { 2069 if (!pLocale) {
2072 return FALSE; 2070 return FALSE;
2073 } 2071 }
2074 CFX_WideString wsFormat; 2072 CFX_WideString wsFormat;
2075 if (szFormat.IsEmpty()) { 2073 if (szFormat.IsEmpty()) {
2076 pLocale->GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY_Default, wsFormat); 2074 pLocale->GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY_Default, wsFormat);
2077 } else { 2075 } else {
2078 wsFormat = 2076 wsFormat = CFX_WideString::FromUTF8(szFormat.c_str(), szFormat.GetLength());
2079 CFX_WideString::FromUTF8(szFormat.GetCStr(), szFormat.GetLength());
2080 } 2077 }
2081 wsFormat = FX_WSTRC(L"time{") + wsFormat; 2078 wsFormat = FX_WSTRC(L"time{") + wsFormat;
2082 wsFormat += FX_WSTRC(L"}"); 2079 wsFormat += FX_WSTRC(L"}");
2083 CXFA_LocaleValue widgetValue( 2080 CXFA_LocaleValue widgetValue(
2084 XFA_VT_TIME, 2081 XFA_VT_TIME, CFX_WideString::FromUTF8(szTime.c_str(), szTime.GetLength()),
2085 CFX_WideString::FromUTF8(szTime.GetCStr(), szTime.GetLength()), wsFormat, 2082 wsFormat, pLocale, (CXFA_LocaleMgr*)pMgr);
2086 pLocale, (CXFA_LocaleMgr*)pMgr);
2087 CFX_Unitime utime = widgetValue.GetTime(); 2083 CFX_Unitime utime = widgetValue.GetTime();
2088 strIsoTime.Format("%02d:%02d:%02d.%03d", utime.GetHour(), utime.GetMinute(), 2084 strIsoTime.Format("%02d:%02d:%02d.%03d", utime.GetHour(), utime.GetMinute(),
2089 utime.GetSecond(), utime.GetMillisecond()); 2085 utime.GetSecond(), utime.GetMillisecond());
2090 return TRUE; 2086 return TRUE;
2091 } 2087 }
2092 FX_BOOL CXFA_FM2JSContext::IsoDate2Local(FXJSE_HOBJECT hThis, 2088 FX_BOOL CXFA_FM2JSContext::IsoDate2Local(FXJSE_HOBJECT hThis,
2093 const CFX_ByteStringC& szDate, 2089 const CFX_ByteStringC& szDate,
2094 const CFX_ByteStringC& szFormat, 2090 const CFX_ByteStringC& szFormat,
2095 const CFX_ByteStringC& szLocale, 2091 const CFX_ByteStringC& szLocale,
2096 CFX_ByteString& strLocalDate) { 2092 CFX_ByteString& strLocalDate) {
2097 CXFA_FM2JSContext* pContext = 2093 CXFA_FM2JSContext* pContext =
2098 (CXFA_FM2JSContext*)FXJSE_Value_ToObject(hThis, NULL); 2094 (CXFA_FM2JSContext*)FXJSE_Value_ToObject(hThis, NULL);
2099 CXFA_Document* pDoc = pContext->GetDocument(); 2095 CXFA_Document* pDoc = pContext->GetDocument();
2100 if (!pDoc) { 2096 if (!pDoc) {
2101 return FALSE; 2097 return FALSE;
2102 } 2098 }
2103 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr(); 2099 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr();
2104 IFX_Locale* pLocale = NULL; 2100 IFX_Locale* pLocale = NULL;
2105 if (szLocale.IsEmpty()) { 2101 if (szLocale.IsEmpty()) {
2106 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject()); 2102 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject());
2107 FXSYS_assert(pThisNode); 2103 FXSYS_assert(pThisNode);
2108 CXFA_WidgetData widgetData(pThisNode); 2104 CXFA_WidgetData widgetData(pThisNode);
2109 pLocale = widgetData.GetLocal(); 2105 pLocale = widgetData.GetLocal();
2110 } else { 2106 } else {
2111 pLocale = pMgr->GetLocaleByName( 2107 pLocale = pMgr->GetLocaleByName(
2112 CFX_WideString::FromUTF8(szLocale.GetCStr(), szLocale.GetLength())); 2108 CFX_WideString::FromUTF8(szLocale.c_str(), szLocale.GetLength()));
2113 } 2109 }
2114 if (!pLocale) { 2110 if (!pLocale) {
2115 return FALSE; 2111 return FALSE;
2116 } 2112 }
2117 CFX_WideString wsFormat; 2113 CFX_WideString wsFormat;
2118 if (szFormat.IsEmpty()) { 2114 if (szFormat.IsEmpty()) {
2119 pLocale->GetDatePattern(FX_LOCALEDATETIMESUBCATEGORY_Default, wsFormat); 2115 pLocale->GetDatePattern(FX_LOCALEDATETIMESUBCATEGORY_Default, wsFormat);
2120 } else { 2116 } else {
2121 wsFormat = 2117 wsFormat = CFX_WideString::FromUTF8(szFormat.c_str(), szFormat.GetLength());
2122 CFX_WideString::FromUTF8(szFormat.GetCStr(), szFormat.GetLength());
2123 } 2118 }
2124 CXFA_LocaleValue widgetValue( 2119 CXFA_LocaleValue widgetValue(
2125 XFA_VT_DATE, 2120 XFA_VT_DATE, CFX_WideString::FromUTF8(szDate.c_str(), szDate.GetLength()),
2126 CFX_WideString::FromUTF8(szDate.GetCStr(), szDate.GetLength()),
2127 (CXFA_LocaleMgr*)pMgr); 2121 (CXFA_LocaleMgr*)pMgr);
2128 CFX_WideString wsRet; 2122 CFX_WideString wsRet;
2129 widgetValue.FormatPatterns(wsRet, wsFormat, pLocale, 2123 widgetValue.FormatPatterns(wsRet, wsFormat, pLocale,
2130 XFA_VALUEPICTURE_Display); 2124 XFA_VALUEPICTURE_Display);
2131 strLocalDate = FX_UTF8Encode(wsRet, wsRet.GetLength()); 2125 strLocalDate = FX_UTF8Encode(wsRet, wsRet.GetLength());
2132 return TRUE; 2126 return TRUE;
2133 } 2127 }
2134 FX_BOOL CXFA_FM2JSContext::IsoTime2Local(FXJSE_HOBJECT hThis, 2128 FX_BOOL CXFA_FM2JSContext::IsoTime2Local(FXJSE_HOBJECT hThis,
2135 const CFX_ByteStringC& szTime, 2129 const CFX_ByteStringC& szTime,
2136 const CFX_ByteStringC& szFormat, 2130 const CFX_ByteStringC& szFormat,
2137 const CFX_ByteStringC& szLocale, 2131 const CFX_ByteStringC& szLocale,
2138 CFX_ByteString& strLocalTime) { 2132 CFX_ByteString& strLocalTime) {
2139 CXFA_FM2JSContext* pContext = 2133 CXFA_FM2JSContext* pContext =
2140 (CXFA_FM2JSContext*)FXJSE_Value_ToObject(hThis, NULL); 2134 (CXFA_FM2JSContext*)FXJSE_Value_ToObject(hThis, NULL);
2141 CXFA_Document* pDoc = pContext->GetDocument(); 2135 CXFA_Document* pDoc = pContext->GetDocument();
2142 if (!pDoc) { 2136 if (!pDoc) {
2143 return FALSE; 2137 return FALSE;
2144 } 2138 }
2145 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr(); 2139 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr();
2146 IFX_Locale* pLocale = NULL; 2140 IFX_Locale* pLocale = NULL;
2147 if (szLocale.IsEmpty()) { 2141 if (szLocale.IsEmpty()) {
2148 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject()); 2142 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject());
2149 FXSYS_assert(pThisNode); 2143 FXSYS_assert(pThisNode);
2150 CXFA_WidgetData widgetData(pThisNode); 2144 CXFA_WidgetData widgetData(pThisNode);
2151 pLocale = widgetData.GetLocal(); 2145 pLocale = widgetData.GetLocal();
2152 } else { 2146 } else {
2153 pLocale = pMgr->GetLocaleByName( 2147 pLocale = pMgr->GetLocaleByName(
2154 CFX_WideString::FromUTF8(szLocale.GetCStr(), szLocale.GetLength())); 2148 CFX_WideString::FromUTF8(szLocale.c_str(), szLocale.GetLength()));
2155 } 2149 }
2156 if (!pLocale) { 2150 if (!pLocale) {
2157 return FALSE; 2151 return FALSE;
2158 } 2152 }
2159 CFX_WideString wsFormat; 2153 CFX_WideString wsFormat;
2160 if (szFormat.IsEmpty()) { 2154 if (szFormat.IsEmpty()) {
2161 pLocale->GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY_Default, wsFormat); 2155 pLocale->GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY_Default, wsFormat);
2162 } else { 2156 } else {
2163 wsFormat = 2157 wsFormat = CFX_WideString::FromUTF8(szFormat.c_str(), szFormat.GetLength());
2164 CFX_WideString::FromUTF8(szFormat.GetCStr(), szFormat.GetLength());
2165 } 2158 }
2166 wsFormat = FX_WSTRC(L"time{") + wsFormat; 2159 wsFormat = FX_WSTRC(L"time{") + wsFormat;
2167 wsFormat += FX_WSTRC(L"}"); 2160 wsFormat += FX_WSTRC(L"}");
2168 CXFA_LocaleValue widgetValue( 2161 CXFA_LocaleValue widgetValue(
2169 XFA_VT_TIME, 2162 XFA_VT_TIME, CFX_WideString::FromUTF8(szTime.c_str(), szTime.GetLength()),
2170 CFX_WideString::FromUTF8(szTime.GetCStr(), szTime.GetLength()),
2171 (CXFA_LocaleMgr*)pMgr); 2163 (CXFA_LocaleMgr*)pMgr);
2172 CFX_WideString wsRet; 2164 CFX_WideString wsRet;
2173 widgetValue.FormatPatterns(wsRet, wsFormat, pLocale, 2165 widgetValue.FormatPatterns(wsRet, wsFormat, pLocale,
2174 XFA_VALUEPICTURE_Display); 2166 XFA_VALUEPICTURE_Display);
2175 strLocalTime = FX_UTF8Encode(wsRet, wsRet.GetLength()); 2167 strLocalTime = FX_UTF8Encode(wsRet, wsRet.GetLength());
2176 return TRUE; 2168 return TRUE;
2177 } 2169 }
2178 FX_BOOL CXFA_FM2JSContext::GetGMTTime(FXJSE_HOBJECT hThis, 2170 FX_BOOL CXFA_FM2JSContext::GetGMTTime(FXJSE_HOBJECT hThis,
2179 const CFX_ByteStringC& szTime, 2171 const CFX_ByteStringC& szTime,
2180 const CFX_ByteStringC& szFormat, 2172 const CFX_ByteStringC& szFormat,
2181 const CFX_ByteStringC& szLocale, 2173 const CFX_ByteStringC& szLocale,
2182 CFX_ByteString& strGMTTime) { 2174 CFX_ByteString& strGMTTime) {
2183 CXFA_FM2JSContext* pContext = 2175 CXFA_FM2JSContext* pContext =
2184 (CXFA_FM2JSContext*)FXJSE_Value_ToObject(hThis, NULL); 2176 (CXFA_FM2JSContext*)FXJSE_Value_ToObject(hThis, NULL);
2185 CXFA_Document* pDoc = pContext->GetDocument(); 2177 CXFA_Document* pDoc = pContext->GetDocument();
2186 if (!pDoc) { 2178 if (!pDoc) {
2187 return FALSE; 2179 return FALSE;
2188 } 2180 }
2189 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr(); 2181 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr();
2190 IFX_Locale* pLocale = NULL; 2182 IFX_Locale* pLocale = NULL;
2191 if (szLocale.IsEmpty()) { 2183 if (szLocale.IsEmpty()) {
2192 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject()); 2184 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject());
2193 FXSYS_assert(pThisNode); 2185 FXSYS_assert(pThisNode);
2194 CXFA_WidgetData widgetData(pThisNode); 2186 CXFA_WidgetData widgetData(pThisNode);
2195 pLocale = widgetData.GetLocal(); 2187 pLocale = widgetData.GetLocal();
2196 } else { 2188 } else {
2197 pLocale = pMgr->GetLocaleByName( 2189 pLocale = pMgr->GetLocaleByName(
2198 CFX_WideString::FromUTF8(szLocale.GetCStr(), szLocale.GetLength())); 2190 CFX_WideString::FromUTF8(szLocale.c_str(), szLocale.GetLength()));
2199 } 2191 }
2200 if (!pLocale) { 2192 if (!pLocale) {
2201 return FALSE; 2193 return FALSE;
2202 } 2194 }
2203 CFX_WideString wsFormat; 2195 CFX_WideString wsFormat;
2204 if (szFormat.IsEmpty()) { 2196 if (szFormat.IsEmpty()) {
2205 pLocale->GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY_Default, wsFormat); 2197 pLocale->GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY_Default, wsFormat);
2206 } else { 2198 } else {
2207 wsFormat = 2199 wsFormat = CFX_WideString::FromUTF8(szFormat.c_str(), szFormat.GetLength());
2208 CFX_WideString::FromUTF8(szFormat.GetCStr(), szFormat.GetLength());
2209 } 2200 }
2210 wsFormat = FX_WSTRC(L"time{") + wsFormat; 2201 wsFormat = FX_WSTRC(L"time{") + wsFormat;
2211 wsFormat += FX_WSTRC(L"}"); 2202 wsFormat += FX_WSTRC(L"}");
2212 CXFA_LocaleValue widgetValue( 2203 CXFA_LocaleValue widgetValue(
2213 XFA_VT_TIME, 2204 XFA_VT_TIME, CFX_WideString::FromUTF8(szTime.c_str(), szTime.GetLength()),
2214 CFX_WideString::FromUTF8(szTime.GetCStr(), szTime.GetLength()),
2215 (CXFA_LocaleMgr*)pMgr); 2205 (CXFA_LocaleMgr*)pMgr);
2216 CFX_WideString wsRet; 2206 CFX_WideString wsRet;
2217 widgetValue.FormatPatterns(wsRet, wsFormat, pLocale, 2207 widgetValue.FormatPatterns(wsRet, wsFormat, pLocale,
2218 XFA_VALUEPICTURE_Display); 2208 XFA_VALUEPICTURE_Display);
2219 strGMTTime = FX_UTF8Encode(wsRet, wsRet.GetLength()); 2209 strGMTTime = FX_UTF8Encode(wsRet, wsRet.GetLength());
2220 return TRUE; 2210 return TRUE;
2221 } 2211 }
2222 int32_t CXFA_FM2JSContext::DateString2Num(const CFX_ByteStringC& szDateString) { 2212 int32_t CXFA_FM2JSContext::DateString2Num(const CFX_ByteStringC& szDateString) {
2223 FX_BOOL bFlags = FALSE; 2213 FX_BOOL bFlags = FALSE;
2224 int32_t iLength = szDateString.GetLength(); 2214 int32_t iLength = szDateString.GetLength();
2225 FX_BOOL iRet = FALSE; 2215 FX_BOOL iRet = FALSE;
2226 int32_t iStyle = -1; 2216 int32_t iStyle = -1;
2227 int32_t iYear = 0; 2217 int32_t iYear = 0;
2228 int32_t iMonth = 0; 2218 int32_t iMonth = 0;
2229 int32_t iDay = 0; 2219 int32_t iDay = 0;
2230 int32_t iHour = 0; 2220 int32_t iHour = 0;
2231 int32_t iMinute = 0; 2221 int32_t iMinute = 0;
2232 int32_t iSecond = 0; 2222 int32_t iSecond = 0;
2233 int32_t iMillionSecond = 0; 2223 int32_t iMillionSecond = 0;
2234 int32_t iZoneHour = 0; 2224 int32_t iZoneHour = 0;
2235 int32_t iZoneMinute = 0; 2225 int32_t iZoneMinute = 0;
2236 if (iLength <= 10) { 2226 if (iLength <= 10) {
2237 iRet = IsIsoDateFormat(szDateString.GetCStr(), iLength, iStyle, iYear, 2227 iRet = IsIsoDateFormat(szDateString.c_str(), iLength, iStyle, iYear, iMonth,
2238 iMonth, iDay); 2228 iDay);
2239 } else { 2229 } else {
2240 iRet = IsIsoDateTimeFormat(szDateString.GetCStr(), iLength, iYear, iMonth, 2230 iRet = IsIsoDateTimeFormat(szDateString.c_str(), iLength, iYear, iMonth,
2241 iDay, iHour, iMinute, iSecond, iMillionSecond, 2231 iDay, iHour, iMinute, iSecond, iMillionSecond,
2242 iZoneHour, iZoneMinute); 2232 iZoneHour, iZoneMinute);
2243 } 2233 }
2244 if (!iRet) { 2234 if (!iRet) {
2245 bFlags = TRUE; 2235 bFlags = TRUE;
2246 } 2236 }
2247 FX_FLOAT dDays = 0; 2237 FX_FLOAT dDays = 0;
2248 int32_t i = 1; 2238 int32_t i = 1;
2249 if (iYear < 1900) { 2239 if (iYear < 1900) {
2250 bFlags = TRUE; 2240 bFlags = TRUE;
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
2373 } 2363 }
2374 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr(); 2364 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr();
2375 IFX_Locale* pLocale = NULL; 2365 IFX_Locale* pLocale = NULL;
2376 if (szLocalStr.IsEmpty()) { 2366 if (szLocalStr.IsEmpty()) {
2377 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject()); 2367 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject());
2378 FXSYS_assert(pThisNode); 2368 FXSYS_assert(pThisNode);
2379 CXFA_WidgetData widgetData(pThisNode); 2369 CXFA_WidgetData widgetData(pThisNode);
2380 pLocale = widgetData.GetLocal(); 2370 pLocale = widgetData.GetLocal();
2381 } else { 2371 } else {
2382 pLocale = pMgr->GetLocaleByName( 2372 pLocale = pMgr->GetLocaleByName(
2383 CFX_WideString::FromUTF8(szLocalStr.GetCStr(), szLocalStr.GetLength())); 2373 CFX_WideString::FromUTF8(szLocalStr.c_str(), szLocalStr.GetLength()));
2384 } 2374 }
2385 if (!pLocale) { 2375 if (!pLocale) {
2386 return; 2376 return;
2387 } 2377 }
2388 CFX_WideString strRet; 2378 CFX_WideString strRet;
2389 pLocale->GetDatePattern(strStyle, strRet); 2379 pLocale->GetDatePattern(strStyle, strRet);
2390 if (!bStandard) { 2380 if (!bStandard) {
2391 CFX_WideString wsSymbols; 2381 CFX_WideString wsSymbols;
2392 pLocale->GetDateTimeSymbols(wsSymbols); 2382 pLocale->GetDateTimeSymbols(wsSymbols);
2393 XFA_FM_AlternateDateTimeSymbols(strRet, wsSymbols, g_sAltTable_Date); 2383 XFA_FM_AlternateDateTimeSymbols(strRet, wsSymbols, g_sAltTable_Date);
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
2428 } 2418 }
2429 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr(); 2419 IFX_LocaleMgr* pMgr = (IFX_LocaleMgr*)pDoc->GetLocalMgr();
2430 IFX_Locale* pLocale = NULL; 2420 IFX_Locale* pLocale = NULL;
2431 if (szLocalStr.IsEmpty()) { 2421 if (szLocalStr.IsEmpty()) {
2432 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject()); 2422 CXFA_Node* pThisNode = ToNode(pDoc->GetScriptContext()->GetThisObject());
2433 FXSYS_assert(pThisNode); 2423 FXSYS_assert(pThisNode);
2434 CXFA_WidgetData widgetData(pThisNode); 2424 CXFA_WidgetData widgetData(pThisNode);
2435 pLocale = widgetData.GetLocal(); 2425 pLocale = widgetData.GetLocal();
2436 } else { 2426 } else {
2437 pLocale = pMgr->GetLocaleByName( 2427 pLocale = pMgr->GetLocaleByName(
2438 CFX_WideString::FromUTF8(szLocalStr.GetCStr(), szLocalStr.GetLength())); 2428 CFX_WideString::FromUTF8(szLocalStr.c_str(), szLocalStr.GetLength()));
2439 } 2429 }
2440 if (!pLocale) { 2430 if (!pLocale) {
2441 return; 2431 return;
2442 } 2432 }
2443 CFX_WideString strRet; 2433 CFX_WideString strRet;
2444 pLocale->GetTimePattern(strStyle, strRet); 2434 pLocale->GetTimePattern(strStyle, strRet);
2445 if (!bStandard) { 2435 if (!bStandard) {
2446 CFX_WideString wsSymbols; 2436 CFX_WideString wsSymbols;
2447 pLocale->GetDateTimeSymbols(wsSymbols); 2437 pLocale->GetDateTimeSymbols(wsSymbols);
2448 XFA_FM_AlternateDateTimeSymbols(strRet, wsSymbols, g_sAltTable_Time); 2438 XFA_FM_AlternateDateTimeSymbols(strRet, wsSymbols, g_sAltTable_Time);
(...skipping 1275 matching lines...) Expand 10 before | Expand all | Expand 10 after
3724 FXJSE_Value_Release(argOne); 3714 FXJSE_Value_Release(argOne);
3725 FXJSE_Value_Release(argTwo); 3715 FXJSE_Value_Release(argTwo);
3726 } else { 3716 } else {
3727 pContext->ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 3717 pContext->ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD,
3728 L"Decode"); 3718 L"Decode");
3729 } 3719 }
3730 } 3720 }
3731 void CXFA_FM2JSContext::DecodeURL(const CFX_ByteStringC& szURLString, 3721 void CXFA_FM2JSContext::DecodeURL(const CFX_ByteStringC& szURLString,
3732 CFX_ByteTextBuf& szResultString) { 3722 CFX_ByteTextBuf& szResultString) {
3733 CFX_WideString wsURLString = 3723 CFX_WideString wsURLString =
3734 CFX_WideString::FromUTF8(szURLString.GetCStr(), szURLString.GetLength()); 3724 CFX_WideString::FromUTF8(szURLString.c_str(), szURLString.GetLength());
3735 const FX_WCHAR* pData = wsURLString; 3725 const FX_WCHAR* pData = wsURLString;
3736 int32_t iLen = wsURLString.GetLength(); 3726 int32_t iLen = wsURLString.GetLength();
3737 int32_t i = 0; 3727 int32_t i = 0;
3738 FX_WCHAR ch = 0; 3728 FX_WCHAR ch = 0;
3739 FX_WCHAR chTemp = 0; 3729 FX_WCHAR chTemp = 0;
3740 CFX_WideTextBuf wsResultBuf; 3730 CFX_WideTextBuf wsResultBuf;
3741 while (i < iLen) { 3731 while (i < iLen) {
3742 ch = *(pData + i); 3732 ch = *(pData + i);
3743 if ('%' == ch) { 3733 if ('%' == ch) {
3744 chTemp = 0; 3734 chTemp = 0;
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
3778 } 3768 }
3779 ++i; 3769 ++i;
3780 } 3770 }
3781 wsResultBuf.AppendChar(0); 3771 wsResultBuf.AppendChar(0);
3782 szResultString.Clear(); 3772 szResultString.Clear();
3783 szResultString << FX_UTF8Encode(wsResultBuf.GetBuffer(), 3773 szResultString << FX_UTF8Encode(wsResultBuf.GetBuffer(),
3784 wsResultBuf.GetLength()); 3774 wsResultBuf.GetLength());
3785 } 3775 }
3786 void CXFA_FM2JSContext::DecodeHTML(const CFX_ByteStringC& szHTMLString, 3776 void CXFA_FM2JSContext::DecodeHTML(const CFX_ByteStringC& szHTMLString,
3787 CFX_ByteTextBuf& szResultString) { 3777 CFX_ByteTextBuf& szResultString) {
3788 CFX_WideString wsHTMLString = CFX_WideString::FromUTF8( 3778 CFX_WideString wsHTMLString =
3789 szHTMLString.GetCStr(), szHTMLString.GetLength()); 3779 CFX_WideString::FromUTF8(szHTMLString.c_str(), szHTMLString.GetLength());
3790 FX_WCHAR strString[9]; 3780 FX_WCHAR strString[9];
3791 int32_t iStrIndex = 0; 3781 int32_t iStrIndex = 0;
3792 int32_t iLen = wsHTMLString.GetLength(); 3782 int32_t iLen = wsHTMLString.GetLength();
3793 int32_t i = 0; 3783 int32_t i = 0;
3794 int32_t iCode = 0; 3784 int32_t iCode = 0;
3795 FX_WCHAR ch = 0; 3785 FX_WCHAR ch = 0;
3796 const FX_WCHAR* pData = wsHTMLString; 3786 const FX_WCHAR* pData = wsHTMLString;
3797 CFX_WideTextBuf wsResultBuf; 3787 CFX_WideTextBuf wsResultBuf;
3798 while (i < iLen) { 3788 while (i < iLen) {
3799 ch = *(pData + i); 3789 ch = *(pData + i);
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
3853 ++i; 3843 ++i;
3854 } 3844 }
3855 wsResultBuf.AppendChar(0); 3845 wsResultBuf.AppendChar(0);
3856 szResultString.Clear(); 3846 szResultString.Clear();
3857 szResultString << FX_UTF8Encode(wsResultBuf.GetBuffer(), 3847 szResultString << FX_UTF8Encode(wsResultBuf.GetBuffer(),
3858 wsResultBuf.GetLength()); 3848 wsResultBuf.GetLength());
3859 } 3849 }
3860 void CXFA_FM2JSContext::DecodeXML(const CFX_ByteStringC& szXMLString, 3850 void CXFA_FM2JSContext::DecodeXML(const CFX_ByteStringC& szXMLString,
3861 CFX_ByteTextBuf& szResultString) { 3851 CFX_ByteTextBuf& szResultString) {
3862 CFX_WideString wsXMLString = 3852 CFX_WideString wsXMLString =
3863 CFX_WideString::FromUTF8(szXMLString.GetCStr(), szXMLString.GetLength()); 3853 CFX_WideString::FromUTF8(szXMLString.c_str(), szXMLString.GetLength());
3864 FX_WCHAR strString[9]; 3854 FX_WCHAR strString[9];
3865 int32_t iStrIndex = 0; 3855 int32_t iStrIndex = 0;
3866 int32_t iLen = wsXMLString.GetLength(); 3856 int32_t iLen = wsXMLString.GetLength();
3867 int32_t i = 0; 3857 int32_t i = 0;
3868 int32_t iCode = 0; 3858 int32_t iCode = 0;
3869 FX_WCHAR ch = 0; 3859 FX_WCHAR ch = 0;
3870 const FX_WCHAR* pData = wsXMLString; 3860 const FX_WCHAR* pData = wsXMLString;
3871 CFX_WideTextBuf wsXMLBuf; 3861 CFX_WideTextBuf wsXMLBuf;
3872 while (i < iLen) { 3862 while (i < iLen) {
3873 ch = *(pData + i); 3863 ch = *(pData + i);
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
3997 FXJSE_Value_Release(argOne); 3987 FXJSE_Value_Release(argOne);
3998 FXJSE_Value_Release(argTwo); 3988 FXJSE_Value_Release(argTwo);
3999 } else { 3989 } else {
4000 pContext->ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 3990 pContext->ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD,
4001 L"Encode"); 3991 L"Encode");
4002 } 3992 }
4003 } 3993 }
4004 void CXFA_FM2JSContext::EncodeURL(const CFX_ByteStringC& szURLString, 3994 void CXFA_FM2JSContext::EncodeURL(const CFX_ByteStringC& szURLString,
4005 CFX_ByteTextBuf& szResultBuf) { 3995 CFX_ByteTextBuf& szResultBuf) {
4006 CFX_WideString wsURLString = 3996 CFX_WideString wsURLString =
4007 CFX_WideString::FromUTF8(szURLString.GetCStr(), szURLString.GetLength()); 3997 CFX_WideString::FromUTF8(szURLString.c_str(), szURLString.GetLength());
4008 CFX_WideTextBuf wsResultBuf; 3998 CFX_WideTextBuf wsResultBuf;
4009 FX_WCHAR ch = 0; 3999 FX_WCHAR ch = 0;
4010 int32_t iLength = wsURLString.GetLength(); 4000 int32_t iLength = wsURLString.GetLength();
4011 FX_WCHAR strEncode[4]; 4001 FX_WCHAR strEncode[4];
4012 strEncode[0] = '%'; 4002 strEncode[0] = '%';
4013 strEncode[3] = 0; 4003 strEncode[3] = 0;
4014 FX_WCHAR strUnsafe[] = {' ', '<', '>', '"', '#', '%', '{', '}', 4004 FX_WCHAR strUnsafe[] = {' ', '<', '>', '"', '#', '%', '{', '}',
4015 '|', '\\', '^', '~', '[', ']', '`'}; 4005 '|', '\\', '^', '~', '[', ']', '`'};
4016 FX_WCHAR strReserved[] = {';', '/', '?', ':', '@', '=', '&'}; 4006 FX_WCHAR strReserved[] = {';', '/', '?', ':', '@', '=', '&'};
4017 FX_WCHAR strSpecial[] = {'$', '-', '+', '!', '*', '\'', '(', ')', ','}; 4007 FX_WCHAR strSpecial[] = {'$', '-', '+', '!', '*', '\'', '(', ')', ','};
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
4104 } 4094 }
4105 } 4095 }
4106 } 4096 }
4107 wsResultBuf.AppendChar(0); 4097 wsResultBuf.AppendChar(0);
4108 szResultBuf.Clear(); 4098 szResultBuf.Clear();
4109 szResultBuf << FX_UTF8Encode(wsResultBuf.GetBuffer(), 4099 szResultBuf << FX_UTF8Encode(wsResultBuf.GetBuffer(),
4110 wsResultBuf.GetLength()); 4100 wsResultBuf.GetLength());
4111 } 4101 }
4112 void CXFA_FM2JSContext::EncodeHTML(const CFX_ByteStringC& szHTMLString, 4102 void CXFA_FM2JSContext::EncodeHTML(const CFX_ByteStringC& szHTMLString,
4113 CFX_ByteTextBuf& szResultBuf) { 4103 CFX_ByteTextBuf& szResultBuf) {
4114 CFX_ByteString str = szHTMLString.GetCStr(); 4104 CFX_ByteString str = szHTMLString.c_str();
4115 CFX_WideString wsHTMLString = CFX_WideString::FromUTF8(str, str.GetLength()); 4105 CFX_WideString wsHTMLString = CFX_WideString::FromUTF8(str, str.GetLength());
4116 const FX_WCHAR* strCode = L"0123456789abcdef"; 4106 const FX_WCHAR* strCode = L"0123456789abcdef";
4117 FX_WCHAR strEncode[9]; 4107 FX_WCHAR strEncode[9];
4118 strEncode[0] = '&'; 4108 strEncode[0] = '&';
4119 strEncode[1] = '#'; 4109 strEncode[1] = '#';
4120 strEncode[2] = 'x'; 4110 strEncode[2] = 'x';
4121 strEncode[5] = ';'; 4111 strEncode[5] = ';';
4122 strEncode[6] = 0; 4112 strEncode[6] = 0;
4123 strEncode[7] = ';'; 4113 strEncode[7] = ';';
4124 strEncode[8] = 0; 4114 strEncode[8] = 0;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
4159 ++i; 4149 ++i;
4160 } 4150 }
4161 wsResultBuf.AppendChar(0); 4151 wsResultBuf.AppendChar(0);
4162 szResultBuf.Clear(); 4152 szResultBuf.Clear();
4163 szResultBuf << FX_UTF8Encode(wsResultBuf.GetBuffer(), 4153 szResultBuf << FX_UTF8Encode(wsResultBuf.GetBuffer(),
4164 wsResultBuf.GetLength()); 4154 wsResultBuf.GetLength());
4165 } 4155 }
4166 void CXFA_FM2JSContext::EncodeXML(const CFX_ByteStringC& szXMLString, 4156 void CXFA_FM2JSContext::EncodeXML(const CFX_ByteStringC& szXMLString,
4167 CFX_ByteTextBuf& szResultBuf) { 4157 CFX_ByteTextBuf& szResultBuf) {
4168 CFX_WideString wsXMLString = 4158 CFX_WideString wsXMLString =
4169 CFX_WideString::FromUTF8(szXMLString.GetCStr(), szXMLString.GetLength()); 4159 CFX_WideString::FromUTF8(szXMLString.c_str(), szXMLString.GetLength());
4170 CFX_WideTextBuf wsResultBuf; 4160 CFX_WideTextBuf wsResultBuf;
4171 enum { 4161 enum {
4172 QUOT, 4162 QUOT,
4173 AMP, 4163 AMP,
4174 APOS, 4164 APOS,
4175 LT, 4165 LT,
4176 GT, 4166 GT,
4177 }; 4167 };
4178 FX_WCHAR strEncode[9]; 4168 FX_WCHAR strEncode[9];
4179 strEncode[0] = '&'; 4169 strEncode[0] = '&';
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
4283 iEnd = iMid - 1; 4273 iEnd = iMid - 1;
4284 } else { 4274 } else {
4285 iStart = iMid + 1; 4275 iStart = iMid + 1;
4286 } 4276 }
4287 } while (iStart <= iEnd); 4277 } while (iStart <= iEnd);
4288 return FALSE; 4278 return FALSE;
4289 } 4279 }
4290 static FX_BOOL XFA_PATTERN_STRING_Type(const CFX_ByteStringC& szPattern, 4280 static FX_BOOL XFA_PATTERN_STRING_Type(const CFX_ByteStringC& szPattern,
4291 uint32_t& patternType) { 4281 uint32_t& patternType) {
4292 CFX_WideString wsPattern = 4282 CFX_WideString wsPattern =
4293 CFX_WideString::FromUTF8(szPattern.GetCStr(), szPattern.GetLength()); 4283 CFX_WideString::FromUTF8(szPattern.c_str(), szPattern.GetLength());
4294 if (FX_WSTRC(L"datetime") == wsPattern.Left(8)) { 4284 if (FX_WSTRC(L"datetime") == wsPattern.Left(8)) {
4295 patternType = XFA_VT_DATETIME; 4285 patternType = XFA_VT_DATETIME;
4296 return TRUE; 4286 return TRUE;
4297 } else if (FX_WSTRC(L"date") == wsPattern.Left(4)) { 4287 } else if (FX_WSTRC(L"date") == wsPattern.Left(4)) {
4298 patternType = wsPattern.Find(L"time") > 0 ? XFA_VT_DATETIME : XFA_VT_DATE; 4288 patternType = wsPattern.Find(L"time") > 0 ? XFA_VT_DATETIME : XFA_VT_DATE;
4299 return TRUE; 4289 return TRUE;
4300 } else if (FX_WSTRC(L"time") == wsPattern.Left(4)) { 4290 } else if (FX_WSTRC(L"time") == wsPattern.Left(4)) {
4301 patternType = XFA_VT_TIME; 4291 patternType = XFA_VT_TIME;
4302 return TRUE; 4292 return TRUE;
4303 } else if (FX_WSTRC(L"text") == wsPattern.Left(4)) { 4293 } else if (FX_WSTRC(L"text") == wsPattern.Left(4)) {
(...skipping 943 matching lines...) Expand 10 before | Expand all | Expand 10 after
5247 CFX_ByteStringC pCapUnits[] = {"Zero", "One", "Two", "Three", "Four", 5237 CFX_ByteStringC pCapUnits[] = {"Zero", "One", "Two", "Three", "Four",
5248 "Five", "Six", "Seven", "Eight", "Nine"}; 5238 "Five", "Six", "Seven", "Eight", "Nine"};
5249 CFX_ByteStringC pTens[] = {"Ten", "Eleven", "Twelve", "Thirteen", 5239 CFX_ByteStringC pTens[] = {"Ten", "Eleven", "Twelve", "Thirteen",
5250 "Fourteen", "Fifteen", "Sixteen", "Seventeen", 5240 "Fourteen", "Fifteen", "Sixteen", "Seventeen",
5251 "Eighteen", "Nineteen"}; 5241 "Eighteen", "Nineteen"};
5252 CFX_ByteStringC pLastTens[] = {"Twenty", "Thirty", "Forty", "Fifty", 5242 CFX_ByteStringC pLastTens[] = {"Twenty", "Thirty", "Forty", "Fifty",
5253 "Sixty", "Seventy", "Eighty", "Ninety"}; 5243 "Sixty", "Seventy", "Eighty", "Ninety"};
5254 CFX_ByteStringC pComm[] = {" Hundred ", " Thousand ", " Million ", 5244 CFX_ByteStringC pComm[] = {" Hundred ", " Thousand ", " Million ",
5255 " Billion ", "Trillion"}; 5245 " Billion ", "Trillion"};
5256 int32_t iComm = 0; 5246 int32_t iComm = 0;
5257 const FX_CHAR* pData = szData.GetCStr(); 5247 const FX_CHAR* pData = szData.c_str();
5258 int32_t iLength = szData.GetLength(); 5248 int32_t iLength = szData.GetLength();
5259 if (iLength > 12) { 5249 if (iLength > 12) {
5260 iComm = 4; 5250 iComm = 4;
5261 } else if (iLength > 9) { 5251 } else if (iLength > 9) {
5262 iComm = 3; 5252 iComm = 3;
5263 } else if (iLength > 6) { 5253 } else if (iLength > 6) {
5264 iComm = 2; 5254 iComm = 2;
5265 } else if (iLength > 3) { 5255 } else if (iLength > 3) {
5266 iComm = 1; 5256 iComm = 1;
5267 } 5257 }
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
5333 if (iIndex < iLength - 3) { 5323 if (iIndex < iLength - 3) {
5334 strBuf << pComm[iComm]; 5324 strBuf << pComm[iComm];
5335 --iComm; 5325 --iComm;
5336 } 5326 }
5337 iIndex += 3; 5327 iIndex += 3;
5338 } 5328 }
5339 } 5329 }
5340 void CXFA_FM2JSContext::WordUS(const CFX_ByteStringC& szData, 5330 void CXFA_FM2JSContext::WordUS(const CFX_ByteStringC& szData,
5341 int32_t iStyle, 5331 int32_t iStyle,
5342 CFX_ByteTextBuf& strBuf) { 5332 CFX_ByteTextBuf& strBuf) {
5343 const FX_CHAR* pData = szData.GetCStr(); 5333 const FX_CHAR* pData = szData.c_str();
5344 int32_t iLength = szData.GetLength(); 5334 int32_t iLength = szData.GetLength();
5345 switch (iStyle) { 5335 switch (iStyle) {
5346 case 0: { 5336 case 0: {
5347 int32_t iIndex = 0; 5337 int32_t iIndex = 0;
5348 while (iIndex < iLength) { 5338 while (iIndex < iLength) {
5349 if (*(pData + iIndex) == '.') { 5339 if (*(pData + iIndex) == '.') {
5350 break; 5340 break;
5351 } 5341 }
5352 ++iIndex; 5342 ++iIndex;
5353 } 5343 }
(...skipping 1479 matching lines...) Expand 10 before | Expand all | Expand 10 after
6833 CXFA_Document* pDoc = pContext->GetDocument(); 6823 CXFA_Document* pDoc = pContext->GetDocument();
6834 if (!pDoc) { 6824 if (!pDoc) {
6835 return bFlags; 6825 return bFlags;
6836 } 6826 }
6837 CXFA_ScriptContext* pScriptContext = pDoc->GetScriptContext(); 6827 CXFA_ScriptContext* pScriptContext = pDoc->GetScriptContext();
6838 XFA_RESOLVENODE_RS resoveNodeRS; 6828 XFA_RESOLVENODE_RS resoveNodeRS;
6839 uint32_t dwFlags = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_Properties | 6829 uint32_t dwFlags = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_Properties |
6840 XFA_RESOLVENODE_Siblings | XFA_RESOLVENODE_Parent; 6830 XFA_RESOLVENODE_Siblings | XFA_RESOLVENODE_Parent;
6841 int32_t iRet = pScriptContext->ResolveObjects( 6831 int32_t iRet = pScriptContext->ResolveObjects(
6842 pScriptContext->GetThisObject(), 6832 pScriptContext->GetThisObject(),
6843 CFX_WideString::FromUTF8(szAccessorName.GetCStr(), 6833 CFX_WideString::FromUTF8(szAccessorName.c_str(),
6844 szAccessorName.GetLength()), 6834 szAccessorName.GetLength()),
6845 resoveNodeRS, dwFlags); 6835 resoveNodeRS, dwFlags);
6846 if (iRet >= 1 && resoveNodeRS.dwFlags == XFA_RESOVENODE_RSTYPE_Nodes) { 6836 if (iRet >= 1 && resoveNodeRS.dwFlags == XFA_RESOVENODE_RSTYPE_Nodes) {
6847 FXJSE_Value_Set(accessorValue, pScriptContext->GetJSValueFromMap( 6837 FXJSE_Value_Set(accessorValue, pScriptContext->GetJSValueFromMap(
6848 resoveNodeRS.nodes.GetAt(0))); 6838 resoveNodeRS.nodes.GetAt(0)));
6849 bFlags = TRUE; 6839 bFlags = TRUE;
6850 } 6840 }
6851 return bFlags; 6841 return bFlags;
6852 } 6842 }
6853 int32_t CXFA_FM2JSContext::ResolveObjects(FXJSE_HOBJECT hThis, 6843 int32_t CXFA_FM2JSContext::ResolveObjects(FXJSE_HOBJECT hThis,
6854 FXJSE_HVALUE hRefValue, 6844 FXJSE_HVALUE hRefValue,
6855 const CFX_ByteStringC& bsSomExp, 6845 const CFX_ByteStringC& bsSomExp,
6856 XFA_RESOLVENODE_RS& resoveNodeRS, 6846 XFA_RESOLVENODE_RS& resoveNodeRS,
6857 FX_BOOL bdotAccessor, 6847 FX_BOOL bdotAccessor,
6858 FX_BOOL bHasNoResolveName) { 6848 FX_BOOL bHasNoResolveName) {
6859 CFX_WideString wsSomExpression = 6849 CFX_WideString wsSomExpression =
6860 CFX_WideString::FromUTF8(bsSomExp.GetCStr(), bsSomExp.GetLength()); 6850 CFX_WideString::FromUTF8(bsSomExp.c_str(), bsSomExp.GetLength());
6861 int32_t iRet = -1; 6851 int32_t iRet = -1;
6862 CXFA_FM2JSContext* pContext = 6852 CXFA_FM2JSContext* pContext =
6863 (CXFA_FM2JSContext*)FXJSE_Value_ToObject(hThis, NULL); 6853 (CXFA_FM2JSContext*)FXJSE_Value_ToObject(hThis, NULL);
6864 CXFA_Document* pDoc = pContext->GetDocument(); 6854 CXFA_Document* pDoc = pContext->GetDocument();
6865 if (!pDoc) { 6855 if (!pDoc) {
6866 return iRet; 6856 return iRet;
6867 } 6857 }
6868 CXFA_ScriptContext* pScriptContext = pDoc->GetScriptContext(); 6858 CXFA_ScriptContext* pScriptContext = pDoc->GetScriptContext();
6869 CXFA_Object* pNode = NULL; 6859 CXFA_Object* pNode = NULL;
6870 uint32_t dFlags = 0UL; 6860 uint32_t dFlags = 0UL;
(...skipping 343 matching lines...) Expand 10 before | Expand all | Expand 10 after
7214 FXSYS_assert(pAppProvider); 7204 FXSYS_assert(pAppProvider);
7215 CFX_WideString wsFormat; 7205 CFX_WideString wsFormat;
7216 pAppProvider->LoadString(iStringID, wsFormat); 7206 pAppProvider->LoadString(iStringID, wsFormat);
7217 CFX_WideString wsMessage; 7207 CFX_WideString wsMessage;
7218 va_list arg_ptr; 7208 va_list arg_ptr;
7219 va_start(arg_ptr, iStringID); 7209 va_start(arg_ptr, iStringID);
7220 wsMessage.FormatV((const FX_WCHAR*)wsFormat, arg_ptr); 7210 wsMessage.FormatV((const FX_WCHAR*)wsFormat, arg_ptr);
7221 va_end(arg_ptr); 7211 va_end(arg_ptr);
7222 FXJSE_ThrowMessage("", FX_UTF8Encode(wsMessage, wsMessage.GetLength())); 7212 FXJSE_ThrowMessage("", FX_UTF8Encode(wsMessage, wsMessage.GetLength()));
7223 } 7213 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698