aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLei Zhang <thestig@chromium.org>2019-02-08 17:49:45 +0000
committerChromium commit bot <commit-bot@chromium.org>2019-02-08 17:49:45 +0000
commitb8df6056026a87917a67035cedb0c6bcbe4fa9ab (patch)
tree16e30ba99824a741cfa3c9f9661617653c407a55
parent7ab1c4c7df8c45600eddaf5e30e498320e63c141 (diff)
downloadpdfium-b8df6056026a87917a67035cedb0c6bcbe4fa9ab.tar.gz
Break circular dependency between xfa/fxfa and xfa/fgas.
Move CXFA_LinkUserData and CXFA_TextUserData to xfa/fgas/layout. Rename them to CFX_LinkUserData and CFX_TextUserData, respectively. Change-Id: Ie31b58fb72890f01b8fb1b107c04df7c9eaf1a2a Reviewed-on: https://pdfium-review.googlesource.com/c/50351 Reviewed-by: Tom Sepez <tsepez@chromium.org> Commit-Queue: Lei Zhang <thestig@chromium.org>
-rw-r--r--xfa/fgas/layout/BUILD.gn5
-rw-r--r--xfa/fgas/layout/cfx_breakpiece.cpp2
-rw-r--r--xfa/fgas/layout/cfx_breakpiece.h5
-rw-r--r--xfa/fgas/layout/cfx_linkuserdata.cpp (renamed from xfa/fxfa/cxfa_linkuserdata.cpp)6
-rw-r--r--xfa/fgas/layout/cfx_linkuserdata.h (renamed from xfa/fxfa/cxfa_linkuserdata.h)12
-rw-r--r--xfa/fgas/layout/cfx_rtfbreak.cpp7
-rw-r--r--xfa/fgas/layout/cfx_rtfbreak.h6
-rw-r--r--xfa/fgas/layout/cfx_textuserdata.cpp (renamed from xfa/fxfa/cxfa_textuserdata.cpp)12
-rw-r--r--xfa/fgas/layout/cfx_textuserdata.h30
-rw-r--r--xfa/fxfa/BUILD.gn6
-rw-r--r--xfa/fxfa/cxfa_fftext.cpp2
-rw-r--r--xfa/fxfa/cxfa_textlayout.cpp14
-rw-r--r--xfa/fxfa/cxfa_textlayout.h4
-rw-r--r--xfa/fxfa/cxfa_textpiece.cpp2
-rw-r--r--xfa/fxfa/cxfa_textpiece.h4
-rw-r--r--xfa/fxfa/cxfa_textuserdata.h30
16 files changed, 75 insertions, 72 deletions
diff --git a/xfa/fgas/layout/BUILD.gn b/xfa/fgas/layout/BUILD.gn
index 59b4fcdab..ba0b40c9c 100644
--- a/xfa/fgas/layout/BUILD.gn
+++ b/xfa/fgas/layout/BUILD.gn
@@ -18,8 +18,12 @@ jumbo_source_set("layout") {
"cfx_breakpiece.h",
"cfx_char.cpp",
"cfx_char.h",
+ "cfx_linkuserdata.cpp",
+ "cfx_linkuserdata.h",
"cfx_rtfbreak.cpp",
"cfx_rtfbreak.h",
+ "cfx_textuserdata.cpp",
+ "cfx_textuserdata.h",
"cfx_txtbreak.cpp",
"cfx_txtbreak.h",
"fx_arabic.cpp",
@@ -30,6 +34,7 @@ jumbo_source_set("layout") {
deps = [
"../:fgas",
"../../../core/fxcrt",
+ "../../../core/fxcrt/css",
"../../../core/fxge",
]
configs += [
diff --git a/xfa/fgas/layout/cfx_breakpiece.cpp b/xfa/fgas/layout/cfx_breakpiece.cpp
index 9372c2fcd..b0cc7540e 100644
--- a/xfa/fgas/layout/cfx_breakpiece.cpp
+++ b/xfa/fgas/layout/cfx_breakpiece.cpp
@@ -6,6 +6,8 @@
#include "xfa/fgas/layout/cfx_breakpiece.h"
+#include "xfa/fgas/layout/cfx_textuserdata.h"
+
CFX_BreakPiece::CFX_BreakPiece()
: m_dwStatus(CFX_BreakType::Piece),
m_iStartPos(0),
diff --git a/xfa/fgas/layout/cfx_breakpiece.h b/xfa/fgas/layout/cfx_breakpiece.h
index 9b1ebd644..8ea70320f 100644
--- a/xfa/fgas/layout/cfx_breakpiece.h
+++ b/xfa/fgas/layout/cfx_breakpiece.h
@@ -13,7 +13,8 @@
#include "core/fxcrt/retain_ptr.h"
#include "core/fxcrt/unowned_ptr.h"
#include "xfa/fgas/layout/cfx_char.h"
-#include "xfa/fxfa/cxfa_textuserdata.h"
+
+class CFX_TextUserData;
class CFX_BreakPiece {
public:
@@ -41,7 +42,7 @@ class CFX_BreakPiece {
uint32_t m_dwIdentity;
uint32_t m_dwCharStyles;
UnownedPtr<std::vector<CFX_Char>> m_pChars;
- RetainPtr<CXFA_TextUserData> m_pUserData;
+ RetainPtr<CFX_TextUserData> m_pUserData;
};
#endif // XFA_FGAS_LAYOUT_CFX_BREAKPIECE_H_
diff --git a/xfa/fxfa/cxfa_linkuserdata.cpp b/xfa/fgas/layout/cfx_linkuserdata.cpp
index 84cee352a..591d861c0 100644
--- a/xfa/fxfa/cxfa_linkuserdata.cpp
+++ b/xfa/fgas/layout/cfx_linkuserdata.cpp
@@ -4,9 +4,9 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "xfa/fxfa/cxfa_linkuserdata.h"
+#include "xfa/fgas/layout/cfx_linkuserdata.h"
-CXFA_LinkUserData::CXFA_LinkUserData(const wchar_t* pszText)
+CFX_LinkUserData::CFX_LinkUserData(const wchar_t* pszText)
: m_wsURLContent(pszText) {}
-CXFA_LinkUserData::~CXFA_LinkUserData() {}
+CFX_LinkUserData::~CFX_LinkUserData() {}
diff --git a/xfa/fxfa/cxfa_linkuserdata.h b/xfa/fgas/layout/cfx_linkuserdata.h
index baa39aaf5..6f23b0e35 100644
--- a/xfa/fxfa/cxfa_linkuserdata.h
+++ b/xfa/fgas/layout/cfx_linkuserdata.h
@@ -4,14 +4,14 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#ifndef XFA_FXFA_CXFA_LINKUSERDATA_H_
-#define XFA_FXFA_CXFA_LINKUSERDATA_H_
+#ifndef XFA_FGAS_LAYOUT_CFX_LINKUSERDATA_H_
+#define XFA_FGAS_LAYOUT_CFX_LINKUSERDATA_H_
#include "core/fxcrt/fx_string.h"
#include "core/fxcrt/fx_system.h"
#include "core/fxcrt/retain_ptr.h"
-class CXFA_LinkUserData final : public Retainable {
+class CFX_LinkUserData final : public Retainable {
public:
template <typename T, typename... Args>
friend RetainPtr<T> pdfium::MakeRetain(Args&&... args);
@@ -19,10 +19,10 @@ class CXFA_LinkUserData final : public Retainable {
const wchar_t* GetLinkURL() const { return m_wsURLContent.c_str(); }
private:
- explicit CXFA_LinkUserData(const wchar_t* pszText);
- ~CXFA_LinkUserData() override;
+ explicit CFX_LinkUserData(const wchar_t* pszText);
+ ~CFX_LinkUserData() override;
WideString m_wsURLContent;
};
-#endif // XFA_FXFA_CXFA_LINKUSERDATA_H_
+#endif // XFA_FGAS_LAYOUT_CFX_LINKUSERDATA_H_
diff --git a/xfa/fgas/layout/cfx_rtfbreak.cpp b/xfa/fgas/layout/cfx_rtfbreak.cpp
index 407d574e4..776a2fe13 100644
--- a/xfa/fgas/layout/cfx_rtfbreak.cpp
+++ b/xfa/fgas/layout/cfx_rtfbreak.cpp
@@ -13,6 +13,7 @@
#include "third_party/base/stl_util.h"
#include "xfa/fgas/font/cfgas_gefont.h"
#include "xfa/fgas/layout/cfx_char.h"
+#include "xfa/fgas/layout/cfx_textuserdata.h"
#include "xfa/fgas/layout/fx_arabic.h"
#include "xfa/fgas/layout/fx_linebreak.h"
@@ -43,7 +44,7 @@ void CFX_RTFBreak::AddPositionedTab(float fTabPos) {
m_PositionedTabs.insert(it, iTabPos);
}
-void CFX_RTFBreak::SetUserData(const RetainPtr<CXFA_TextUserData>& pUserData) {
+void CFX_RTFBreak::SetUserData(const RetainPtr<CFX_TextUserData>& pUserData) {
if (m_pUserData == pUserData)
return;
@@ -389,7 +390,7 @@ bool CFX_RTFBreak::EndBreak_SplitLine(CFX_BreakLine* pNextLine,
tp.m_iVerticalScale = pTC->vertical_scale();
dwIdentity = pTC->m_dwIdentity;
tp.m_dwIdentity = dwIdentity;
- tp.m_pUserData = pTC->m_pUserData.As<CXFA_TextUserData>();
+ tp.m_pUserData = pTC->m_pUserData.As<CFX_TextUserData>();
j = i;
bNew = false;
}
@@ -462,7 +463,7 @@ void CFX_RTFBreak::EndBreak_BidiLine(std::deque<FX_TPO>* tpos,
tp.m_iVerticalScale = pTC->vertical_scale();
dwIdentity = pTC->m_dwIdentity;
tp.m_dwIdentity = dwIdentity;
- tp.m_pUserData = pTC->m_pUserData.As<CXFA_TextUserData>();
+ tp.m_pUserData = pTC->m_pUserData.As<CFX_TextUserData>();
tp.m_dwStatus = CFX_BreakType::Piece;
++i;
} else if (iBidiLevel != pTC->m_iBidiLevel ||
diff --git a/xfa/fgas/layout/cfx_rtfbreak.h b/xfa/fgas/layout/cfx_rtfbreak.h
index 7af369f05..2f09d99ba 100644
--- a/xfa/fgas/layout/cfx_rtfbreak.h
+++ b/xfa/fgas/layout/cfx_rtfbreak.h
@@ -14,9 +14,9 @@
#include "core/fxcrt/fx_unicode.h"
#include "core/fxcrt/retain_ptr.h"
#include "xfa/fgas/layout/cfx_break.h"
-#include "xfa/fxfa/cxfa_textuserdata.h"
class CFGAS_GEFont;
+class CFX_TextUserData;
class TextCharPos;
enum class CFX_RTFLineAlignment {
@@ -51,7 +51,7 @@ class CFX_RTFBreak final : public CFX_Break {
void SetLineStartPos(float fLinePos);
void SetAlignment(CFX_RTFLineAlignment align) { m_iAlignment = align; }
- void SetUserData(const RetainPtr<CXFA_TextUserData>& pUserData);
+ void SetUserData(const RetainPtr<CFX_TextUserData>& pUserData);
void AddPositionedTab(float fTabPos);
@@ -90,7 +90,7 @@ class CFX_RTFBreak final : public CFX_Break {
bool m_bPagination;
std::vector<int32_t> m_PositionedTabs;
CFX_RTFLineAlignment m_iAlignment;
- RetainPtr<CXFA_TextUserData> m_pUserData;
+ RetainPtr<CFX_TextUserData> m_pUserData;
};
#endif // XFA_FGAS_LAYOUT_CFX_RTFBREAK_H_
diff --git a/xfa/fxfa/cxfa_textuserdata.cpp b/xfa/fgas/layout/cfx_textuserdata.cpp
index 6c4697860..f5151bd7c 100644
--- a/xfa/fxfa/cxfa_textuserdata.cpp
+++ b/xfa/fgas/layout/cfx_textuserdata.cpp
@@ -4,20 +4,20 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "xfa/fxfa/cxfa_textuserdata.h"
+#include "xfa/fgas/layout/cfx_textuserdata.h"
#include "core/fxcrt/css/cfx_css.h"
#include "core/fxcrt/css/cfx_csscomputedstyle.h"
#include "core/fxcrt/css/cfx_cssstyleselector.h"
-#include "xfa/fxfa/cxfa_linkuserdata.h"
+#include "xfa/fgas/layout/cfx_linkuserdata.h"
-CXFA_TextUserData::CXFA_TextUserData(
+CFX_TextUserData::CFX_TextUserData(
const RetainPtr<CFX_CSSComputedStyle>& pStyle)
: m_pStyle(pStyle) {}
-CXFA_TextUserData::CXFA_TextUserData(
+CFX_TextUserData::CFX_TextUserData(
const RetainPtr<CFX_CSSComputedStyle>& pStyle,
- const RetainPtr<CXFA_LinkUserData>& pLinkData)
+ const RetainPtr<CFX_LinkUserData>& pLinkData)
: m_pStyle(pStyle), m_pLinkData(pLinkData) {}
-CXFA_TextUserData::~CXFA_TextUserData() {}
+CFX_TextUserData::~CFX_TextUserData() {}
diff --git a/xfa/fgas/layout/cfx_textuserdata.h b/xfa/fgas/layout/cfx_textuserdata.h
new file mode 100644
index 000000000..d5aaed9d0
--- /dev/null
+++ b/xfa/fgas/layout/cfx_textuserdata.h
@@ -0,0 +1,30 @@
+// Copyright 2017 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_FGAS_LAYOUT_CFX_TEXTUSERDATA_H_
+#define XFA_FGAS_LAYOUT_CFX_TEXTUSERDATA_H_
+
+#include "core/fxcrt/retain_ptr.h"
+
+class CFX_CSSComputedStyle;
+class CFX_LinkUserData;
+
+class CFX_TextUserData final : public Retainable {
+ public:
+ template <typename T, typename... Args>
+ friend RetainPtr<T> pdfium::MakeRetain(Args&&... args);
+
+ RetainPtr<CFX_CSSComputedStyle> m_pStyle;
+ RetainPtr<CFX_LinkUserData> m_pLinkData;
+
+ private:
+ explicit CFX_TextUserData(const RetainPtr<CFX_CSSComputedStyle>& pStyle);
+ CFX_TextUserData(const RetainPtr<CFX_CSSComputedStyle>& pStyle,
+ const RetainPtr<CFX_LinkUserData>& pLinkData);
+ ~CFX_TextUserData() override;
+};
+
+#endif // XFA_FGAS_LAYOUT_CFX_TEXTUSERDATA_H_
diff --git a/xfa/fxfa/BUILD.gn b/xfa/fxfa/BUILD.gn
index 2eb80ceac..4f4e95f6b 100644
--- a/xfa/fxfa/BUILD.gn
+++ b/xfa/fxfa/BUILD.gn
@@ -72,8 +72,6 @@ jumbo_source_set("fxfa") {
"cxfa_fwltheme.h",
"cxfa_imagerenderer.cpp",
"cxfa_imagerenderer.h",
- "cxfa_linkuserdata.cpp",
- "cxfa_linkuserdata.h",
"cxfa_loadercontext.cpp",
"cxfa_loadercontext.h",
"cxfa_pieceline.cpp",
@@ -94,8 +92,6 @@ jumbo_source_set("fxfa") {
"cxfa_textprovider.h",
"cxfa_texttabstopscontext.cpp",
"cxfa_texttabstopscontext.h",
- "cxfa_textuserdata.cpp",
- "cxfa_textuserdata.h",
"fxfa.h",
"fxfa_basic.h",
]
@@ -121,8 +117,6 @@ jumbo_source_set("fxfa") {
]
allow_circular_includes_from = [
"../../fxjs",
- "../fgas",
- "../fgas/layout",
"../fwl",
"layout",
"parser",
diff --git a/xfa/fxfa/cxfa_fftext.cpp b/xfa/fxfa/cxfa_fftext.cpp
index cca6cc0db..0db0afff4 100644
--- a/xfa/fxfa/cxfa_fftext.cpp
+++ b/xfa/fxfa/cxfa_fftext.cpp
@@ -6,13 +6,13 @@
#include "xfa/fxfa/cxfa_fftext.h"
+#include "xfa/fgas/layout/cfx_linkuserdata.h"
#include "xfa/fwl/fwl_widgetdef.h"
#include "xfa/fwl/fwl_widgethit.h"
#include "xfa/fxfa/cxfa_ffapp.h"
#include "xfa/fxfa/cxfa_ffdoc.h"
#include "xfa/fxfa/cxfa_ffpageview.h"
#include "xfa/fxfa/cxfa_ffwidget.h"
-#include "xfa/fxfa/cxfa_linkuserdata.h"
#include "xfa/fxfa/cxfa_pieceline.h"
#include "xfa/fxfa/cxfa_textlayout.h"
#include "xfa/fxfa/cxfa_textpiece.h"
diff --git a/xfa/fxfa/cxfa_textlayout.cpp b/xfa/fxfa/cxfa_textlayout.cpp
index 0902bb7a7..2d6bce93b 100644
--- a/xfa/fxfa/cxfa_textlayout.cpp
+++ b/xfa/fxfa/cxfa_textlayout.cpp
@@ -21,15 +21,15 @@
#include "third_party/base/stl_util.h"
#include "xfa/fde/cfde_textout.h"
#include "xfa/fgas/font/cfgas_gefont.h"
+#include "xfa/fgas/layout/cfx_linkuserdata.h"
#include "xfa/fgas/layout/cfx_rtfbreak.h"
-#include "xfa/fxfa/cxfa_linkuserdata.h"
+#include "xfa/fgas/layout/cfx_textuserdata.h"
#include "xfa/fxfa/cxfa_loadercontext.h"
#include "xfa/fxfa/cxfa_pieceline.h"
#include "xfa/fxfa/cxfa_textparsecontext.h"
#include "xfa/fxfa/cxfa_textpiece.h"
#include "xfa/fxfa/cxfa_textprovider.h"
#include "xfa/fxfa/cxfa_texttabstopscontext.h"
-#include "xfa/fxfa/cxfa_textuserdata.h"
#include "xfa/fxfa/parser/cxfa_font.h"
#include "xfa/fxfa/parser/cxfa_node.h"
#include "xfa/fxfa/parser/cxfa_para.h"
@@ -700,7 +700,7 @@ bool CXFA_TextLayout::LoadRichText(
float* pLinePos,
const RetainPtr<CFX_CSSComputedStyle>& pParentStyle,
bool bSavePieces,
- RetainPtr<CXFA_LinkUserData> pLinkData,
+ RetainPtr<CFX_LinkUserData> pLinkData,
bool bEndBreak,
bool bIsOl,
int32_t iLiCount) {
@@ -761,7 +761,7 @@ bool CXFA_TextLayout::LoadRichText(
WideString wsLinkContent = pElement->GetAttribute(L"href");
if (!wsLinkContent.IsEmpty()) {
pLinkData =
- pdfium::MakeRetain<CXFA_LinkUserData>(wsLinkContent.c_str());
+ pdfium::MakeRetain<CFX_LinkUserData>(wsLinkContent.c_str());
}
}
@@ -815,7 +815,7 @@ bool CXFA_TextLayout::LoadRichText(
if (wsText.GetLength() > 0) {
if (!m_pLoader || m_pLoader->iChar == 0) {
- auto pUserData = pdfium::MakeRetain<CXFA_TextUserData>(
+ auto pUserData = pdfium::MakeRetain<CFX_TextUserData>(
bContentNode ? pParentStyle : pStyle, pLinkData);
m_pBreak->SetUserData(pUserData);
}
@@ -1005,7 +1005,7 @@ void CXFA_TextLayout::AppendTextLine(CFX_BreakType dwStatus,
int32_t i = 0;
for (i = 0; i < iPieces; i++) {
const CFX_BreakPiece* pPiece = m_pBreak->GetBreakPieceUnstable(i);
- CXFA_TextUserData* pUserData = pPiece->m_pUserData.Get();
+ CFX_TextUserData* pUserData = pPiece->m_pUserData.Get();
if (pUserData)
pStyle = pUserData->m_pStyle;
float fVerScale = pPiece->m_iVerticalScale / 100.0f;
@@ -1057,7 +1057,7 @@ void CXFA_TextLayout::AppendTextLine(CFX_BreakType dwStatus,
float fLineWidth = 0;
for (int32_t i = 0; i < iPieces; i++) {
const CFX_BreakPiece* pPiece = m_pBreak->GetBreakPieceUnstable(i);
- CXFA_TextUserData* pUserData = pPiece->m_pUserData.Get();
+ CFX_TextUserData* pUserData = pPiece->m_pUserData.Get();
if (pUserData)
pStyle = pUserData->m_pStyle;
float fVerScale = pPiece->m_iVerticalScale / 100.0f;
diff --git a/xfa/fxfa/cxfa_textlayout.h b/xfa/fxfa/cxfa_textlayout.h
index f09653b04..b28be4294 100644
--- a/xfa/fxfa/cxfa_textlayout.h
+++ b/xfa/fxfa/cxfa_textlayout.h
@@ -21,7 +21,7 @@ class CFX_CSSComputedStyle;
class CFX_RTFBreak;
class CFX_RenderDevice;
class CFX_XMLNode;
-class CXFA_LinkUserData;
+class CFX_LinkUserData;
class CXFA_Node;
class CXFA_PieceLine;
class CXFA_TextPiece;
@@ -86,7 +86,7 @@ class CXFA_TextLayout {
float* pLinePos,
const RetainPtr<CFX_CSSComputedStyle>& pParentStyle,
bool bSavePieces,
- RetainPtr<CXFA_LinkUserData> pLinkData,
+ RetainPtr<CFX_LinkUserData> pLinkData,
bool bEndBreak,
bool bIsOl,
int32_t iLiCount);
diff --git a/xfa/fxfa/cxfa_textpiece.cpp b/xfa/fxfa/cxfa_textpiece.cpp
index d6a8d3aba..166bb51ad 100644
--- a/xfa/fxfa/cxfa_textpiece.cpp
+++ b/xfa/fxfa/cxfa_textpiece.cpp
@@ -7,7 +7,7 @@
#include "xfa/fxfa/cxfa_textpiece.h"
#include "xfa/fgas/font/cfgas_gefont.h"
-#include "xfa/fxfa/cxfa_linkuserdata.h"
+#include "xfa/fgas/layout/cfx_linkuserdata.h"
CXFA_TextPiece::CXFA_TextPiece() {}
diff --git a/xfa/fxfa/cxfa_textpiece.h b/xfa/fxfa/cxfa_textpiece.h
index f115c41e8..d09d06603 100644
--- a/xfa/fxfa/cxfa_textpiece.h
+++ b/xfa/fxfa/cxfa_textpiece.h
@@ -15,7 +15,7 @@
#include "xfa/fxfa/fxfa_basic.h"
class CFGAS_GEFont;
-class CXFA_LinkUserData;
+class CFX_LinkUserData;
class CXFA_TextPiece {
public:
@@ -35,7 +35,7 @@ class CXFA_TextPiece {
float fFontSize;
CFX_RectF rtPiece;
RetainPtr<CFGAS_GEFont> pFont;
- RetainPtr<CXFA_LinkUserData> pLinkData;
+ RetainPtr<CFX_LinkUserData> pLinkData;
};
#endif // XFA_FXFA_CXFA_TEXTPIECE_H_
diff --git a/xfa/fxfa/cxfa_textuserdata.h b/xfa/fxfa/cxfa_textuserdata.h
deleted file mode 100644
index 1fe4fae6c..000000000
--- a/xfa/fxfa/cxfa_textuserdata.h
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright 2017 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_CXFA_TEXTUSERDATA_H_
-#define XFA_FXFA_CXFA_TEXTUSERDATA_H_
-
-#include "core/fxcrt/retain_ptr.h"
-
-class CFX_CSSComputedStyle;
-class CXFA_LinkUserData;
-
-class CXFA_TextUserData final : public Retainable {
- public:
- template <typename T, typename... Args>
- friend RetainPtr<T> pdfium::MakeRetain(Args&&... args);
-
- RetainPtr<CFX_CSSComputedStyle> m_pStyle;
- RetainPtr<CXFA_LinkUserData> m_pLinkData;
-
- private:
- explicit CXFA_TextUserData(const RetainPtr<CFX_CSSComputedStyle>& pStyle);
- CXFA_TextUserData(const RetainPtr<CFX_CSSComputedStyle>& pStyle,
- const RetainPtr<CXFA_LinkUserData>& pLinkData);
- ~CXFA_TextUserData() override;
-};
-
-#endif // XFA_FXFA_CXFA_TEXTUSERDATA_H_