| // 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() const { |
| if (!m_pNode) |
| return XFA_Element::Unknown; |
| if (CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)) |
| return pNode->GetElementType(); |
| return XFA_Element::Unknown; |
| } |
| |
| WideString CXFA_ValueData::GetChildValueContent() const { |
| if (!m_pNode) |
| return L""; |
| |
| CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); |
| if (!pNode) |
| return L""; |
| |
| return pNode->JSNode()->TryContent(false, true).value_or(L""); |
| } |
| |
| CXFA_ArcData CXFA_ValueData::GetArcData() const { |
| return CXFA_ArcData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild) |
| : nullptr); |
| } |
| |
| CXFA_LineData CXFA_ValueData::GetLineData() const { |
| return CXFA_LineData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild) |
| : nullptr); |
| } |
| |
| CXFA_RectangleData CXFA_ValueData::GetRectangleData() const { |
| return CXFA_RectangleData( |
| m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild) : nullptr); |
| } |
| |
| CXFA_TextData CXFA_ValueData::GetTextData() const { |
| return CXFA_TextData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild) |
| : nullptr); |
| } |
| |
| CXFA_ExDataData CXFA_ValueData::GetExData() const { |
| return CXFA_ExDataData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild) |
| : nullptr); |
| } |
| |
| CXFA_ImageData CXFA_ValueData::GetImageData() const { |
| return CXFA_ImageData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild) |
| : nullptr); |
| } |