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

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

Issue 2082573007: Update GetClassID to GetElementType (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@remove_script_obj_hash
Patch Set: Created 4 years, 6 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_doclayout.h" 7 #include "xfa/fxfa/parser/xfa_doclayout.h"
8 #include "xfa/fxfa/parser/xfa_document.h" 8 #include "xfa/fxfa/parser/xfa_document.h"
9 #include "xfa/fxfa/parser/xfa_localemgr.h" 9 #include "xfa/fxfa/parser/xfa_localemgr.h"
10 #include "xfa/fxfa/parser/xfa_object.h" 10 #include "xfa/fxfa/parser/xfa_object.h"
(...skipping 13 matching lines...) Expand all
24 return pDDGroupNode->GetNodeItem(XFA_NODEITEM_Parent); 24 return pDDGroupNode->GetNodeItem(XFA_NODEITEM_Parent);
25 } 25 }
26 }; 26 };
27 void XFA_DataDescription_UpdateDataRelation(CXFA_Node* pDataNode, 27 void XFA_DataDescription_UpdateDataRelation(CXFA_Node* pDataNode,
28 CXFA_Node* pDataDescriptionNode) { 28 CXFA_Node* pDataDescriptionNode) {
29 ASSERT(pDataDescriptionNode); 29 ASSERT(pDataDescriptionNode);
30 for (CXFA_Node* pDataChild = pDataNode->GetNodeItem(XFA_NODEITEM_FirstChild); 30 for (CXFA_Node* pDataChild = pDataNode->GetNodeItem(XFA_NODEITEM_FirstChild);
31 pDataChild; 31 pDataChild;
32 pDataChild = pDataChild->GetNodeItem(XFA_NODEITEM_NextSibling)) { 32 pDataChild = pDataChild->GetNodeItem(XFA_NODEITEM_NextSibling)) {
33 uint32_t dwNameHash = pDataChild->GetNameHash(); 33 uint32_t dwNameHash = pDataChild->GetNameHash();
34 XFA_Element eType = pDataChild->GetClassID(); 34 XFA_Element eType = pDataChild->GetElementType();
35 if (!dwNameHash) { 35 if (!dwNameHash) {
36 continue; 36 continue;
37 } 37 }
38 CXFA_NodeIteratorTemplate<CXFA_Node, CXFA_TraverseStrategy_DDGroup> 38 CXFA_NodeIteratorTemplate<CXFA_Node, CXFA_TraverseStrategy_DDGroup>
39 sIterator(pDataDescriptionNode); 39 sIterator(pDataDescriptionNode);
40 for (CXFA_Node* pDDGroupNode = sIterator.GetCurrent(); pDDGroupNode; 40 for (CXFA_Node* pDDGroupNode = sIterator.GetCurrent(); pDDGroupNode;
41 pDDGroupNode = sIterator.MoveToNext()) { 41 pDDGroupNode = sIterator.MoveToNext()) {
42 if (pDDGroupNode != pDataDescriptionNode) { 42 if (pDDGroupNode != pDataDescriptionNode) {
43 if (pDDGroupNode->GetClassID() != XFA_Element::DataGroup) { 43 if (pDDGroupNode->GetElementType() != XFA_Element::DataGroup) {
44 continue; 44 continue;
45 } 45 }
46 CFX_WideString wsNamespace; 46 CFX_WideString wsNamespace;
47 if (!pDDGroupNode->TryNamespace(wsNamespace) || 47 if (!pDDGroupNode->TryNamespace(wsNamespace) ||
48 wsNamespace != FX_WSTRC(L"http://ns.adobe.com/data-description/")) { 48 wsNamespace != FX_WSTRC(L"http://ns.adobe.com/data-description/")) {
49 continue; 49 continue;
50 } 50 }
51 } 51 }
52 CXFA_Node* pDDNode = pDDGroupNode->GetFirstChildByName(dwNameHash); 52 CXFA_Node* pDDNode = pDDGroupNode->GetFirstChildByName(dwNameHash);
53 if (!pDDNode) { 53 if (!pDDNode) {
54 continue; 54 continue;
55 } 55 }
56 if (pDDNode->GetClassID() != eType) { 56 if (pDDNode->GetElementType() != eType) {
57 break; 57 break;
58 } 58 }
59 pDataChild->SetDataDescriptionNode(pDDNode); 59 pDataChild->SetDataDescriptionNode(pDDNode);
60 XFA_DataDescription_UpdateDataRelation(pDataChild, pDDNode); 60 XFA_DataDescription_UpdateDataRelation(pDataChild, pDDNode);
61 break; 61 break;
62 } 62 }
63 } 63 }
64 } 64 }
65 CXFA_Node* XFA_DataDescription_MaybeCreateDataNode( 65 CXFA_Node* XFA_DataDescription_MaybeCreateDataNode(
66 CXFA_Document* pDocument, 66 CXFA_Document* pDocument,
(...skipping 12 matching lines...) Expand all
79 pDataNode->CreateXMLMappingNode(); 79 pDataNode->CreateXMLMappingNode();
80 pDataParent->InsertChild(pDataNode); 80 pDataParent->InsertChild(pDataNode);
81 pDataNode->SetFlag(XFA_NodeFlag_Initialized, false); 81 pDataNode->SetFlag(XFA_NodeFlag_Initialized, false);
82 return pDataNode; 82 return pDataNode;
83 } else { 83 } else {
84 CXFA_NodeIteratorTemplate<CXFA_Node, CXFA_TraverseStrategy_DDGroup> 84 CXFA_NodeIteratorTemplate<CXFA_Node, CXFA_TraverseStrategy_DDGroup>
85 sIterator(pParentDDNode); 85 sIterator(pParentDDNode);
86 for (CXFA_Node* pDDGroupNode = sIterator.GetCurrent(); pDDGroupNode; 86 for (CXFA_Node* pDDGroupNode = sIterator.GetCurrent(); pDDGroupNode;
87 pDDGroupNode = sIterator.MoveToNext()) { 87 pDDGroupNode = sIterator.MoveToNext()) {
88 if (pDDGroupNode != pParentDDNode) { 88 if (pDDGroupNode != pParentDDNode) {
89 if (pDDGroupNode->GetClassID() != XFA_Element::DataGroup) { 89 if (pDDGroupNode->GetElementType() != XFA_Element::DataGroup) {
90 continue; 90 continue;
91 } 91 }
92 CFX_WideString wsNamespace; 92 CFX_WideString wsNamespace;
93 if (!pDDGroupNode->TryNamespace(wsNamespace) || 93 if (!pDDGroupNode->TryNamespace(wsNamespace) ||
94 wsNamespace != FX_WSTRC(L"http://ns.adobe.com/data-description/")) { 94 wsNamespace != FX_WSTRC(L"http://ns.adobe.com/data-description/")) {
95 continue; 95 continue;
96 } 96 }
97 } 97 }
98 CXFA_Node* pDDNode = 98 CXFA_Node* pDDNode =
99 pDDGroupNode->GetFirstChildByName(wsName.AsStringC()); 99 pDDGroupNode->GetFirstChildByName(wsName.AsStringC());
100 if (!pDDNode) { 100 if (!pDDNode) {
101 continue; 101 continue;
102 } 102 }
103 if (pDDNode->GetClassID() != eNodeType) { 103 if (pDDNode->GetElementType() != eNodeType) {
104 break; 104 break;
105 } 105 }
106 CXFA_Node* pDataNode = 106 CXFA_Node* pDataNode =
107 pDocument->CreateNode(XFA_XDPPACKET_Datasets, eNodeType); 107 pDocument->CreateNode(XFA_XDPPACKET_Datasets, eNodeType);
108 ASSERT(pDataNode); 108 ASSERT(pDataNode);
109 pDataNode->SetCData(XFA_ATTRIBUTE_Name, wsName); 109 pDataNode->SetCData(XFA_ATTRIBUTE_Name, wsName);
110 pDataNode->CreateXMLMappingNode(); 110 pDataNode->CreateXMLMappingNode();
111 if (eNodeType == XFA_Element::DataValue && 111 if (eNodeType == XFA_Element::DataValue &&
112 pDDNode->GetEnum(XFA_ATTRIBUTE_Contains) == 112 pDDNode->GetEnum(XFA_ATTRIBUTE_Contains) ==
113 XFA_ATTRIBUTEENUM_MetaData) { 113 XFA_ATTRIBUTEENUM_MetaData) {
114 pDataNode->SetEnum(XFA_ATTRIBUTE_Contains, XFA_ATTRIBUTEENUM_MetaData); 114 pDataNode->SetEnum(XFA_ATTRIBUTE_Contains, XFA_ATTRIBUTEENUM_MetaData);
115 } 115 }
116 pDataParent->InsertChild(pDataNode); 116 pDataParent->InsertChild(pDataNode);
117 pDataNode->SetDataDescriptionNode(pDDNode); 117 pDataNode->SetDataDescriptionNode(pDDNode);
118 pDataNode->SetFlag(XFA_NodeFlag_Initialized, false); 118 pDataNode->SetFlag(XFA_NodeFlag_Initialized, false);
119 return pDataNode; 119 return pDataNode;
120 } 120 }
121 return NULL; 121 return NULL;
122 } 122 }
123 } 123 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698