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

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

Issue 1830323006: Remove FX_DWORD from XFA. (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/parser/xfa_document_datamerger_imp.h" 7 #include "xfa/fxfa/parser/xfa_document_datamerger_imp.h"
8 8
9 #include "core/fxcrt/include/fx_ext.h" 9 #include "core/fxcrt/include/fx_ext.h"
10 #include "xfa/fxfa/fm2js/xfa_fm2jsapi.h" 10 #include "xfa/fxfa/fm2js/xfa_fm2jsapi.h"
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after
333 case XFA_ELEMENT_Signature: 333 case XFA_ELEMENT_Signature:
334 case XFA_ELEMENT_TextEdit: 334 case XFA_ELEMENT_TextEdit:
335 default: 335 default:
336 XFA_DataMerge_FormValueNode_SetChildContent( 336 XFA_DataMerge_FormValueNode_SetChildContent(
337 defValue.GetNode(), wsNormailizeValue, XFA_ELEMENT_Text); 337 defValue.GetNode(), wsNormailizeValue, XFA_ELEMENT_Text);
338 break; 338 break;
339 } 339 }
340 } 340 }
341 } 341 }
342 static CXFA_Node* XFA_DataMerge_GetGlobalBinding(CXFA_Document* pDocument, 342 static CXFA_Node* XFA_DataMerge_GetGlobalBinding(CXFA_Document* pDocument,
343 FX_DWORD dwNameHash) { 343 uint32_t dwNameHash) {
344 CXFA_Node* pNode = NULL; 344 CXFA_Node* pNode = NULL;
345 pDocument->m_rgGlobalBinding.Lookup(dwNameHash, pNode); 345 pDocument->m_rgGlobalBinding.Lookup(dwNameHash, pNode);
346 return pNode; 346 return pNode;
347 } 347 }
348 static void XFA_DataMerge_RegisterGlobalBinding(CXFA_Document* pDocument, 348 static void XFA_DataMerge_RegisterGlobalBinding(CXFA_Document* pDocument,
349 FX_DWORD dwNameHash, 349 uint32_t dwNameHash,
350 CXFA_Node* pDataNode) { 350 CXFA_Node* pDataNode) {
351 pDocument->m_rgGlobalBinding.SetAt(dwNameHash, pDataNode); 351 pDocument->m_rgGlobalBinding.SetAt(dwNameHash, pDataNode);
352 } 352 }
353 static void XFA_DataMerge_ClearGlobalBinding(CXFA_Document* pDocument) { 353 static void XFA_DataMerge_ClearGlobalBinding(CXFA_Document* pDocument) {
354 pDocument->m_rgGlobalBinding.RemoveAll(); 354 pDocument->m_rgGlobalBinding.RemoveAll();
355 } 355 }
356 static CXFA_Node* XFA_DataMerge_ScopeMatchGlobalBinding( 356 static CXFA_Node* XFA_DataMerge_ScopeMatchGlobalBinding(
357 CXFA_Node* pDataScope, 357 CXFA_Node* pDataScope,
358 FX_DWORD dwNameHash, 358 uint32_t dwNameHash,
359 XFA_ELEMENT eMatchDataNodeType, 359 XFA_ELEMENT eMatchDataNodeType,
360 FX_BOOL bUpLevel = TRUE) { 360 FX_BOOL bUpLevel = TRUE) {
361 for (CXFA_Node *pCurDataScope = pDataScope, *pLastDataScope = NULL; 361 for (CXFA_Node *pCurDataScope = pDataScope, *pLastDataScope = NULL;
362 pCurDataScope && pCurDataScope->GetPacketID() == XFA_XDPPACKET_Datasets; 362 pCurDataScope && pCurDataScope->GetPacketID() == XFA_XDPPACKET_Datasets;
363 pLastDataScope = pCurDataScope, 363 pLastDataScope = pCurDataScope,
364 pCurDataScope = 364 pCurDataScope =
365 pCurDataScope->GetNodeItem(XFA_NODEITEM_Parent)) { 365 pCurDataScope->GetNodeItem(XFA_NODEITEM_Parent)) {
366 for (CXFA_Node* pDataChild = pCurDataScope->GetFirstChildByName(dwNameHash); 366 for (CXFA_Node* pDataChild = pCurDataScope->GetFirstChildByName(dwNameHash);
367 pDataChild; 367 pDataChild;
368 pDataChild = pDataChild->GetNextSameNameSibling(dwNameHash)) { 368 pDataChild = pDataChild->GetNextSameNameSibling(dwNameHash)) {
(...skipping 18 matching lines...) Expand all
387 if (!bUpLevel) { 387 if (!bUpLevel) {
388 break; 388 break;
389 } 389 }
390 } 390 }
391 return NULL; 391 return NULL;
392 } 392 }
393 static CXFA_Node* XFA_DataMerge_FindGlobalDataNode(CXFA_Document* pDocument, 393 static CXFA_Node* XFA_DataMerge_FindGlobalDataNode(CXFA_Document* pDocument,
394 CFX_WideStringC wsName, 394 CFX_WideStringC wsName,
395 CXFA_Node* pDataScope, 395 CXFA_Node* pDataScope,
396 XFA_ELEMENT eMatchNodeType) { 396 XFA_ELEMENT eMatchNodeType) {
397 FX_DWORD dwNameHash = 397 uint32_t dwNameHash =
398 wsName.IsEmpty() ? 0 : FX_HashCode_String_GetW(wsName.GetPtr(), 398 wsName.IsEmpty() ? 0 : FX_HashCode_String_GetW(wsName.GetPtr(),
399 wsName.GetLength()); 399 wsName.GetLength());
400 if (dwNameHash != 0) { 400 if (dwNameHash != 0) {
401 CXFA_Node* pBounded = XFA_DataMerge_GetGlobalBinding(pDocument, dwNameHash); 401 CXFA_Node* pBounded = XFA_DataMerge_GetGlobalBinding(pDocument, dwNameHash);
402 if (!pBounded) { 402 if (!pBounded) {
403 pBounded = XFA_DataMerge_ScopeMatchGlobalBinding(pDataScope, dwNameHash, 403 pBounded = XFA_DataMerge_ScopeMatchGlobalBinding(pDataScope, dwNameHash,
404 eMatchNodeType); 404 eMatchNodeType);
405 if (pBounded) { 405 if (pBounded) {
406 XFA_DataMerge_RegisterGlobalBinding(pDocument, dwNameHash, pBounded); 406 XFA_DataMerge_RegisterGlobalBinding(pDocument, dwNameHash, pBounded);
407 } 407 }
408 } 408 }
409 return pBounded; 409 return pBounded;
410 } 410 }
411 return NULL; 411 return NULL;
412 } 412 }
413 static CXFA_Node* XFA_DataMerge_FindOnceDataNode(CXFA_Document* pDocument, 413 static CXFA_Node* XFA_DataMerge_FindOnceDataNode(CXFA_Document* pDocument,
414 CFX_WideStringC wsName, 414 CFX_WideStringC wsName,
415 CXFA_Node* pDataScope, 415 CXFA_Node* pDataScope,
416 XFA_ELEMENT eMatchNodeType) { 416 XFA_ELEMENT eMatchNodeType) {
417 FX_DWORD dwNameHash = 417 uint32_t dwNameHash =
418 wsName.IsEmpty() ? 0 : FX_HashCode_String_GetW(wsName.GetPtr(), 418 wsName.IsEmpty() ? 0 : FX_HashCode_String_GetW(wsName.GetPtr(),
419 wsName.GetLength()); 419 wsName.GetLength());
420 if (dwNameHash != 0) { 420 if (dwNameHash != 0) {
421 for (CXFA_Node *pCurDataScope = pDataScope, *pLastDataScope = NULL; 421 for (CXFA_Node *pCurDataScope = pDataScope, *pLastDataScope = NULL;
422 pCurDataScope && 422 pCurDataScope &&
423 pCurDataScope->GetPacketID() == XFA_XDPPACKET_Datasets; 423 pCurDataScope->GetPacketID() == XFA_XDPPACKET_Datasets;
424 pLastDataScope = pCurDataScope, 424 pLastDataScope = pCurDataScope,
425 pCurDataScope = 425 pCurDataScope =
426 pCurDataScope->GetNodeItem(XFA_NODEITEM_Parent)) { 426 pCurDataScope->GetNodeItem(XFA_NODEITEM_Parent)) {
427 for (CXFA_Node* pDataChild = 427 for (CXFA_Node* pDataChild =
(...skipping 12 matching lines...) Expand all
440 } 440 }
441 return NULL; 441 return NULL;
442 } 442 }
443 static CXFA_Node* XFA_DataMerge_FindDataRefDataNode(CXFA_Document* pDocument, 443 static CXFA_Node* XFA_DataMerge_FindDataRefDataNode(CXFA_Document* pDocument,
444 CFX_WideStringC wsRef, 444 CFX_WideStringC wsRef,
445 CXFA_Node* pDataScope, 445 CXFA_Node* pDataScope,
446 XFA_ELEMENT eMatchNodeType, 446 XFA_ELEMENT eMatchNodeType,
447 CXFA_Node* pTemplateNode, 447 CXFA_Node* pTemplateNode,
448 FX_BOOL bForceBind, 448 FX_BOOL bForceBind,
449 FX_BOOL bUpLevel = TRUE) { 449 FX_BOOL bUpLevel = TRUE) {
450 FX_DWORD dFlags = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_BindNew; 450 uint32_t dFlags = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_BindNew;
451 if (bUpLevel || wsRef != FX_WSTRC(L"name")) { 451 if (bUpLevel || wsRef != FX_WSTRC(L"name")) {
452 dFlags |= (XFA_RESOLVENODE_Parent | XFA_RESOLVENODE_Siblings); 452 dFlags |= (XFA_RESOLVENODE_Parent | XFA_RESOLVENODE_Siblings);
453 } 453 }
454 XFA_RESOLVENODE_RS rs; 454 XFA_RESOLVENODE_RS rs;
455 pDocument->GetScriptContext()->ResolveObjects(pDataScope, wsRef, rs, dFlags, 455 pDocument->GetScriptContext()->ResolveObjects(pDataScope, wsRef, rs, dFlags,
456 pTemplateNode); 456 pTemplateNode);
457 if (rs.dwFlags == XFA_RESOLVENODE_RSTYPE_CreateNodeAll || 457 if (rs.dwFlags == XFA_RESOLVENODE_RSTYPE_CreateNodeAll ||
458 rs.dwFlags == XFA_RESOLVENODE_RSTYPE_CreateNodeMidAll || 458 rs.dwFlags == XFA_RESOLVENODE_RSTYPE_CreateNodeMidAll ||
459 rs.nodes.GetSize() > 1) { 459 rs.nodes.GetSize() > 1) {
460 return pDocument->GetNotBindNode(rs.nodes); 460 return pDocument->GetNotBindNode(rs.nodes);
461 } 461 }
462 if (rs.dwFlags == XFA_RESOLVENODE_RSTYPE_CreateNodeOne) { 462 if (rs.dwFlags == XFA_RESOLVENODE_RSTYPE_CreateNodeOne) {
463 CXFA_Object* pObject = (rs.nodes.GetSize() > 0) ? rs.nodes[0] : NULL; 463 CXFA_Object* pObject = (rs.nodes.GetSize() > 0) ? rs.nodes[0] : NULL;
464 CXFA_Node* pNode = ToNode(pObject); 464 CXFA_Node* pNode = ToNode(pObject);
465 if (!bForceBind && pNode && pNode->HasBindItem()) { 465 if (!bForceBind && pNode && pNode->HasBindItem()) {
466 pNode = NULL; 466 pNode = NULL;
467 } 467 }
468 return pNode; 468 return pNode;
469 } 469 }
470 return NULL; 470 return NULL;
471 } 471 }
472 CXFA_Node* XFA_DataMerge_FindFormDOMInstance(CXFA_Document* pDocument, 472 CXFA_Node* XFA_DataMerge_FindFormDOMInstance(CXFA_Document* pDocument,
473 XFA_ELEMENT eClassID, 473 XFA_ELEMENT eClassID,
474 FX_DWORD dwNameHash, 474 uint32_t dwNameHash,
475 CXFA_Node* pFormParent) { 475 CXFA_Node* pFormParent) {
476 CXFA_Node* pFormChild = pFormParent->GetNodeItem(XFA_NODEITEM_FirstChild); 476 CXFA_Node* pFormChild = pFormParent->GetNodeItem(XFA_NODEITEM_FirstChild);
477 for (; pFormChild; 477 for (; pFormChild;
478 pFormChild = pFormChild->GetNodeItem(XFA_NODEITEM_NextSibling)) { 478 pFormChild = pFormChild->GetNodeItem(XFA_NODEITEM_NextSibling)) {
479 if (pFormChild->GetClassID() == eClassID && 479 if (pFormChild->GetClassID() == eClassID &&
480 pFormChild->GetNameHash() == dwNameHash && 480 pFormChild->GetNameHash() == dwNameHash &&
481 pFormChild->HasFlag(XFA_NODEFLAG_UnusedNode)) { 481 pFormChild->HasFlag(XFA_NODEFLAG_UnusedNode)) {
482 return pFormChild; 482 return pFormChild;
483 } 483 }
484 } 484 }
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
551 } 551 }
552 return pNewNode; 552 return pNewNode;
553 } 553 }
554 static CXFA_Node* XFA_NodeMerge_CloneOrMergeInstanceManager( 554 static CXFA_Node* XFA_NodeMerge_CloneOrMergeInstanceManager(
555 CXFA_Document* pDocument, 555 CXFA_Document* pDocument,
556 CXFA_Node* pFormParent, 556 CXFA_Node* pFormParent,
557 CXFA_Node* pTemplateNode, 557 CXFA_Node* pTemplateNode,
558 CXFA_NodeArray& subforms) { 558 CXFA_NodeArray& subforms) {
559 CFX_WideStringC wsSubformName = pTemplateNode->GetCData(XFA_ATTRIBUTE_Name); 559 CFX_WideStringC wsSubformName = pTemplateNode->GetCData(XFA_ATTRIBUTE_Name);
560 CFX_WideString wsInstMgrNodeName = FX_WSTRC(L"_") + wsSubformName; 560 CFX_WideString wsInstMgrNodeName = FX_WSTRC(L"_") + wsSubformName;
561 FX_DWORD dwInstNameHash = 561 uint32_t dwInstNameHash =
562 FX_HashCode_String_GetW(wsInstMgrNodeName, wsInstMgrNodeName.GetLength()); 562 FX_HashCode_String_GetW(wsInstMgrNodeName, wsInstMgrNodeName.GetLength());
563 CXFA_Node* pExistingNode = XFA_DataMerge_FindFormDOMInstance( 563 CXFA_Node* pExistingNode = XFA_DataMerge_FindFormDOMInstance(
564 pDocument, XFA_ELEMENT_InstanceManager, dwInstNameHash, pFormParent); 564 pDocument, XFA_ELEMENT_InstanceManager, dwInstNameHash, pFormParent);
565 if (pExistingNode) { 565 if (pExistingNode) {
566 FX_DWORD dwNameHash = pTemplateNode->GetNameHash(); 566 uint32_t dwNameHash = pTemplateNode->GetNameHash();
567 for (CXFA_Node* pNode = 567 for (CXFA_Node* pNode =
568 pExistingNode->GetNodeItem(XFA_NODEITEM_NextSibling); 568 pExistingNode->GetNodeItem(XFA_NODEITEM_NextSibling);
569 pNode;) { 569 pNode;) {
570 XFA_ELEMENT eCurType = pNode->GetClassID(); 570 XFA_ELEMENT eCurType = pNode->GetClassID();
571 if (eCurType == XFA_ELEMENT_InstanceManager) { 571 if (eCurType == XFA_ELEMENT_InstanceManager) {
572 break; 572 break;
573 } 573 }
574 if ((eCurType != XFA_ELEMENT_Subform) && 574 if ((eCurType != XFA_ELEMENT_Subform) &&
575 (eCurType != XFA_ELEMENT_SubformSet)) { 575 (eCurType != XFA_ELEMENT_SubformSet)) {
576 pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling); 576 pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling);
(...skipping 568 matching lines...) Expand 10 before | Expand all | Expand 10 after
1145 if (pDataParent != pDataScope) { 1145 if (pDataParent != pDataScope) {
1146 FXSYS_assert(pDataParent); 1146 FXSYS_assert(pDataParent);
1147 pDataParent->RemoveChild(pDataNode); 1147 pDataParent->RemoveChild(pDataNode);
1148 pDataScope->InsertChild(pDataNode); 1148 pDataScope->InsertChild(pDataNode);
1149 } 1149 }
1150 } 1150 }
1151 } 1151 }
1152 break; 1152 break;
1153 case XFA_ATTRIBUTEENUM_Global: 1153 case XFA_ATTRIBUTEENUM_Global:
1154 if (!bDataRef || bParentDataRef) { 1154 if (!bDataRef || bParentDataRef) {
1155 FX_DWORD dwNameHash = pFormNode->GetNameHash(); 1155 uint32_t dwNameHash = pFormNode->GetNameHash();
1156 if (dwNameHash != 0 && !pDataNode) { 1156 if (dwNameHash != 0 && !pDataNode) {
1157 pDataNode = XFA_DataMerge_GetGlobalBinding(pDocument, dwNameHash); 1157 pDataNode = XFA_DataMerge_GetGlobalBinding(pDocument, dwNameHash);
1158 if (!pDataNode) { 1158 if (!pDataNode) {
1159 XFA_ELEMENT eDataNodeType = (eClassID == XFA_ELEMENT_Subform || 1159 XFA_ELEMENT eDataNodeType = (eClassID == XFA_ELEMENT_Subform ||
1160 XFA_FieldIsMultiListBox(pFormNode)) 1160 XFA_FieldIsMultiListBox(pFormNode))
1161 ? XFA_ELEMENT_DataGroup 1161 ? XFA_ELEMENT_DataGroup
1162 : XFA_ELEMENT_DataValue; 1162 : XFA_ELEMENT_DataValue;
1163 CXFA_Node* pRecordNode = 1163 CXFA_Node* pRecordNode =
1164 ToNode(pDocument->GetXFAObject(XFA_HASHCODE_Record)); 1164 ToNode(pDocument->GetXFAObject(XFA_HASHCODE_Record));
1165 pDataNode = XFA_DataDescription_MaybeCreateDataNode( 1165 pDataNode = XFA_DataDescription_MaybeCreateDataNode(
(...skipping 12 matching lines...) Expand all
1178 XFA_DataMerge_FormValueNode_MatchNoneCreateChild(pFormNode); 1178 XFA_DataMerge_FormValueNode_MatchNoneCreateChild(pFormNode);
1179 } 1179 }
1180 } 1180 }
1181 break; 1181 break;
1182 case XFA_ATTRIBUTEENUM_DataRef: { 1182 case XFA_ATTRIBUTEENUM_DataRef: {
1183 bMatchRef = bDataRef; 1183 bMatchRef = bDataRef;
1184 bParentDataRef = TRUE; 1184 bParentDataRef = TRUE;
1185 if (!pDataNode && bDataRef) { 1185 if (!pDataNode && bDataRef) {
1186 CFX_WideStringC wsRef = 1186 CFX_WideStringC wsRef =
1187 pTemplateNodeBind->GetCData(XFA_ATTRIBUTE_Ref); 1187 pTemplateNodeBind->GetCData(XFA_ATTRIBUTE_Ref);
1188 FX_DWORD dFlags = 1188 uint32_t dFlags =
1189 XFA_RESOLVENODE_Children | XFA_RESOLVENODE_CreateNode; 1189 XFA_RESOLVENODE_Children | XFA_RESOLVENODE_CreateNode;
1190 XFA_RESOLVENODE_RS rs; 1190 XFA_RESOLVENODE_RS rs;
1191 pDocument->GetScriptContext()->ResolveObjects(pDataScope, wsRef, rs, 1191 pDocument->GetScriptContext()->ResolveObjects(pDataScope, wsRef, rs,
1192 dFlags, pTemplateNode); 1192 dFlags, pTemplateNode);
1193 CXFA_Object* pObject = (rs.nodes.GetSize() > 0) ? rs.nodes[0] : NULL; 1193 CXFA_Object* pObject = (rs.nodes.GetSize() > 0) ? rs.nodes[0] : NULL;
1194 pDataNode = ToNode(pObject); 1194 pDataNode = ToNode(pObject);
1195 if (pDataNode) { 1195 if (pDataNode) {
1196 XFA_DataMerge_CreateDataBinding( 1196 XFA_DataMerge_CreateDataBinding(
1197 pFormNode, pDataNode, 1197 pFormNode, pDataNode,
1198 rs.dwFlags == XFA_RESOVENODE_RSTYPE_ExistNodes); 1198 rs.dwFlags == XFA_RESOVENODE_RSTYPE_ExistNodes);
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
1308 IFDE_XMLElement* pDataRootXMLNode = 1308 IFDE_XMLElement* pDataRootXMLNode =
1309 IFDE_XMLElement::Create(FX_WSTRC(L"xfa:data")); 1309 IFDE_XMLElement::Create(FX_WSTRC(L"xfa:data"));
1310 FXSYS_assert(pDataRootXMLNode); 1310 FXSYS_assert(pDataRootXMLNode);
1311 pDataRoot = CreateNode(XFA_XDPPACKET_Datasets, XFA_ELEMENT_DataGroup); 1311 pDataRoot = CreateNode(XFA_XDPPACKET_Datasets, XFA_ELEMENT_DataGroup);
1312 pDataRoot->SetCData(XFA_ATTRIBUTE_Name, FX_WSTRC(L"data")); 1312 pDataRoot->SetCData(XFA_ATTRIBUTE_Name, FX_WSTRC(L"data"));
1313 pDataRoot->SetXMLMappingNode(pDataRootXMLNode); 1313 pDataRoot->SetXMLMappingNode(pDataRootXMLNode);
1314 pDatasetsRoot->InsertChild(pDataRoot); 1314 pDatasetsRoot->InsertChild(pDataRoot);
1315 } 1315 }
1316 CXFA_Node* pDataTopLevel = 1316 CXFA_Node* pDataTopLevel =
1317 pDataRoot->GetFirstChildByClass(XFA_ELEMENT_DataGroup); 1317 pDataRoot->GetFirstChildByClass(XFA_ELEMENT_DataGroup);
1318 FX_DWORD dwNameHash = pDataTopLevel ? pDataTopLevel->GetNameHash() : 0; 1318 uint32_t dwNameHash = pDataTopLevel ? pDataTopLevel->GetNameHash() : 0;
1319 CXFA_Node* pTemplateRoot = 1319 CXFA_Node* pTemplateRoot =
1320 m_pRootNode->GetFirstChildByClass(XFA_ELEMENT_Template); 1320 m_pRootNode->GetFirstChildByClass(XFA_ELEMENT_Template);
1321 if (!pTemplateRoot) { 1321 if (!pTemplateRoot) {
1322 return; 1322 return;
1323 } 1323 }
1324 CXFA_Node* pTemplateChosen = 1324 CXFA_Node* pTemplateChosen =
1325 dwNameHash != 0 ? pTemplateRoot->GetFirstChildByName(dwNameHash) : NULL; 1325 dwNameHash != 0 ? pTemplateRoot->GetFirstChildByName(dwNameHash) : NULL;
1326 if (!pTemplateChosen || 1326 if (!pTemplateChosen ||
1327 pTemplateChosen->GetClassID() != XFA_ELEMENT_Subform) { 1327 pTemplateChosen->GetClassID() != XFA_ELEMENT_Subform) {
1328 pTemplateChosen = pTemplateRoot->GetFirstChildByClass(XFA_ELEMENT_Subform); 1328 pTemplateChosen = pTemplateRoot->GetFirstChildByClass(XFA_ELEMENT_Subform);
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
1420 } 1420 }
1421 pFormRoot->SetObject(XFA_ATTRIBUTE_BindingNode, NULL); 1421 pFormRoot->SetObject(XFA_ATTRIBUTE_BindingNode, NULL);
1422 } 1422 }
1423 XFA_DataMerge_ClearGlobalBinding(this); 1423 XFA_DataMerge_ClearGlobalBinding(this);
1424 if (bDoDataMerge) { 1424 if (bDoDataMerge) {
1425 DoDataMerge(); 1425 DoDataMerge();
1426 } 1426 }
1427 CXFA_LayoutProcessor* pLayoutProcessor = GetLayoutProcessor(); 1427 CXFA_LayoutProcessor* pLayoutProcessor = GetLayoutProcessor();
1428 pLayoutProcessor->SetForceReLayout(TRUE); 1428 pLayoutProcessor->SetForceReLayout(TRUE);
1429 } 1429 }
OLDNEW
« no previous file with comments | « xfa/fxfa/parser/xfa_document_datadescription_imp.cpp ('k') | xfa/fxfa/parser/xfa_document_imp.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698