blob: f99689728ca6bff85d8c90db0c14892b96fc265f [file] [log] [blame]
// Copyright 2016 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 "xfa/fxfa/parser/cxfa_valuedata.h"
#include "xfa/fxfa/parser/cxfa_node.h"
XFA_Element CXFA_ValueData::GetChildValueClassID() {
if (!m_pNode)
return XFA_Element::Unknown;
if (CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild))
return pNode->GetElementType();
return XFA_Element::Unknown;
}
bool CXFA_ValueData::GetChildValueContent(WideString& wsContent) {
if (!m_pNode)
return false;
if (CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild))
return pNode->JSNode()->TryContent(wsContent, false, true);
return false;
}
CXFA_ArcData CXFA_ValueData::GetArcData() {
return CXFA_ArcData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)
: nullptr);
}
CXFA_LineData CXFA_ValueData::GetLineData() {
return CXFA_LineData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)
: nullptr);
}
CXFA_RectangleData CXFA_ValueData::GetRectangleData() {
return CXFA_RectangleData(
m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild) : nullptr);
}
CXFA_TextData CXFA_ValueData::GetTextData() {
return CXFA_TextData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)
: nullptr);
}
CXFA_ExData CXFA_ValueData::GetExData() {
return CXFA_ExData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)
: nullptr);
}
CXFA_ImageData CXFA_ValueData::GetImageData() {
return CXFA_ImageData(
m_pNode ? (m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)) : nullptr,
true);
}