Cleanup CXFA_ValueData

This CL makes the methods const and uses return values instead of
out-params.

Change-Id: If760cd8c10d8f3a94dd3e13c46200cb6738a4d5a
Reviewed-on: https://pdfium-review.googlesource.com/19150
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
diff --git a/xfa/fxfa/cxfa_widgetacc.cpp b/xfa/fxfa/cxfa_widgetacc.cpp
index 644b168..683c8a2 100644
--- a/xfa/fxfa/cxfa_widgetacc.cpp
+++ b/xfa/fxfa/cxfa_widgetacc.cpp
@@ -197,7 +197,7 @@
         if (wsValue.IsEmpty()) {
           CXFA_ValueData defValueData = pAcc->GetDefaultValueData();
           if (defValueData.HasValidNode()) {
-            defValueData.GetChildValueContent(wsValue);
+            wsValue = defValueData.GetChildValueContent();
             SetValue(wsValue, XFA_VALUEPICTURE_Raw);
             pAcc->SetValue(wsValue, XFA_VALUEPICTURE_Raw);
             done = true;
@@ -227,7 +227,7 @@
     default: {
       CXFA_ValueData defValueData = GetDefaultValueData();
       if (defValueData.HasValidNode())
-        defValueData.GetChildValueContent(wsValue);
+        wsValue = defValueData.GetChildValueContent();
 
       SetValue(wsValue, XFA_VALUEPICTURE_Raw);
       break;
diff --git a/xfa/fxfa/parser/cxfa_valuedata.cpp b/xfa/fxfa/parser/cxfa_valuedata.cpp
index 1ca051e..d0f86a8 100644
--- a/xfa/fxfa/parser/cxfa_valuedata.cpp
+++ b/xfa/fxfa/parser/cxfa_valuedata.cpp
@@ -8,7 +8,7 @@
 
 #include "xfa/fxfa/parser/cxfa_node.h"
 
-XFA_Element CXFA_ValueData::GetChildValueClassID() {
+XFA_Element CXFA_ValueData::GetChildValueClassID() const {
   if (!m_pNode)
     return XFA_Element::Unknown;
   if (CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild))
@@ -16,49 +16,43 @@
   return XFA_Element::Unknown;
 }
 
-bool CXFA_ValueData::GetChildValueContent(WideString& wsContent) {
+WideString CXFA_ValueData::GetChildValueContent() const {
   if (!m_pNode)
-    return false;
+    return L"";
 
   CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild);
   if (!pNode)
-    return false;
+    return L"";
 
-  pdfium::Optional<WideString> content =
-      pNode->JSNode()->TryContent(false, true);
-  if (!content)
-    return false;
-
-  wsContent = *content;
-  return true;
+  return pNode->JSNode()->TryContent(false, true).value_or(L"");
 }
 
-CXFA_ArcData CXFA_ValueData::GetArcData() {
+CXFA_ArcData CXFA_ValueData::GetArcData() const {
   return CXFA_ArcData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)
                               : nullptr);
 }
 
-CXFA_LineData CXFA_ValueData::GetLineData() {
+CXFA_LineData CXFA_ValueData::GetLineData() const {
   return CXFA_LineData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)
                                : nullptr);
 }
 
-CXFA_RectangleData CXFA_ValueData::GetRectangleData() {
+CXFA_RectangleData CXFA_ValueData::GetRectangleData() const {
   return CXFA_RectangleData(
       m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild) : nullptr);
 }
 
-CXFA_TextData CXFA_ValueData::GetTextData() {
+CXFA_TextData CXFA_ValueData::GetTextData() const {
   return CXFA_TextData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)
                                : nullptr);
 }
 
-CXFA_ExDataData CXFA_ValueData::GetExData() {
+CXFA_ExDataData CXFA_ValueData::GetExData() const {
   return CXFA_ExDataData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)
                                  : nullptr);
 }
 
-CXFA_ImageData CXFA_ValueData::GetImageData() {
+CXFA_ImageData CXFA_ValueData::GetImageData() const {
   return CXFA_ImageData(m_pNode ? m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild)
                                 : nullptr);
 }
diff --git a/xfa/fxfa/parser/cxfa_valuedata.h b/xfa/fxfa/parser/cxfa_valuedata.h
index 7e647d8..101c960 100644
--- a/xfa/fxfa/parser/cxfa_valuedata.h
+++ b/xfa/fxfa/parser/cxfa_valuedata.h
@@ -22,14 +22,14 @@
  public:
   explicit CXFA_ValueData(CXFA_Node* pNode) : CXFA_DataData(pNode) {}
 
-  XFA_Element GetChildValueClassID();
-  bool GetChildValueContent(WideString& wsContent);
-  CXFA_ArcData GetArcData();
-  CXFA_LineData GetLineData();
-  CXFA_RectangleData GetRectangleData();
-  CXFA_TextData GetTextData();
-  CXFA_ExDataData GetExData();
-  CXFA_ImageData GetImageData();
+  XFA_Element GetChildValueClassID() const;
+  WideString GetChildValueContent() const;
+  CXFA_ArcData GetArcData() const;
+  CXFA_LineData GetLineData() const;
+  CXFA_RectangleData GetRectangleData() const;
+  CXFA_TextData GetTextData() const;
+  CXFA_ExDataData GetExData() const;
+  CXFA_ImageData GetImageData() const;
 };
 
 #endif  // XFA_FXFA_PARSER_CXFA_VALUEDATA_H_
diff --git a/xfa/fxfa/parser/xfa_document_datamerger_imp.cpp b/xfa/fxfa/parser/xfa_document_datamerger_imp.cpp
index 381e176..2a3494f 100644
--- a/xfa/fxfa/parser/xfa_document_datamerger_imp.cpp
+++ b/xfa/fxfa/parser/xfa_document_datamerger_imp.cpp
@@ -152,7 +152,7 @@
         break;
       }
       case XFA_Element::ChoiceList:
-        defValueData.GetChildValueContent(wsValue);
+        wsValue = defValueData.GetChildValueContent();
         if (pWidgetData->GetChoiceListOpen() == XFA_ATTRIBUTEENUM_MultiSelect) {
           std::vector<WideString> wsSelTextArray =
               pWidgetData->GetSelectedItemsValue();
@@ -180,7 +180,7 @@
         }
         break;
       case XFA_Element::CheckButton:
-        defValueData.GetChildValueContent(wsValue);
+        wsValue = defValueData.GetChildValueContent();
         if (wsValue.IsEmpty())
           break;
 
@@ -199,7 +199,7 @@
           if (!pValue)
             continue;
 
-          CXFA_ValueData(pValue).GetChildValueContent(wsValue);
+          wsValue = CXFA_ValueData(pValue).GetChildValueContent();
           if (wsValue.IsEmpty())
             continue;
 
@@ -249,7 +249,7 @@
         break;
       }
       case XFA_Element::NumericEdit: {
-        defValueData.GetChildValueContent(wsValue);
+        wsValue = defValueData.GetChildValueContent();
         if (wsValue.IsEmpty())
           break;
 
@@ -265,7 +265,7 @@
         break;
       }
       default:
-        defValueData.GetChildValueContent(wsValue);
+        wsValue = defValueData.GetChildValueContent();
         if (wsValue.IsEmpty())
           break;