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_ATTACHNODELIST_H_
8d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define XFA_FXFA_PARSER_CXFA_ATTACHNODELIST_H_
9d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann
10d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#include "xfa/fxfa/parser/cxfa_treelist.h"
11d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann
12d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmannclass CXFA_Document;
13d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmannclass CXFA_Node;
14d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann
15d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmannclass CXFA_AttachNodeList : public CXFA_TreeList {
16d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann public:
17d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann  CXFA_AttachNodeList(CXFA_Document* pDocument, CXFA_Node* pAttachNode);
18d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann
19d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann  // From CXFA_TreeList.
20d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann  size_t GetLength() override;
21d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann  bool Append(CXFA_Node* pNode) override;
22d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann  bool Insert(CXFA_Node* pNewNode, CXFA_Node* pBeforeNode) override;
23d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann  bool Remove(CXFA_Node* pNode) override;
24d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann  CXFA_Node* Item(size_t iIndex) override;
25d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann
26d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann private:
27d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann  CXFA_Node* m_pAttachNode;
28d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann};
29d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann
30d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#endif  // XFA_FXFA_PARSER_CXFA_ATTACHNODELIST_H_
31