From 2cae3e26526a8aeef5744665589d1bfaf5efe6f3 Mon Sep 17 00:00:00 2001 From: Lei Zhang Date: Fri, 26 Oct 2018 20:25:18 +0000 Subject: Forward declare a bunch of classes. Then do IWYU to fix up build errors. Move some implementations out of headers to allow more forward declarations. Change-Id: Idbeb978705a21cd6fb710ca9f5e99b4ea7d93ec5 Reviewed-on: https://pdfium-review.googlesource.com/c/44632 Reviewed-by: Tom Sepez Commit-Queue: Lei Zhang --- xfa/fde/cfde_textout.h | 1 - xfa/fgas/layout/cfx_txtbreak.h | 3 ++- xfa/fxfa/cxfa_ffdoc.cpp | 11 +++++++++++ xfa/fxfa/cxfa_ffdoc.h | 13 +------------ xfa/fxfa/cxfa_ffwidget.cpp | 1 + xfa/fxfa/cxfa_imagerenderer.cpp | 1 + xfa/fxfa/cxfa_imagerenderer.h | 1 - xfa/fxfa/fxfa.h | 1 - xfa/fxgraphics/cxfa_graphics.h | 7 ++----- 9 files changed, 18 insertions(+), 21 deletions(-) (limited to 'xfa') diff --git a/xfa/fde/cfde_textout.h b/xfa/fde/cfde_textout.h index e3799a3469..4db7faffe3 100644 --- a/xfa/fde/cfde_textout.h +++ b/xfa/fde/cfde_textout.h @@ -12,7 +12,6 @@ #include #include "core/fxcrt/cfx_char.h" -#include "core/fxge/cfx_defaultrenderdevice.h" #include "core/fxge/cfx_renderdevice.h" #include "core/fxge/fx_dib.h" #include "xfa/fde/cfde_data.h" diff --git a/xfa/fgas/layout/cfx_txtbreak.h b/xfa/fgas/layout/cfx_txtbreak.h index 63a6d93e87..be9ddb706d 100644 --- a/xfa/fgas/layout/cfx_txtbreak.h +++ b/xfa/fgas/layout/cfx_txtbreak.h @@ -11,11 +11,12 @@ #include #include "core/fxcrt/cfx_char.h" -#include "core/fxge/cfx_renderdevice.h" +#include "core/fxcrt/fx_coordinates.h" #include "xfa/fgas/layout/cfx_break.h" class CFDE_TextEditEngine; class CFGAS_GEFont; +class FXTEXT_CHARPOS; struct FDE_TEXTEDITPIECE; #define FX_TXTCHARSTYLE_ArabicShadda 0x0020 diff --git a/xfa/fxfa/cxfa_ffdoc.cpp b/xfa/fxfa/cxfa_ffdoc.cpp index 030883b5cc..07e0b1bc9e 100644 --- a/xfa/fxfa/cxfa_ffdoc.cpp +++ b/xfa/fxfa/cxfa_ffdoc.cpp @@ -39,6 +39,17 @@ #include "xfa/fxfa/parser/cxfa_dynamicrender.h" #include "xfa/fxfa/parser/cxfa_node.h" +FX_IMAGEDIB_AND_DPI::FX_IMAGEDIB_AND_DPI() = default; +FX_IMAGEDIB_AND_DPI::FX_IMAGEDIB_AND_DPI(const FX_IMAGEDIB_AND_DPI& that) = + default; + +FX_IMAGEDIB_AND_DPI::FX_IMAGEDIB_AND_DPI(const RetainPtr& pDib, + int32_t xDpi, + int32_t yDpi) + : pDibSource(pDib), iImageXDpi(xDpi), iImageYDpi(yDpi) {} + +FX_IMAGEDIB_AND_DPI::~FX_IMAGEDIB_AND_DPI() = default; + CXFA_FFDoc::CXFA_FFDoc(CXFA_FFApp* pApp, IXFA_DocEnvironment* pDocEnvironment) : m_pDocEnvironment(pDocEnvironment), m_pApp(pApp) {} diff --git a/xfa/fxfa/cxfa_ffdoc.h b/xfa/fxfa/cxfa_ffdoc.h index 1b7536c836..d2aa74b0d6 100644 --- a/xfa/fxfa/cxfa_ffdoc.h +++ b/xfa/fxfa/cxfa_ffdoc.h @@ -17,6 +17,7 @@ class CFGAS_PDFFontMgr; class CFX_ChecksumContext; +class CFX_DIBBase; class CFX_DIBitmap; class CFX_XMLDocument; class CPDF_Document; @@ -38,18 +39,6 @@ struct FX_IMAGEDIB_AND_DPI { int32_t iImageYDpi; }; -inline FX_IMAGEDIB_AND_DPI::FX_IMAGEDIB_AND_DPI() = default; -inline FX_IMAGEDIB_AND_DPI::FX_IMAGEDIB_AND_DPI( - const FX_IMAGEDIB_AND_DPI& that) = default; - -inline FX_IMAGEDIB_AND_DPI::FX_IMAGEDIB_AND_DPI( - const RetainPtr& pDib, - int32_t xDpi, - int32_t yDpi) - : pDibSource(pDib), iImageXDpi(xDpi), iImageYDpi(yDpi) {} - -inline FX_IMAGEDIB_AND_DPI::~FX_IMAGEDIB_AND_DPI() = default; - class CXFA_FFDoc { public: CXFA_FFDoc(CXFA_FFApp* pApp, IXFA_DocEnvironment* pDocEnvironment); diff --git a/xfa/fxfa/cxfa_ffwidget.cpp b/xfa/fxfa/cxfa_ffwidget.cpp index f425ccf625..5a13c177ee 100644 --- a/xfa/fxfa/cxfa_ffwidget.cpp +++ b/xfa/fxfa/cxfa_ffwidget.cpp @@ -18,6 +18,7 @@ #include "core/fxcrt/cfx_memorystream.h" #include "core/fxcrt/maybe_owned.h" #include "core/fxge/cfx_pathdata.h" +#include "core/fxge/dib/cfx_dibitmap.h" #include "xfa/fwl/fwl_widgethit.h" #include "xfa/fxfa/cxfa_eventparam.h" #include "xfa/fxfa/cxfa_ffapp.h" diff --git a/xfa/fxfa/cxfa_imagerenderer.cpp b/xfa/fxfa/cxfa_imagerenderer.cpp index 49f953b7b9..164d056f00 100644 --- a/xfa/fxfa/cxfa_imagerenderer.cpp +++ b/xfa/fxfa/cxfa_imagerenderer.cpp @@ -8,6 +8,7 @@ #include "core/fxge/cfx_renderdevice.h" #include "core/fxge/dib/cfx_dibbase.h" +#include "core/fxge/dib/cfx_dibitmap.h" #include "core/fxge/dib/cfx_imagerenderer.h" #include "core/fxge/dib/cfx_imagetransformer.h" #include "third_party/base/ptr_util.h" diff --git a/xfa/fxfa/cxfa_imagerenderer.h b/xfa/fxfa/cxfa_imagerenderer.h index 0b727c9ab4..37e45d03b8 100644 --- a/xfa/fxfa/cxfa_imagerenderer.h +++ b/xfa/fxfa/cxfa_imagerenderer.h @@ -12,7 +12,6 @@ #include "core/fxcrt/fx_coordinates.h" #include "core/fxcrt/retain_ptr.h" #include "core/fxcrt/unowned_ptr.h" -#include "core/fxge/fx_dib.h" class CFX_RenderDevice; class CFX_DIBBase; diff --git a/xfa/fxfa/fxfa.h b/xfa/fxfa/fxfa.h index 1e89c794c8..f455238691 100644 --- a/xfa/fxfa/fxfa.h +++ b/xfa/fxfa/fxfa.h @@ -11,7 +11,6 @@ #include "core/fxcrt/fx_coordinates.h" #include "core/fxcrt/retain_ptr.h" -#include "core/fxge/dib/cfx_dibbase.h" #include "core/fxge/fx_dib.h" #include "xfa/fxfa/fxfa_basic.h" diff --git a/xfa/fxgraphics/cxfa_graphics.h b/xfa/fxgraphics/cxfa_graphics.h index 3c9b269ea5..3eb6f42015 100644 --- a/xfa/fxgraphics/cxfa_graphics.h +++ b/xfa/fxgraphics/cxfa_graphics.h @@ -11,14 +11,9 @@ #include #include "core/fxcrt/fx_system.h" -#include "core/fxge/cfx_defaultrenderdevice.h" #include "core/fxge/cfx_graphstatedata.h" -#include "core/fxge/cfx_renderdevice.h" -#include "core/fxge/fx_dib.h" #include "xfa/fxgraphics/cxfa_gecolor.h" -class CXFA_GEPath; - using FX_FillMode = int32_t; enum class FX_HatchStyle { @@ -30,7 +25,9 @@ enum class FX_HatchStyle { DiagonalCross = 5 }; +class CFX_DIBBase; class CFX_RenderDevice; +class CXFA_GEPath; class CXFA_Graphics { public: -- cgit v1.2.3