summaryrefslogtreecommitdiff
path: root/fxjs/xfa/cjx_packet.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'fxjs/xfa/cjx_packet.cpp')
-rw-r--r--fxjs/xfa/cjx_packet.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/fxjs/xfa/cjx_packet.cpp b/fxjs/xfa/cjx_packet.cpp
index 2203d9bc9e..fdebe626ab 100644
--- a/fxjs/xfa/cjx_packet.cpp
+++ b/fxjs/xfa/cjx_packet.cpp
@@ -68,3 +68,24 @@ CJS_Return CJX_Packet::removeAttribute(
}
return CJS_Return(runtime->NewNull());
}
+
+void CJX_Packet::content(CFXJSE_Value* pValue,
+ bool bSetting,
+ XFA_Attribute eAttribute) {
+ CFX_XMLNode* pXMLNode = GetXFANode()->GetXMLMappingNode();
+ if (bSetting) {
+ if (pXMLNode && pXMLNode->GetType() == FX_XMLNODE_Element) {
+ CFX_XMLElement* pXMLElement = static_cast<CFX_XMLElement*>(pXMLNode);
+ pXMLElement->SetTextData(pValue->ToWideString());
+ }
+ return;
+ }
+
+ WideString wsTextData;
+ if (pXMLNode && pXMLNode->GetType() == FX_XMLNODE_Element) {
+ CFX_XMLElement* pXMLElement = static_cast<CFX_XMLElement*>(pXMLNode);
+ wsTextData = pXMLElement->GetTextData();
+ }
+
+ pValue->SetString(wsTextData.UTF8Encode().AsStringView());
+}