diff options
Diffstat (limited to 'core/fxcrt/xml/cfx_xmlinstruction.cpp')
-rw-r--r-- | core/fxcrt/xml/cfx_xmlinstruction.cpp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/core/fxcrt/xml/cfx_xmlinstruction.cpp b/core/fxcrt/xml/cfx_xmlinstruction.cpp new file mode 100644 index 0000000000..d07b92e3c1 --- /dev/null +++ b/core/fxcrt/xml/cfx_xmlinstruction.cpp @@ -0,0 +1,36 @@ +// Copyright 2017 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#include "core/fxcrt/xml/cfx_xmlinstruction.h" + +#include "core/fxcrt/fx_ext.h" +#include "third_party/base/ptr_util.h" +#include "third_party/base/stl_util.h" + +CFX_XMLInstruction::CFX_XMLInstruction(const CFX_WideString& wsTarget) + : CFX_XMLAttributeNode(wsTarget) {} + +CFX_XMLInstruction::~CFX_XMLInstruction() {} + +FX_XMLNODETYPE CFX_XMLInstruction::GetType() const { + return FX_XMLNODE_Instruction; +} + +std::unique_ptr<CFX_XMLNode> CFX_XMLInstruction::Clone() { + auto pClone = pdfium::MakeUnique<CFX_XMLInstruction>(GetName()); + pClone->SetAttributes(GetAttributes()); + pClone->m_TargetData = m_TargetData; + return pClone; +} + +void CFX_XMLInstruction::AppendData(const CFX_WideString& wsData) { + m_TargetData.push_back(wsData); +} + +void CFX_XMLInstruction::RemoveData(int32_t index) { + if (pdfium::IndexInBounds(m_TargetData, index)) + m_TargetData.erase(m_TargetData.begin() + index); +} |