1 // Copyright 2017 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 
7 #ifndef XFA_FXFA_PARSER_CXFA_ATTACHNODELIST_H_
8 #define XFA_FXFA_PARSER_CXFA_ATTACHNODELIST_H_
9 
10 #include "xfa/fxfa/parser/cxfa_treelist.h"
11 
12 class CXFA_Document;
13 class CXFA_Node;
14 
15 class CXFA_AttachNodeList final : public CXFA_TreeList {
16  public:
17   CXFA_AttachNodeList(CXFA_Document* pDocument, CXFA_Node* pAttachNode);
18   ~CXFA_AttachNodeList() override;
19 
20   // CXFA_TreeList:
21   size_t GetLength() override;
22   void Append(CXFA_Node* pNode) override;
23   bool Insert(CXFA_Node* pNewNode, CXFA_Node* pBeforeNode) override;
24   void Remove(CXFA_Node* pNode) override;
25   CXFA_Node* Item(size_t iIndex) override;
26 
27  private:
28   UnownedPtr<CXFA_Node> const m_pAttachNode;
29 };
30 
31 #endif  // XFA_FXFA_PARSER_CXFA_ATTACHNODELIST_H_
32