OLD | NEW |
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/fde/xml/fde_xml_imp.h" | 10 #include "xfa/fde/xml/fde_xml_imp.h" |
(...skipping 868 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
879 CFX_ArrayTemplate<CXFA_Node*> rgItemUnmatchList; | 879 CFX_ArrayTemplate<CXFA_Node*> rgItemUnmatchList; |
880 for (CXFA_Node* pTemplateChild = | 880 for (CXFA_Node* pTemplateChild = |
881 pTemplateNode->GetNodeItem(XFA_NODEITEM_FirstChild); | 881 pTemplateNode->GetNodeItem(XFA_NODEITEM_FirstChild); |
882 pTemplateChild; pTemplateChild = pTemplateChild->GetNodeItem( | 882 pTemplateChild; pTemplateChild = pTemplateChild->GetNodeItem( |
883 XFA_NODEITEM_NextSibling)) { | 883 XFA_NODEITEM_NextSibling)) { |
884 if (XFA_NeedGenerateForm(pTemplateChild, bUseInstanceManager)) { | 884 if (XFA_NeedGenerateForm(pTemplateChild, bUseInstanceManager)) { |
885 XFA_NodeMerge_CloneOrMergeContainer(pDocument, pSubformSetNode, | 885 XFA_NodeMerge_CloneOrMergeContainer(pDocument, pSubformSetNode, |
886 pTemplateChild, TRUE); | 886 pTemplateChild, TRUE); |
887 } else if (pTemplateChild->GetObjectType() == | 887 } else if (pTemplateChild->GetObjectType() == |
888 XFA_OBJECTTYPE_ContainerNode) { | 888 XFA_OBJECTTYPE_ContainerNode) { |
889 CXFA_Node* pDataMatch; | |
890 bSelfMatch = FALSE; | 889 bSelfMatch = FALSE; |
891 eBindMatch = XFA_ATTRIBUTEENUM_None; | 890 eBindMatch = XFA_ATTRIBUTEENUM_None; |
| 891 CXFA_Node* pDataMatch; |
892 if (eRelation != XFA_ATTRIBUTEENUM_Ordered && | 892 if (eRelation != XFA_ATTRIBUTEENUM_Ordered && |
893 (pDataMatch = XFA_DataMerge_FindMatchingDataNode( | 893 (pDataMatch = XFA_DataMerge_FindMatchingDataNode( |
894 pDocument, pTemplateChild, pDataScope, bAccessedDataDOM, | 894 pDocument, pTemplateChild, pDataScope, bAccessedDataDOM, |
895 FALSE, NULL, bSelfMatch, eBindMatch))) { | 895 FALSE, NULL, bSelfMatch, eBindMatch)) != nullptr) { |
896 XFA_DataMerge_RecurseRecord sNewRecord = {pTemplateChild, | 896 XFA_DataMerge_RecurseRecord sNewRecord = {pTemplateChild, |
897 pDataMatch}; | 897 pDataMatch}; |
898 if (bSelfMatch) { | 898 if (bSelfMatch) { |
899 rgItemMatchList.InsertAt(0, sNewRecord); | 899 rgItemMatchList.InsertAt(0, sNewRecord); |
900 } else { | 900 } else { |
901 rgItemMatchList.Add(sNewRecord); | 901 rgItemMatchList.Add(sNewRecord); |
902 } | 902 } |
903 } else { | 903 } else { |
904 rgItemUnmatchList.Add(pTemplateChild); | 904 rgItemUnmatchList.Add(pTemplateChild); |
905 } | 905 } |
(...skipping 507 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1413 } | 1413 } |
1414 pFormRoot->SetObject(XFA_ATTRIBUTE_BindingNode, NULL); | 1414 pFormRoot->SetObject(XFA_ATTRIBUTE_BindingNode, NULL); |
1415 } | 1415 } |
1416 XFA_DataMerge_ClearGlobalBinding(this); | 1416 XFA_DataMerge_ClearGlobalBinding(this); |
1417 if (bDoDataMerge) { | 1417 if (bDoDataMerge) { |
1418 DoDataMerge(); | 1418 DoDataMerge(); |
1419 } | 1419 } |
1420 CXFA_LayoutProcessor* pLayoutProcessor = GetLayoutProcessor(); | 1420 CXFA_LayoutProcessor* pLayoutProcessor = GetLayoutProcessor(); |
1421 pLayoutProcessor->SetForceReLayout(TRUE); | 1421 pLayoutProcessor->SetForceReLayout(TRUE); |
1422 } | 1422 } |
OLD | NEW |