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

Side by Side Diff: xfa/fxfa/parser/xfa_locale.cpp

Issue 1841173002: Rename GetElementValue() to GetDirectObject{By,At}(). (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Use "At" for arrays. 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/parser/xfa_locale.h" 7 #include "xfa/fxfa/parser/xfa_locale.h"
8 8
9 #include "core/fxcrt/include/fx_xml.h" 9 #include "core/fxcrt/include/fx_xml.h"
10 #include "xfa/fxfa/fm2js/xfa_fm2jsapi.h" 10 #include "xfa/fxfa/fm2js/xfa_fm2jsapi.h"
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 bsSymbols = "currencySymbols"; 65 bsSymbols = "currencySymbols";
66 wsName = FX_WSTRC(L"symbol"); 66 wsName = FX_WSTRC(L"symbol");
67 break; 67 break;
68 case FX_LOCALENUMSYMBOL_CurrencyName: 68 case FX_LOCALENUMSYMBOL_CurrencyName:
69 bsSymbols = "currencySymbols"; 69 bsSymbols = "currencySymbols";
70 wsName = FX_WSTRC(L"isoname"); 70 wsName = FX_WSTRC(L"isoname");
71 break; 71 break;
72 default: 72 default:
73 return; 73 return;
74 } 74 }
75 CXML_Element* pElement = m_pLocaleData->GetElement("", bsSymbols); 75 CXML_Element* pElement = m_pLocaleData->GetObjectBy("", bsSymbols);
76 if (!pElement) { 76 if (!pElement) {
77 return; 77 return;
78 } 78 }
79 GetPattern(pElement, CFX_ByteStringC((const FX_CHAR*)bsSymbols, 79 GetPattern(pElement, CFX_ByteStringC((const FX_CHAR*)bsSymbols,
80 bsSymbols.GetLength() - 1), 80 bsSymbols.GetLength() - 1),
81 wsName, wsNumSymbol); 81 wsName, wsNumSymbol);
82 } 82 }
83 void CXFA_XMLLocale::GetDateTimeSymbols(CFX_WideString& wsDtSymbol) const { 83 void CXFA_XMLLocale::GetDateTimeSymbols(CFX_WideString& wsDtSymbol) const {
84 if (!m_pLocaleData) { 84 if (!m_pLocaleData) {
85 return; 85 return;
86 } 86 }
87 CFX_ByteString bsSpace; 87 CFX_ByteString bsSpace;
88 CXML_Element* pNumberSymbols = 88 CXML_Element* pNumberSymbols =
89 m_pLocaleData->GetElement(bsSpace, "dateTimeSymbols"); 89 m_pLocaleData->GetObjectBy(bsSpace, "dateTimeSymbols");
90 if (!pNumberSymbols) { 90 if (!pNumberSymbols) {
91 return; 91 return;
92 } 92 }
93 wsDtSymbol = pNumberSymbols->GetContent(0); 93 wsDtSymbol = pNumberSymbols->GetContent(0);
94 } 94 }
95 void CXFA_XMLLocale::GetMonthName(int32_t nMonth, 95 void CXFA_XMLLocale::GetMonthName(int32_t nMonth,
96 CFX_WideString& wsMonthName, 96 CFX_WideString& wsMonthName,
97 FX_BOOL bAbbr) const { 97 FX_BOOL bAbbr) const {
98 wsMonthName = GetCalendarSymbol("month", nMonth, bAbbr); 98 wsMonthName = GetCalendarSymbol("month", nMonth, bAbbr);
99 } 99 }
(...skipping 12 matching lines...) Expand all
112 } 112 }
113 void CXFA_XMLLocale::GetEraName(CFX_WideString& wsEraName, FX_BOOL bAD) const { 113 void CXFA_XMLLocale::GetEraName(CFX_WideString& wsEraName, FX_BOOL bAD) const {
114 wsEraName = GetCalendarSymbol("era", bAD ? 1 : 0, FALSE); 114 wsEraName = GetCalendarSymbol("era", bAD ? 1 : 0, FALSE);
115 } 115 }
116 CFX_WideString CXFA_XMLLocale::GetCalendarSymbol(const CFX_ByteStringC& symbol, 116 CFX_WideString CXFA_XMLLocale::GetCalendarSymbol(const CFX_ByteStringC& symbol,
117 int index, 117 int index,
118 FX_BOOL bAbbr) const { 118 FX_BOOL bAbbr) const {
119 CFX_ByteString pstrSymbolNames = symbol + "Names"; 119 CFX_ByteString pstrSymbolNames = symbol + "Names";
120 CFX_WideString wsSymbolName = L""; 120 CFX_WideString wsSymbolName = L"";
121 if (m_pLocaleData) { 121 if (m_pLocaleData) {
122 CXML_Element* pChild = m_pLocaleData->GetElement("", "calendarSymbols"); 122 CXML_Element* pChild = m_pLocaleData->GetObjectBy("", "calendarSymbols");
123 if (pChild) { 123 if (pChild) {
124 CXML_Element* pSymbolNames = pChild->GetElement("", pstrSymbolNames); 124 CXML_Element* pSymbolNames = pChild->GetObjectBy("", pstrSymbolNames);
125 if (pSymbolNames) { 125 if (pSymbolNames) {
126 if (pSymbolNames->GetAttrInteger("abbr") != bAbbr) { 126 if (pSymbolNames->GetAttrInteger("abbr") != bAbbr) {
127 pSymbolNames = pChild->GetElement("", pstrSymbolNames, 1); 127 pSymbolNames = pChild->GetObjectBy("", pstrSymbolNames, 1);
128 } 128 }
129 if (pSymbolNames && pSymbolNames->GetAttrInteger("abbr") == bAbbr) { 129 if (pSymbolNames && pSymbolNames->GetAttrInteger("abbr") == bAbbr) {
130 CXML_Element* pSymbolName = 130 CXML_Element* pSymbolName =
131 pSymbolNames->GetElement("", symbol, index); 131 pSymbolNames->GetObjectBy("", symbol, index);
132 if (pSymbolName) { 132 if (pSymbolName) {
133 wsSymbolName = pSymbolName->GetContent(0); 133 wsSymbolName = pSymbolName->GetContent(0);
134 } 134 }
135 } 135 }
136 } 136 }
137 } 137 }
138 } 138 }
139 return wsSymbolName; 139 return wsSymbolName;
140 } 140 }
141 void CXFA_XMLLocale::GetDatePattern(FX_LOCALEDATETIMESUBCATEGORY eType, 141 void CXFA_XMLLocale::GetDatePattern(FX_LOCALEDATETIMESUBCATEGORY eType,
142 CFX_WideString& wsPattern) const { 142 CFX_WideString& wsPattern) const {
143 CXML_Element* pElement = m_pLocaleData->GetElement("", "datePatterns"); 143 CXML_Element* pElement = m_pLocaleData->GetObjectBy("", "datePatterns");
144 if (pElement == NULL) { 144 if (pElement == NULL) {
145 return; 145 return;
146 } 146 }
147 CFX_WideString wsName; 147 CFX_WideString wsName;
148 switch (eType) { 148 switch (eType) {
149 case FX_LOCALEDATETIMESUBCATEGORY_Short: 149 case FX_LOCALEDATETIMESUBCATEGORY_Short:
150 wsName = L"short"; 150 wsName = L"short";
151 break; 151 break;
152 case FX_LOCALEDATETIMESUBCATEGORY_Default: 152 case FX_LOCALEDATETIMESUBCATEGORY_Default:
153 case FX_LOCALEDATETIMESUBCATEGORY_Medium: 153 case FX_LOCALEDATETIMESUBCATEGORY_Medium:
154 wsName = L"med"; 154 wsName = L"med";
155 break; 155 break;
156 case FX_LOCALEDATETIMESUBCATEGORY_Full: 156 case FX_LOCALEDATETIMESUBCATEGORY_Full:
157 wsName = L"full"; 157 wsName = L"full";
158 break; 158 break;
159 case FX_LOCALEDATETIMESUBCATEGORY_Long: 159 case FX_LOCALEDATETIMESUBCATEGORY_Long:
160 wsName = L"long"; 160 wsName = L"long";
161 break; 161 break;
162 } 162 }
163 GetPattern(pElement, "datePattern", wsName, wsPattern); 163 GetPattern(pElement, "datePattern", wsName, wsPattern);
164 } 164 }
165 void CXFA_XMLLocale::GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY eType, 165 void CXFA_XMLLocale::GetTimePattern(FX_LOCALEDATETIMESUBCATEGORY eType,
166 CFX_WideString& wsPattern) const { 166 CFX_WideString& wsPattern) const {
167 CXML_Element* pElement = m_pLocaleData->GetElement("", "timePatterns"); 167 CXML_Element* pElement = m_pLocaleData->GetObjectBy("", "timePatterns");
168 if (pElement == NULL) { 168 if (pElement == NULL) {
169 return; 169 return;
170 } 170 }
171 CFX_WideString wsName; 171 CFX_WideString wsName;
172 switch (eType) { 172 switch (eType) {
173 case FX_LOCALEDATETIMESUBCATEGORY_Short: 173 case FX_LOCALEDATETIMESUBCATEGORY_Short:
174 wsName = L"short"; 174 wsName = L"short";
175 break; 175 break;
176 case FX_LOCALEDATETIMESUBCATEGORY_Default: 176 case FX_LOCALEDATETIMESUBCATEGORY_Default:
177 case FX_LOCALEDATETIMESUBCATEGORY_Medium: 177 case FX_LOCALEDATETIMESUBCATEGORY_Medium:
178 wsName = L"med"; 178 wsName = L"med";
179 break; 179 break;
180 case FX_LOCALEDATETIMESUBCATEGORY_Full: 180 case FX_LOCALEDATETIMESUBCATEGORY_Full:
181 wsName = L"full"; 181 wsName = L"full";
182 break; 182 break;
183 case FX_LOCALEDATETIMESUBCATEGORY_Long: 183 case FX_LOCALEDATETIMESUBCATEGORY_Long:
184 wsName = L"long"; 184 wsName = L"long";
185 break; 185 break;
186 } 186 }
187 GetPattern(pElement, "timePattern", wsName, wsPattern); 187 GetPattern(pElement, "timePattern", wsName, wsPattern);
188 } 188 }
189 void CXFA_XMLLocale::GetNumPattern(FX_LOCALENUMSUBCATEGORY eType, 189 void CXFA_XMLLocale::GetNumPattern(FX_LOCALENUMSUBCATEGORY eType,
190 CFX_WideString& wsPattern) const { 190 CFX_WideString& wsPattern) const {
191 CXML_Element* pElement = m_pLocaleData->GetElement("", "numberPatterns"); 191 CXML_Element* pElement = m_pLocaleData->GetObjectBy("", "numberPatterns");
192 if (pElement == NULL) { 192 if (pElement == NULL) {
193 return; 193 return;
194 } 194 }
195 switch (eType) { 195 switch (eType) {
196 case FX_LOCALENUMPATTERN_Percent: 196 case FX_LOCALENUMPATTERN_Percent:
197 wsPattern = g_FX_Percent; 197 wsPattern = g_FX_Percent;
198 break; 198 break;
199 case FX_LOCALENUMPATTERN_Currency: 199 case FX_LOCALENUMPATTERN_Currency:
200 wsPattern = g_FX_Currency; 200 wsPattern = g_FX_Currency;
201 break; 201 break;
202 case FX_LOCALENUMPATTERN_Decimal: 202 case FX_LOCALENUMPATTERN_Decimal:
203 wsPattern = g_FX_Decimal; 203 wsPattern = g_FX_Decimal;
204 break; 204 break;
205 case FX_LOCALENUMPATTERN_Integer: 205 case FX_LOCALENUMPATTERN_Integer:
206 wsPattern = g_FX_Integer; 206 wsPattern = g_FX_Integer;
207 break; 207 break;
208 } 208 }
209 } 209 }
210 void CXFA_XMLLocale::GetPattern(CXML_Element* pElement, 210 void CXFA_XMLLocale::GetPattern(CXML_Element* pElement,
211 const CFX_ByteStringC& bsTag, 211 const CFX_ByteStringC& bsTag,
212 const CFX_WideStringC& wsName, 212 const CFX_WideStringC& wsName,
213 CFX_WideString& wsPattern) const { 213 CFX_WideString& wsPattern) const {
214 int32_t iCount = pElement->CountElements("", bsTag); 214 int32_t iCount = pElement->CountElements("", bsTag);
215 for (int32_t i = 0; i < iCount; i++) { 215 for (int32_t i = 0; i < iCount; i++) {
216 CXML_Element* pChild = pElement->GetElement("", bsTag, i); 216 CXML_Element* pChild = pElement->GetObjectBy("", bsTag, i);
217 if (pChild->GetAttrValue("name") == wsName) { 217 if (pChild->GetAttrValue("name") == wsName) {
218 wsPattern = pChild->GetContent(0); 218 wsPattern = pChild->GetContent(0);
219 return; 219 return;
220 } 220 }
221 } 221 }
222 } 222 }
223 CXFA_NodeLocale::CXFA_NodeLocale(CXFA_Node* pLocale) { 223 CXFA_NodeLocale::CXFA_NodeLocale(CXFA_Node* pLocale) {
224 m_pLocale = pLocale; 224 m_pLocale = pLocale;
225 } 225 }
226 CXFA_NodeLocale::~CXFA_NodeLocale() {} 226 CXFA_NodeLocale::~CXFA_NodeLocale() {}
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
368 CXFA_Node* pNode = pCalendar->GetFirstChildByClass(eElement); 368 CXFA_Node* pNode = pCalendar->GetFirstChildByClass(eElement);
369 for (; pNode; pNode = pNode->GetNextSameClassSibling(eElement)) { 369 for (; pNode; pNode = pNode->GetNextSameClassSibling(eElement)) {
370 if (pNode->GetBoolean(XFA_ATTRIBUTE_Abbr) == bAbbr) { 370 if (pNode->GetBoolean(XFA_ATTRIBUTE_Abbr) == bAbbr) {
371 CXFA_Node* pSymbol = pNode->GetChild(index, XFA_ELEMENT_UNKNOWN); 371 CXFA_Node* pSymbol = pNode->GetChild(index, XFA_ELEMENT_UNKNOWN);
372 return pSymbol ? pSymbol->GetContent() : CFX_WideString(); 372 return pSymbol ? pSymbol->GetContent() : CFX_WideString();
373 } 373 }
374 } 374 }
375 } 375 }
376 return CFX_WideString(); 376 return CFX_WideString();
377 } 377 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698