1d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Copyright 2017 PDFium Authors. All rights reserved. 2d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Use of this source code is governed by a BSD-style license that can be 3d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// found in the LICENSE file. 4d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 5d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 7d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#ifndef XFA_FXFA_PARSER_CXFA_TRAVERSESTRATEGY_XFACONTAINERNODE_H_ 8d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define XFA_FXFA_PARSER_CXFA_TRAVERSESTRATEGY_XFACONTAINERNODE_H_ 9d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 10d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#include "xfa/fxfa/parser/cxfa_node.h" 11d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#include "xfa/fxfa/parser/cxfa_nodeiteratortemplate.h" 12d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 13d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmannclass CXFA_TraverseStrategy_XFAContainerNode { 14d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann public: 15d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann static CXFA_Node* GetFirstChild(CXFA_Node* pTemplateNode) { 16d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann return pTemplateNode->GetFirstContainerChild(); 17d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann } 18d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann static CXFA_Node* GetNextSibling(CXFA_Node* pTemplateNode) { 19d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann return pTemplateNode->GetNextContainerSibling(); 20d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann } 21d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann static CXFA_Node* GetParent(CXFA_Node* pTemplateNode) { 22d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann return pTemplateNode->GetContainerParent(); 23d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann } 24d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann}; 25d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 26d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmanntypedef CXFA_NodeIteratorTemplate<CXFA_Node, 27d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann CXFA_TraverseStrategy_XFAContainerNode> 28d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann CXFA_ContainerIterator; 29d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 30d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#endif // XFA_FXFA_PARSER_CXFA_TRAVERSESTRATEGY_XFACONTAINERNODE_H_ 31