From fa50df5605a14ca4c9ba440506685981f1c8b04b Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Wed, 3 Jan 2018 12:15:53 -0500 Subject: 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 Commit-Queue: dsinclair --- xfa/fxfa/cxfa_ffcheckbutton.cpp | 11 +++---- xfa/fxfa/cxfa_fffield.cpp | 21 +++++++------- xfa/fxfa/cxfa_ffpushbutton.cpp | 13 +++++---- xfa/fxfa/cxfa_widgetacc.cpp | 35 +++++++++++----------- xfa/fxfa/parser/cxfa_caption.cpp | 39 +++++++++++++++++++++++++ xfa/fxfa/parser/cxfa_caption.h | 12 ++++++++ xfa/fxfa/parser/cxfa_captiondata.cpp | 56 ------------------------------------ xfa/fxfa/parser/cxfa_captiondata.h | 30 ------------------- xfa/fxfa/parser/cxfa_widgetdata.cpp | 6 ++-- xfa/fxfa/parser/cxfa_widgetdata.h | 5 ++-- 10 files changed, 99 insertions(+), 129 deletions(-) delete mode 100644 xfa/fxfa/parser/cxfa_captiondata.cpp delete mode 100644 xfa/fxfa/parser/cxfa_captiondata.h (limited to 'xfa') 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( @@ -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(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(0, XFA_Element::Margin, false); +} + +CXFA_FontData CXFA_Caption::GetFontData() { + return CXFA_FontData(GetChild(0, XFA_Element::Font, false)); +} + +CXFA_Value* CXFA_Caption::GetValue() { + return GetChild(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(0, XFA_Element::Margin, false) - : nullptr; -} - -CXFA_FontData CXFA_CaptionData::GetFontData() const { - return CXFA_FontData( - m_pNode ? m_pNode->GetChild(0, XFA_Element::Font, false) - : nullptr); -} - -CXFA_Value* CXFA_CaptionData::GetValue() const { - return m_pNode ? m_pNode->GetChild(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( - 0, XFA_Element::Caption, false)); +CXFA_Caption* CXFA_WidgetData::GetCaption() { + return m_pNode->JSObject()->GetProperty(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(); -- cgit v1.2.3