sw: forward declare sw::FrameFormats in doc.hxx.

Forward declare the template and repeat the TableFrameFormats
typedef to drop the frameformats.hxx include, which gifted us
boost multi_index headers and libxml/xmlwriter.h into
every user of doc.hxx.

clang -ftime-trace suggests this is 0.75% of the sw compile.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I7863a8b59491f34d541944f252ec22ece0046b24
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/12941
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Noel Grandin <noel.grandin@collabora.com>
(cherry picked from commit c38556dd61c5896d667767d125c59a1e2094f704)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/211354
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
This commit is contained in:
Michael Meeks
2026-09-29 21:16:39 +02:00
committed by Xisco Fauli
parent bc6c2272ba
commit 7b04a0a0cf
30 changed files with 31 additions and 1 deletions
+2 -1
View File
@@ -35,7 +35,6 @@
#include <editeng/numitem.hxx>
#include "tox.hxx"
#include "frmfmt.hxx"
#include "frameformats.hxx"
#include "charfmt.hxx"
#include "docary.hxx"
#include "charformats.hxx"
@@ -147,6 +146,8 @@ namespace sw {
enum class RedlineMode;
enum class FieldmarkMode;
enum class ParagraphBreakMode;
template<class T> class FrameFormats;
typedef FrameFormats<::SwTableFormat*> TableFrameFormats;
class MetaFieldManager;
class UndoManager;
class IShellCursorSupplier;
+1
View File
@@ -11,6 +11,7 @@
#include <IDocumentLayoutAccess.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <formatflysplit.hxx>
#include <frmmgr.hxx>
#include <pagefrm.hxx>
+1
View File
@@ -18,6 +18,7 @@
#include <flyfrm.hxx>
#include <flyfrms.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <wrtsh.hxx>
namespace
@@ -18,6 +18,7 @@
#include <wrtsh.hxx>
#include <unotxdoc.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <IDocumentLayoutAccess.hxx>
#include <rootfrm.hxx>
#include <pagefrm.hxx>
+1
View File
@@ -27,6 +27,7 @@
#include <unotextrange.hxx>
#include <unotxdoc.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <ndtxt.hxx>
#include <textlinebreak.hxx>
#include <textcontentcontrol.hxx>
+1
View File
@@ -63,6 +63,7 @@
#include <olmenu.hxx>
#include <hintids.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <fmtcntnt.hxx>
#include <ndgrf.hxx>
#include <ndole.hxx>
@@ -19,6 +19,7 @@
#include <unotxdoc.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <fmtanchr.hxx>
class Test : public SwModelTestBase
+1
View File
@@ -25,6 +25,7 @@
#include <unotxdoc.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <wrtsh.hxx>
#include <fmtpdsc.hxx>
#include <IDocumentContentOperations.hxx>
+1
View File
@@ -26,6 +26,7 @@
#include <svx/svdpage.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <drawdoc.hxx>
#include <IDocumentDrawModelAccess.hxx>
#include <IDocumentMarkAccess.hxx>
+1
View File
@@ -19,6 +19,7 @@
#include <svx/xflclit.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <wrtsh.hxx>
#include <view.hxx>
#include <IDocumentStylePoolAccess.hxx>
+1
View File
@@ -17,6 +17,7 @@
#include <docary.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <frmmgr.hxx>
#include <wrtsh.hxx>
#include <formatflysplit.hxx>
+1
View File
@@ -28,6 +28,7 @@
#include <IDocumentLayoutAccess.hxx>
#include <docsh.hxx>
#include <LibreOfficeKit/LibreOfficeKitEnums.h>
#include <libxml/xmlwriter.h>
#include <rootfrm.hxx>
#include <unotxdoc.hxx>
#include <view.hxx>
@@ -21,6 +21,7 @@
#include <com/sun/star/text/XPageCursor.hpp>
#include <com/sun/star/qa/XDumper.hpp>
#include <frameformats.hxx>
#include <frmatr.hxx>
#include <swtable.hxx>
#include <IDocumentLayoutAccess.hxx>
@@ -27,6 +27,7 @@
#include <editeng/fhgtitem.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <ndtxt.hxx>
#include <swtable.hxx>
#include <txatbase.hxx>
+1
View File
@@ -18,6 +18,7 @@
#include <fmtcntnt.hxx>
#include <ndtxt.hxx>
#include <docsh.hxx>
#include <frameformats.hxx>
#include <wrtsh.hxx>
#include <rootfrm.hxx>
#include <pagefrm.hxx>
@@ -19,6 +19,7 @@
#include <vcl/graph.hxx>
#include <fmtfsize.hxx>
#include <frameformats.hxx>
using namespace ::com::sun::star;
+1
View File
@@ -23,6 +23,7 @@
#include <float.h>
#include <hintids.hxx>
#include <hints.hxx>
#include <libxml/xmlwriter.h>
#include <node.hxx>
#include <rolbck.hxx>
#include <rtl/ustring.hxx>
+1
View File
@@ -28,6 +28,7 @@
#include <hints.hxx>
#include <ndhints.hxx>
#include <poolfmt.hxx>
#include <libxml/xmlwriter.h>
#include <o3tl/unit_conversion.hxx>
#include <osl/diagnose.h>
#include <sal/log.hxx>
@@ -36,6 +36,7 @@
#include <swbaslnk.hxx>
#include <section.hxx>
#include <docary.hxx>
#include <frameformats.hxx>
#include <frmfmt.hxx>
#include <numrule.hxx>
#include <fmtcntnt.hxx>
+1
View File
@@ -82,6 +82,7 @@
#include <scriptinfo.hxx>
#include <mdiexp.hxx>
#include <docary.hxx>
#include <frameformats.hxx>
#include <printdata.hxx>
#include <strings.hrc>
#include <SwUndoTOXChange.hxx>
+1
View File
@@ -19,6 +19,7 @@
#include <cellatr.hxx>
#include <doc.hxx>
#include <frameformats.hxx>
#include <IDocumentChartDataProviderAccess.hxx>
#include <IDocumentState.hxx>
#include <IDocumentUndoRedo.hxx>
+1
View File
@@ -26,6 +26,7 @@
#include <ndole.hxx>
#include <txttxmrk.hxx>
#include <fmtpdsc.hxx>
#include <frameformats.hxx>
#include <frmatr.hxx>
#include <pagedesc.hxx>
#include <doc.hxx>
+1
View File
@@ -18,6 +18,7 @@
*/
#include <float.h>
#include <libxml/xmlwriter.h>
#include <o3tl/any.hxx>
#include <osl/diagnose.h>
#include <svl/numformat.hxx>
+1
View File
@@ -19,6 +19,7 @@
#include <sal/config.h>
#include <libxml/xmlwriter.h>
#include <o3tl/any.hxx>
#include <calc.hxx>
+1
View File
@@ -38,6 +38,7 @@
#include <IDocumentRedlineAccess.hxx>
#include <IDocumentFieldsAccess.hxx>
#include <docary.hxx>
#include <frameformats.hxx>
#include <frame.hxx>
#include <swtable.hxx>
#include <ndtxt.hxx>
+1
View File
@@ -21,6 +21,7 @@
#include <com/sun/star/i18n/ScriptType.hpp>
#include <vcl/outdev.hxx>
#include <libxml/xmlwriter.h>
#include <editeng/brushitem.hxx>
#include <editeng/wrlmitem.hxx>
#include <editeng/kernitem.hxx>
+1
View File
@@ -21,6 +21,7 @@
#include <hintids.hxx>
#include <osl/diagnose.h>
#include <unotools/charclass.hxx>
#include <libxml/xmlwriter.h>
#include <doc.hxx>
#include <IDocumentRedlineAccess.hxx>
#include <swundo.hxx>
+1
View File
@@ -79,6 +79,7 @@
#include <fmtline.hxx>
#include <fmtpdsc.hxx>
#include <frmfmt.hxx>
#include <frameformats.hxx>
#include <section.hxx>
#include <ftninfo.hxx>
#include <pagedesc.hxx>
+1
View File
@@ -39,6 +39,7 @@
#include <swtable.hxx>
#include <doc.hxx>
#include <frmfmt.hxx>
#include <frameformats.hxx>
#include <wrtswtbl.hxx>
#include <fmtfsize.hxx>
#include <fmtornt.hxx>
+1
View File
@@ -26,6 +26,7 @@
#include <officecfg/Office/Common.hxx>
#include <unotools/localedatawrapper.hxx>
#include <vcl/outdev.hxx>
#include <libxml/xmlwriter.h>
#include <swmodule.hxx>
#include <viewopt.hxx>
#include <wdocsh.hxx>