summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2018-01-03 12:15:53 -0500
committerChromium commit bot <commit-bot@chromium.org>2018-01-03 18:22:31 +0000
commitfa50df5605a14ca4c9ba440506685981f1c8b04b (patch)
tree993f3af23213e8c86c62314b502f6144ce13688b
parent39628b04bc86461426f2dcf5a568f5e9e70ad997 (diff)
downloadpdfium-fa50df5605a14ca4c9ba440506685981f1c8b04b.tar.xz
Fold CXFA_CaptionData into CXFA_Caption
This CL folds the CXFA_CaptionData wrapper class into CXFA_Caption. Change-Id: I65302656a89985dec4d0ec1f42b5eaa95d22aae2 Reviewed-on: https://pdfium-review.googlesource.com/22150 Reviewed-by: Ryan Harrison <rharrison@chromium.org> Commit-Queue: dsinclair <dsinclair@chromium.org>
-rw-r--r--BUILD.gn2
-rw-r--r--xfa/fxfa/cxfa_ffcheckbutton.cpp11
-rw-r--r--xfa/fxfa/cxfa_fffield.cpp21
-rw-r--r--xfa/fxfa/cxfa_ffpushbutton.cpp13
-rw-r--r--xfa/fxfa/cxfa_widgetacc.cpp35
-rw-r--r--xfa/fxfa/parser/cxfa_caption.cpp39
-rw-r--r--xfa/fxfa/parser/cxfa_caption.h12
-rw-r--r--xfa/fxfa/parser/cxfa_captiondata.cpp56
-rw-r--r--xfa/fxfa/parser/cxfa_captiondata.h30
-rw-r--r--xfa/fxfa/parser/cxfa_widgetdata.cpp6
-rw-r--r--xfa/fxfa/parser/cxfa_widgetdata.h5
11 files changed, 99 insertions, 131 deletions
diff --git a/BUILD.gn b/BUILD.gn
index 5c3f047b39..f85934d39d 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -2145,8 +2145,6 @@ if (pdf_enable_xfa) {
"xfa/fxfa/parser/cxfa_calendarsymbols.h",
"xfa/fxfa/parser/cxfa_caption.cpp",
"xfa/fxfa/parser/cxfa_caption.h",
- "xfa/fxfa/parser/cxfa_captiondata.cpp",
- "xfa/fxfa/parser/cxfa_captiondata.h",
"xfa/fxfa/parser/cxfa_certificate.cpp",
"xfa/fxfa/parser/cxfa_certificate.h",
"xfa/fxfa/parser/cxfa_certificates.cpp",
diff --git a/xfa/fxfa/cxfa_ffcheckbutton.cpp b/xfa/fxfa/cxfa_ffcheckbutton.cpp
index 9083a254a1..d82deb3dd0 100644
--- a/xfa/fxfa/cxfa_ffcheckbutton.cpp
+++ b/xfa/fxfa/cxfa_ffcheckbutton.cpp
@@ -20,6 +20,7 @@
#include "xfa/fxfa/cxfa_ffpageview.h"
#include "xfa/fxfa/cxfa_ffwidget.h"
#include "xfa/fxfa/parser/cxfa_border.h"
+#include "xfa/fxfa/parser/cxfa_caption.h"
#include "xfa/fxfa/parser/cxfa_para.h"
CXFA_FFCheckButton::CXFA_FFCheckButton(CXFA_WidgetAcc* pDataAcc)
@@ -97,11 +98,11 @@ bool CXFA_FFCheckButton::PerformLayout() {
XFA_AttributeEnum iCapPlacement = XFA_AttributeEnum::Unknown;
float fCapReserve = 0;
- CXFA_CaptionData captionData = m_pDataAcc->GetCaptionData();
- if (captionData.HasValidNode() && captionData.IsVisible()) {
+ CXFA_Caption* caption = m_pDataAcc->GetCaption();
+ if (caption && caption->IsVisible()) {
m_rtCaption = rtWidget;
- iCapPlacement = captionData.GetPlacementType();
- fCapReserve = captionData.GetReserve();
+ iCapPlacement = caption->GetPlacementType();
+ fCapReserve = caption->GetReserve();
if (fCapReserve <= 0) {
if (iCapPlacement == XFA_AttributeEnum::Top ||
iCapPlacement == XFA_AttributeEnum::Bottom) {
@@ -121,7 +122,7 @@ bool CXFA_FFCheckButton::PerformLayout() {
}
m_rtUI = rtWidget;
- CXFA_Margin* captionMargin = captionData.GetMargin();
+ CXFA_Margin* captionMargin = caption->GetMargin();
switch (iCapPlacement) {
case XFA_AttributeEnum::Left: {
m_rtCaption.width = fCapReserve;
diff --git a/xfa/fxfa/cxfa_fffield.cpp b/xfa/fxfa/cxfa_fffield.cpp
index 678b9f0d9a..ff5cc76138 100644
--- a/xfa/fxfa/cxfa_fffield.cpp
+++ b/xfa/fxfa/cxfa_fffield.cpp
@@ -24,6 +24,7 @@
#include "xfa/fxfa/cxfa_textlayout.h"
#include "xfa/fxfa/parser/cxfa_border.h"
#include "xfa/fxfa/parser/cxfa_calculate.h"
+#include "xfa/fxfa/parser/cxfa_caption.h"
#include "xfa/fxfa/parser/cxfa_margin.h"
#include "xfa/fxfa/parser/cxfa_node.h"
#include "xfa/fxfa/parser/cxfa_script.h"
@@ -191,15 +192,15 @@ void CXFA_FFField::CapPlacement() {
XFA_AttributeEnum iCapPlacement = XFA_AttributeEnum::Unknown;
float fCapReserve = 0;
- CXFA_CaptionData captionData = m_pDataAcc->GetCaptionData();
- if (captionData.HasValidNode() && !captionData.IsHidden()) {
- iCapPlacement = captionData.GetPlacementType();
+ CXFA_Caption* caption = m_pDataAcc->GetCaption();
+ if (caption && !caption->IsHidden()) {
+ iCapPlacement = caption->GetPlacementType();
if (iCapPlacement == XFA_AttributeEnum::Top && GetPrev()) {
m_rtCaption.Reset();
} else if (iCapPlacement == XFA_AttributeEnum::Bottom && GetNext()) {
m_rtCaption.Reset();
} else {
- fCapReserve = captionData.GetReserve();
+ fCapReserve = caption->GetReserve();
CXFA_LayoutItem* pItem = this;
if (!pItem->GetPrev() && !pItem->GetNext()) {
m_rtCaption = rtWidget;
@@ -233,14 +234,14 @@ void CXFA_FFField::CapPlacement() {
switch (iCapPlacement) {
case XFA_AttributeEnum::Left: {
m_rtCaption.width = fCapReserve;
- CapLeftRightPlacement(captionData.GetMargin(), rtWidget, iCapPlacement);
+ CapLeftRightPlacement(caption->GetMargin(), rtWidget, iCapPlacement);
m_rtUI.width -= fCapReserve;
m_rtUI.left += fCapReserve;
break;
}
case XFA_AttributeEnum::Top: {
m_rtCaption.height = fCapReserve;
- CapTopBottomPlacement(captionData.GetMargin(), rtWidget, iCapPlacement);
+ CapTopBottomPlacement(caption->GetMargin(), rtWidget, iCapPlacement);
m_rtUI.top += fCapReserve;
m_rtUI.height -= fCapReserve;
break;
@@ -248,14 +249,14 @@ void CXFA_FFField::CapPlacement() {
case XFA_AttributeEnum::Right: {
m_rtCaption.left = m_rtCaption.right() - fCapReserve;
m_rtCaption.width = fCapReserve;
- CapLeftRightPlacement(captionData.GetMargin(), rtWidget, iCapPlacement);
+ CapLeftRightPlacement(caption->GetMargin(), rtWidget, iCapPlacement);
m_rtUI.width -= fCapReserve;
break;
}
case XFA_AttributeEnum::Bottom: {
m_rtCaption.top = m_rtCaption.bottom() - fCapReserve;
m_rtCaption.height = fCapReserve;
- CapTopBottomPlacement(captionData.GetMargin(), rtWidget, iCapPlacement);
+ CapTopBottomPlacement(caption->GetMargin(), rtWidget, iCapPlacement);
m_rtUI.height -= fCapReserve;
break;
}
@@ -602,8 +603,8 @@ void CXFA_FFField::RenderCaption(CXFA_Graphics* pGS, CFX_Matrix* pMatrix) {
if (!pCapTextLayout)
return;
- CXFA_CaptionData captionData = m_pDataAcc->GetCaptionData();
- if (!captionData.HasValidNode() || !captionData.IsVisible())
+ CXFA_Caption* caption = m_pDataAcc->GetCaption();
+ if (!caption || !caption->IsVisible())
return;
if (!pCapTextLayout->IsLoaded())
diff --git a/xfa/fxfa/cxfa_ffpushbutton.cpp b/xfa/fxfa/cxfa_ffpushbutton.cpp
index 8358ba0dac..9db0c25bbc 100644
--- a/xfa/fxfa/cxfa_ffpushbutton.cpp
+++ b/xfa/fxfa/cxfa_ffpushbutton.cpp
@@ -19,6 +19,7 @@
#include "xfa/fxfa/cxfa_textlayout.h"
#include "xfa/fxfa/cxfa_textprovider.h"
#include "xfa/fxfa/parser/cxfa_border.h"
+#include "xfa/fxfa/parser/cxfa_caption.h"
#include "xfa/fxgraphics/cxfa_gecolor.h"
#include "xfa/fxgraphics/cxfa_gepath.h"
@@ -102,9 +103,9 @@ bool CXFA_FFPushButton::PerformLayout() {
if (margin)
XFA_RectWidthoutMargin(rtWidget, margin);
- CXFA_CaptionData captionData = m_pDataAcc->GetCaptionData();
+ CXFA_Caption* caption = m_pDataAcc->GetCaption();
m_rtCaption = rtWidget;
- CXFA_Margin* captionMargin = captionData.GetMargin();
+ CXFA_Margin* captionMargin = caption->GetMargin();
if (captionMargin)
XFA_RectWidthoutMargin(m_rtCaption, captionMargin);
@@ -131,8 +132,8 @@ FX_ARGB CXFA_FFPushButton::GetFillColor() {
}
void CXFA_FFPushButton::LoadHighlightCaption() {
- CXFA_CaptionData captionData = m_pDataAcc->GetCaptionData();
- if (!captionData.HasValidNode() || captionData.IsHidden())
+ CXFA_Caption* caption = m_pDataAcc->GetCaption();
+ if (!caption || caption->IsHidden())
return;
if (m_pDataAcc->HasButtonRollover()) {
@@ -166,8 +167,8 @@ void CXFA_FFPushButton::LayoutHighlightCaption() {
void CXFA_FFPushButton::RenderHighlightCaption(CXFA_Graphics* pGS,
CFX_Matrix* pMatrix) {
CXFA_TextLayout* pCapTextLayout = m_pDataAcc->GetCaptionTextLayout();
- CXFA_CaptionData captionData = m_pDataAcc->GetCaptionData();
- if (!captionData.HasValidNode() || !captionData.IsVisible())
+ CXFA_Caption* caption = m_pDataAcc->GetCaption();
+ if (!caption || !caption->IsVisible())
return;
CFX_RenderDevice* pRenderDevice = pGS->GetRenderDevice();
diff --git a/xfa/fxfa/cxfa_widgetacc.cpp b/xfa/fxfa/cxfa_widgetacc.cpp
index ec33159055..30f435a6a5 100644
--- a/xfa/fxfa/cxfa_widgetacc.cpp
+++ b/xfa/fxfa/cxfa_widgetacc.cpp
@@ -22,6 +22,7 @@
#include "xfa/fxfa/cxfa_textlayout.h"
#include "xfa/fxfa/cxfa_textprovider.h"
#include "xfa/fxfa/parser/cxfa_calculate.h"
+#include "xfa/fxfa/parser/cxfa_caption.h"
#include "xfa/fxfa/parser/cxfa_items.h"
#include "xfa/fxfa/parser/cxfa_layoutprocessor.h"
#include "xfa/fxfa/parser/cxfa_localevalue.h"
@@ -104,8 +105,8 @@ class CXFA_FieldLayoutData : public CXFA_WidgetLayoutData {
bool LoadCaption(CXFA_WidgetAcc* pAcc) {
if (m_pCapTextLayout)
return true;
- CXFA_CaptionData captionData = pAcc->GetCaptionData();
- if (!captionData.HasValidNode() || captionData.IsHidden())
+ CXFA_Caption* caption = pAcc->GetCaption();
+ if (!caption || caption->IsHidden())
return false;
m_pCapTextProvider = pdfium::MakeUnique<CXFA_TextProvider>(
@@ -505,9 +506,9 @@ WideString CXFA_WidgetAcc::GetValidateCaptionName(bool bVersionFlag) {
WideString wsCaptionName;
if (!bVersionFlag) {
- CXFA_CaptionData captionData = GetCaptionData();
- if (captionData.HasValidNode()) {
- CXFA_Value* capValue = captionData.GetValue();
+ CXFA_Caption* caption = GetCaption();
+ if (caption) {
+ CXFA_Value* capValue = caption->GetValue();
if (capValue) {
CXFA_Text* captionText = capValue->GetText();
if (captionText)
@@ -685,14 +686,14 @@ void CXFA_WidgetAcc::UpdateUIDisplay(CXFA_FFWidget* pExcept) {
}
void CXFA_WidgetAcc::CalcCaptionSize(CFX_SizeF& szCap) {
- CXFA_CaptionData captionData = GetCaptionData();
- if (!captionData.HasValidNode() || !captionData.IsVisible())
+ CXFA_Caption* caption = GetCaption();
+ if (!caption || !caption->IsVisible())
return;
LoadCaption();
XFA_Element eUIType = GetUIType();
- XFA_AttributeEnum iCapPlacement = captionData.GetPlacementType();
- float fCapReserve = captionData.GetReserve();
+ XFA_AttributeEnum iCapPlacement = caption->GetPlacementType();
+ float fCapReserve = caption->GetReserve();
const bool bVert = iCapPlacement == XFA_AttributeEnum::Top ||
iCapPlacement == XFA_AttributeEnum::Bottom;
const bool bReserveExit = fCapReserve > 0.01;
@@ -709,7 +710,7 @@ void CXFA_WidgetAcc::CalcCaptionSize(CFX_SizeF& szCap) {
bVert ? szCap.height = fCapReserve : szCap.width = fCapReserve;
} else {
float fFontSize = 10.0f;
- CXFA_FontData fontData = captionData.GetFontData();
+ CXFA_FontData fontData = caption->GetFontData();
if (fontData.HasValidNode()) {
fFontSize = fontData.GetFontSize();
} else {
@@ -726,7 +727,7 @@ void CXFA_WidgetAcc::CalcCaptionSize(CFX_SizeF& szCap) {
}
}
- CXFA_Margin* captionMargin = captionData.GetMargin();
+ CXFA_Margin* captionMargin = caption->GetMargin();
if (captionMargin) {
float fLeftInset = captionMargin->GetLeftInset();
float fTopInset = captionMargin->GetTopInset();
@@ -749,7 +750,7 @@ bool CXFA_WidgetAcc::CalculateFieldAutoSize(CFX_SizeF& size) {
size.width += rtUIMargin.left + rtUIMargin.width;
size.height += rtUIMargin.top + rtUIMargin.height;
if (szCap.width > 0 && szCap.height > 0) {
- switch (GetCaptionData().GetPlacementType()) {
+ switch (GetCaption()->GetPlacementType()) {
case XFA_AttributeEnum::Left:
case XFA_AttributeEnum::Right:
case XFA_AttributeEnum::Inline: {
@@ -848,7 +849,7 @@ bool CXFA_WidgetAcc::CalculateTextEditAutoSize(CFX_SizeF& size) {
bool bCapExit = szCap.width > 0.01 && szCap.height > 0.01;
XFA_AttributeEnum iCapPlacement = XFA_AttributeEnum::Unknown;
if (bCapExit) {
- iCapPlacement = GetCaptionData().GetPlacementType();
+ iCapPlacement = GetCaption()->GetPlacementType();
switch (iCapPlacement) {
case XFA_AttributeEnum::Left:
case XFA_AttributeEnum::Right:
@@ -1184,10 +1185,10 @@ bool CXFA_WidgetAcc::FindSplitPos(int32_t iBlockIndex, float& fCalcHeight) {
XFA_AttributeEnum iCapPlacement = XFA_AttributeEnum::Unknown;
float fCapReserve = 0;
if (iBlockIndex == 0) {
- CXFA_CaptionData captionData = GetCaptionData();
- if (captionData.HasValidNode() && !captionData.IsHidden()) {
- iCapPlacement = captionData.GetPlacementType();
- fCapReserve = captionData.GetReserve();
+ CXFA_Caption* caption = GetCaption();
+ if (caption && !caption->IsHidden()) {
+ iCapPlacement = caption->GetPlacementType();
+ fCapReserve = caption->GetReserve();
}
if (iCapPlacement == XFA_AttributeEnum::Top &&
fCalcHeight < fCapReserve + fTopInset) {
diff --git a/xfa/fxfa/parser/cxfa_caption.cpp b/xfa/fxfa/parser/cxfa_caption.cpp
index 8148b443e5..1af834a277 100644
--- a/xfa/fxfa/parser/cxfa_caption.cpp
+++ b/xfa/fxfa/parser/cxfa_caption.cpp
@@ -8,6 +8,10 @@
#include "fxjs/xfa/cjx_caption.h"
#include "third_party/base/ptr_util.h"
+#include "xfa/fxfa/parser/cxfa_font.h"
+#include "xfa/fxfa/parser/cxfa_margin.h"
+#include "xfa/fxfa/parser/cxfa_measurement.h"
+#include "xfa/fxfa/parser/cxfa_value.h"
namespace {
@@ -42,3 +46,38 @@ CXFA_Caption::CXFA_Caption(CXFA_Document* doc, XFA_PacketType packet)
pdfium::MakeUnique<CJX_Caption>(this)) {}
CXFA_Caption::~CXFA_Caption() {}
+
+bool CXFA_Caption::IsVisible() {
+ return JSObject()
+ ->TryEnum(XFA_Attribute::Presence, true)
+ .value_or(XFA_AttributeEnum::Visible) ==
+ XFA_AttributeEnum::Visible;
+}
+
+bool CXFA_Caption::IsHidden() {
+ return JSObject()
+ ->TryEnum(XFA_Attribute::Presence, true)
+ .value_or(XFA_AttributeEnum::Visible) == XFA_AttributeEnum::Hidden;
+}
+
+XFA_AttributeEnum CXFA_Caption::GetPlacementType() {
+ return JSObject()
+ ->TryEnum(XFA_Attribute::Placement, true)
+ .value_or(XFA_AttributeEnum::Left);
+}
+
+float CXFA_Caption::GetReserve() const {
+ return JSObject()->GetMeasure(XFA_Attribute::Reserve).ToUnit(XFA_Unit::Pt);
+}
+
+CXFA_Margin* CXFA_Caption::GetMargin() {
+ return GetChild<CXFA_Margin>(0, XFA_Element::Margin, false);
+}
+
+CXFA_FontData CXFA_Caption::GetFontData() {
+ return CXFA_FontData(GetChild<CXFA_Font>(0, XFA_Element::Font, false));
+}
+
+CXFA_Value* CXFA_Caption::GetValue() {
+ return GetChild<CXFA_Value>(0, XFA_Element::Value, false);
+}
diff --git a/xfa/fxfa/parser/cxfa_caption.h b/xfa/fxfa/parser/cxfa_caption.h
index 8d6ce13fb9..7a52254d77 100644
--- a/xfa/fxfa/parser/cxfa_caption.h
+++ b/xfa/fxfa/parser/cxfa_caption.h
@@ -7,12 +7,24 @@
#ifndef XFA_FXFA_PARSER_CXFA_CAPTION_H_
#define XFA_FXFA_PARSER_CXFA_CAPTION_H_
+#include "xfa/fxfa/parser/cxfa_fontdata.h"
#include "xfa/fxfa/parser/cxfa_node.h"
+class CXFA_Margin;
+class CXFA_Value;
+
class CXFA_Caption : public CXFA_Node {
public:
CXFA_Caption(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Caption() override;
+
+ bool IsVisible();
+ bool IsHidden();
+ XFA_AttributeEnum GetPlacementType();
+ float GetReserve() const;
+ CXFA_Margin* GetMargin();
+ CXFA_FontData GetFontData();
+ CXFA_Value* GetValue();
};
#endif // XFA_FXFA_PARSER_CXFA_CAPTION_H_
diff --git a/xfa/fxfa/parser/cxfa_captiondata.cpp b/xfa/fxfa/parser/cxfa_captiondata.cpp
deleted file mode 100644
index 276d10c354..0000000000
--- a/xfa/fxfa/parser/cxfa_captiondata.cpp
+++ /dev/null
@@ -1,56 +0,0 @@
-// 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_captiondata.h"
-
-#include "xfa/fxfa/parser/cxfa_font.h"
-#include "xfa/fxfa/parser/cxfa_margin.h"
-#include "xfa/fxfa/parser/cxfa_measurement.h"
-#include "xfa/fxfa/parser/cxfa_node.h"
-#include "xfa/fxfa/parser/cxfa_value.h"
-
-CXFA_CaptionData::CXFA_CaptionData(CXFA_Node* pNode) : CXFA_DataData(pNode) {}
-
-bool CXFA_CaptionData::IsVisible() const {
- return m_pNode->JSObject()
- ->TryEnum(XFA_Attribute::Presence, true)
- .value_or(XFA_AttributeEnum::Visible) ==
- XFA_AttributeEnum::Visible;
-}
-
-bool CXFA_CaptionData::IsHidden() const {
- return m_pNode->JSObject()
- ->TryEnum(XFA_Attribute::Presence, true)
- .value_or(XFA_AttributeEnum::Visible) == XFA_AttributeEnum::Hidden;
-}
-
-XFA_AttributeEnum CXFA_CaptionData::GetPlacementType() const {
- return m_pNode->JSObject()
- ->TryEnum(XFA_Attribute::Placement, true)
- .value_or(XFA_AttributeEnum::Left);
-}
-
-float CXFA_CaptionData::GetReserve() const {
- return m_pNode->JSObject()
- ->GetMeasure(XFA_Attribute::Reserve)
- .ToUnit(XFA_Unit::Pt);
-}
-
-CXFA_Margin* CXFA_CaptionData::GetMargin() const {
- return m_pNode ? m_pNode->GetChild<CXFA_Margin>(0, XFA_Element::Margin, false)
- : nullptr;
-}
-
-CXFA_FontData CXFA_CaptionData::GetFontData() const {
- return CXFA_FontData(
- m_pNode ? m_pNode->GetChild<CXFA_Font>(0, XFA_Element::Font, false)
- : nullptr);
-}
-
-CXFA_Value* CXFA_CaptionData::GetValue() const {
- return m_pNode ? m_pNode->GetChild<CXFA_Value>(0, XFA_Element::Value, false)
- : nullptr;
-}
diff --git a/xfa/fxfa/parser/cxfa_captiondata.h b/xfa/fxfa/parser/cxfa_captiondata.h
deleted file mode 100644
index 4b526b6754..0000000000
--- a/xfa/fxfa/parser/cxfa_captiondata.h
+++ /dev/null
@@ -1,30 +0,0 @@
-// 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
-
-#ifndef XFA_FXFA_PARSER_CXFA_CAPTIONDATA_H_
-#define XFA_FXFA_PARSER_CXFA_CAPTIONDATA_H_
-
-#include "xfa/fxfa/parser/cxfa_datadata.h"
-#include "xfa/fxfa/parser/cxfa_fontdata.h"
-
-class CXFA_Margin;
-class CXFA_Node;
-class CXFA_Value;
-
-class CXFA_CaptionData : public CXFA_DataData {
- public:
- explicit CXFA_CaptionData(CXFA_Node* pNode);
-
- bool IsVisible() const;
- bool IsHidden() const;
- XFA_AttributeEnum GetPlacementType() const;
- float GetReserve() const;
- CXFA_Margin* GetMargin() const;
- CXFA_FontData GetFontData() const;
- CXFA_Value* GetValue() const;
-};
-
-#endif // XFA_FXFA_PARSER_CXFA_CAPTIONDATA_H_
diff --git a/xfa/fxfa/parser/cxfa_widgetdata.cpp b/xfa/fxfa/parser/cxfa_widgetdata.cpp
index 8fef4b4418..1351c77be2 100644
--- a/xfa/fxfa/parser/cxfa_widgetdata.cpp
+++ b/xfa/fxfa/parser/cxfa_widgetdata.cpp
@@ -265,9 +265,9 @@ CXFA_Border* CXFA_WidgetData::GetBorder(bool bModified) {
bModified);
}
-CXFA_CaptionData CXFA_WidgetData::GetCaptionData() {
- return CXFA_CaptionData(m_pNode->JSObject()->GetProperty<CXFA_Caption>(
- 0, XFA_Element::Caption, false));
+CXFA_Caption* CXFA_WidgetData::GetCaption() {
+ return m_pNode->JSObject()->GetProperty<CXFA_Caption>(0, XFA_Element::Caption,
+ false);
}
CXFA_FontData CXFA_WidgetData::GetFontData(bool bModified) {
diff --git a/xfa/fxfa/parser/cxfa_widgetdata.h b/xfa/fxfa/parser/cxfa_widgetdata.h
index d8dee8a2a3..57548e329c 100644
--- a/xfa/fxfa/parser/cxfa_widgetdata.h
+++ b/xfa/fxfa/parser/cxfa_widgetdata.h
@@ -15,7 +15,6 @@
#include "core/fxcrt/fx_system.h"
#include "fxbarcode/BC_Library.h"
#include "xfa/fxfa/parser/cxfa_binddata.h"
-#include "xfa/fxfa/parser/cxfa_captiondata.h"
#include "xfa/fxfa/parser/cxfa_datadata.h"
#include "xfa/fxfa/parser/cxfa_fontdata.h"
@@ -34,9 +33,11 @@ enum XFA_VALUEPICTURE {
class CXFA_Border;
class CXFA_Calculate;
+class CXFA_Caption;
class CXFA_Margin;
class CXFA_Node;
class CXFA_Para;
+class CXFA_Value;
class CXFA_Validate;
class IFX_Locale;
@@ -59,7 +60,7 @@ class CXFA_WidgetData : public CXFA_DataData {
bool IsMultiLine();
CXFA_Border* GetBorder(bool bModified);
- CXFA_CaptionData GetCaptionData();
+ CXFA_Caption* GetCaption();
CXFA_FontData GetFontData(bool bModified);
CXFA_Margin* GetMargin();
CXFA_Para* GetPara();