summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2020-03-02 09:14:16 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2020-03-02 12:26:24 +0100
commit5962dbf15d99b54d33f7e6589a23b8bca4359168 (patch)
tree44129e9452ab5004def9257aecfbc4c41e1c566e
parent4e9aa386556f49358a1cef5c5f6b9b26d2e9e1b8 (diff)
speedup sw build a little
from 11m46 to 11m21 Used ClangBuildAnalyzer to find headers that took a long time to parse (in total, across all modules). (*) moved the boost stuff out of sw/inc/docary into a new header. (*) make sw/inc/ndtxt no longer include doc.hxx Change-Id: Ia1d4ebddb4ddd4ec4ffbc011f4a5e24a42b46d3f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89808 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r--sw/inc/doc.hxx3
-rw-r--r--sw/inc/docary.hxx102
-rw-r--r--sw/inc/frameformats.hxx123
-rw-r--r--sw/inc/ndtxt.hxx10
-rw-r--r--sw/qa/core/doc/doc.cxx1
-rw-r--r--sw/qa/extras/htmlimport/htmlimport.cxx1
-rw-r--r--sw/qa/extras/ooxmlexport/ooxmlexport13.cxx1
-rw-r--r--sw/qa/extras/rtfexport/rtfexport4.cxx1
-rw-r--r--sw/qa/extras/uiwriter/uiwriter.cxx1
-rw-r--r--sw/qa/extras/uiwriter/uiwriter2.cxx1
-rw-r--r--sw/qa/extras/ww8import/ww8import.cxx1
-rw-r--r--sw/source/core/crsr/crstrvl.cxx1
-rw-r--r--sw/source/core/doc/CntntIdxStore.cxx1
-rw-r--r--sw/source/core/doc/DocumentContentOperationsManager.cxx1
-rw-r--r--sw/source/core/doc/DocumentLayoutManager.cxx1
-rw-r--r--sw/source/core/doc/DocumentLinksAdministrationManager.cxx1
-rw-r--r--sw/source/core/doc/DocumentStylePoolManager.cxx1
-rw-r--r--sw/source/core/doc/dbgoutsw.cxx1
-rw-r--r--sw/source/core/doc/docbasic.cxx1
-rw-r--r--sw/source/core/doc/docchart.cxx2
-rw-r--r--sw/source/core/doc/doccomp.cxx1
-rw-r--r--sw/source/core/doc/docedt.cxx1
-rw-r--r--sw/source/core/doc/docfly.cxx1
-rw-r--r--sw/source/core/doc/docfmt.cxx6
-rw-r--r--sw/source/core/doc/docglbl.cxx1
-rw-r--r--sw/source/core/doc/doclay.cxx1
-rw-r--r--sw/source/core/doc/docnew.cxx1
-rw-r--r--sw/source/core/doc/docsort.cxx1
-rw-r--r--sw/source/core/doc/doctxm.cxx1
-rw-r--r--sw/source/core/doc/tblcpy.cxx1
-rw-r--r--sw/source/core/doc/textboxhelper.cxx1
-rw-r--r--sw/source/core/docnode/ndcopy.cxx1
-rw-r--r--sw/source/core/docnode/ndtbl.cxx1
-rw-r--r--sw/source/core/docnode/node.cxx1
-rw-r--r--sw/source/core/draw/dcontact.cxx1
-rw-r--r--sw/source/core/edit/edglss.cxx1
-rw-r--r--sw/source/core/edit/edws.cxx1
-rw-r--r--sw/source/core/fields/cellfml.cxx1
-rw-r--r--sw/source/core/frmedt/fecopy.cxx1
-rw-r--r--sw/source/core/frmedt/fefly1.cxx1
-rw-r--r--sw/source/core/frmedt/tblsel.cxx1
-rw-r--r--sw/source/core/layout/atrfrm.cxx1
-rw-r--r--sw/source/core/layout/flypos.cxx1
-rw-r--r--sw/source/core/layout/frmtool.cxx1
-rw-r--r--sw/source/core/layout/laycache.cxx1
-rw-r--r--sw/source/core/layout/pagechg.cxx1
-rw-r--r--sw/source/core/layout/tabfrm.cxx1
-rw-r--r--sw/source/core/text/EnhancedPDFExportHelper.cxx1
-rw-r--r--sw/source/core/text/itratr.cxx1
-rw-r--r--sw/source/core/text/itrpaint.cxx1
-rw-r--r--sw/source/core/text/pormulti.cxx1
-rw-r--r--sw/source/core/text/txtfrm.cxx6
-rw-r--r--sw/source/core/txtnode/ndtxt.cxx1
-rw-r--r--sw/source/core/txtnode/thints.cxx12
-rw-r--r--sw/source/core/undo/rolbck.cxx1
-rw-r--r--sw/source/core/undo/unattr.cxx1
-rw-r--r--sw/source/core/undo/undel.cxx1
-rw-r--r--sw/source/core/undo/undobj.cxx1
-rw-r--r--sw/source/core/undo/undobj1.cxx1
-rw-r--r--sw/source/core/undo/undraw.cxx1
-rw-r--r--sw/source/core/undo/untbl.cxx1
-rw-r--r--sw/source/core/undo/untblk.cxx1
-rw-r--r--sw/source/core/unocore/unocoll.cxx1
-rw-r--r--sw/source/core/unocore/unoobj2.cxx1
-rw-r--r--sw/source/core/unocore/unostyle.cxx1
-rw-r--r--sw/source/core/unocore/unotbl.cxx1
-rw-r--r--sw/source/core/unocore/unotext.cxx1
-rw-r--r--sw/source/filter/ascii/wrtasc.cxx1
-rw-r--r--sw/source/filter/basflt/shellio.cxx1
-rw-r--r--sw/source/filter/html/htmlforw.cxx1
-rw-r--r--sw/source/filter/html/htmlgrin.cxx1
-rw-r--r--sw/source/filter/html/htmltab.cxx1
-rw-r--r--sw/source/filter/html/swhtml.cxx1
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.cxx1
-rw-r--r--sw/source/filter/ww8/wrtw8esh.cxx1
-rw-r--r--sw/source/filter/ww8/ww8glsy.cxx1
-rw-r--r--sw/source/filter/xml/xmlexp.cxx1
-rw-r--r--sw/source/uibase/app/docstyle.cxx1
-rw-r--r--sw/source/uibase/docvw/UnfloatTableButton.cxx1
-rw-r--r--sw/source/uibase/uiview/view2.cxx1
-rw-r--r--sw/source/uibase/wrtsh/delete.cxx1
81 files changed, 215 insertions, 122 deletions
diff --git a/sw/inc/doc.hxx b/sw/inc/doc.hxx
index 14d98f6d5fee..6566cc56416e 100644
--- a/sw/inc/doc.hxx
+++ b/sw/inc/doc.hxx
@@ -760,8 +760,7 @@ public:
SwFrameFormat *MakeFrameFormat(const OUString &rFormatName, SwFrameFormat *pDerivedFrom,
bool bBroadcast = false, bool bAuto = true);
void DelFrameFormat( SwFrameFormat *pFormat, bool bBroadcast = false );
- SwFrameFormat* FindFrameFormatByName( const OUString& rName ) const
- { return static_cast<SwFrameFormat*>(FindFormatByName( static_cast<SwFormatsBase&>(*mpFrameFormatTable), rName )); }
+ SwFrameFormat* FindFrameFormatByName( const OUString& rName ) const;
SwCharFormat *MakeCharFormat(const OUString &rFormatName, SwCharFormat *pDerivedFrom,
bool bBroadcast = false );
diff --git a/sw/inc/docary.hxx b/sw/inc/docary.hxx
index 6a8040f06a08..d07819c40d50 100644
--- a/sw/inc/docary.hxx
+++ b/sw/inc/docary.hxx
@@ -23,13 +23,6 @@
#include <type_traits>
#include <o3tl/sorted_vector.hxx>
-#include <boost/multi_index_container.hpp>
-#include <boost/multi_index/composite_key.hpp>
-#include <boost/multi_index/identity.hpp>
-#include <boost/multi_index/mem_fun.hpp>
-#include <boost/multi_index/ordered_index.hpp>
-#include <boost/multi_index/random_access_index.hpp>
-
#include "fmtcol.hxx"
#include "frmfmt.hxx"
#include "section.hxx"
@@ -179,101 +172,6 @@ public:
SwGrfFormatColls() : SwFormatsModifyBase( DestructorPolicy::KeepElements ) {}
};
-// Like o3tl::find_partialorder_ptrequals
-// We don't allow duplicated object entries!
-struct type_name_key:boost::multi_index::composite_key<
- SwFrameFormat*,
- boost::multi_index::const_mem_fun<SwFormat,sal_uInt16,&SwFormat::Which>,
- boost::multi_index::const_mem_fun<SwFormat,const OUString&,&SwFormat::GetName>,
- boost::multi_index::identity<SwFrameFormat*> // the actual object pointer
->{};
-
-typedef boost::multi_index_container<
- SwFrameFormat*,
- boost::multi_index::indexed_by<
- boost::multi_index::random_access<>,
- boost::multi_index::ordered_unique< type_name_key >
- >
- >
- SwFrameFormatsBase;
-
-/// Specific frame formats (frames, DrawObjects).
-class SW_DLLPUBLIC SwFrameFormats : public SwFormatsBase
-{
- // function updating ByName index via modify
- friend void SwFrameFormat::SetName( const OUString&, bool );
-
- typedef SwFrameFormatsBase::nth_index<0>::type ByPos;
- typedef SwFrameFormatsBase::nth_index<1>::type ByTypeAndName;
- typedef ByPos::iterator iterator;
-
- SwFrameFormatsBase m_Array;
- ByPos &m_PosIndex;
- ByTypeAndName &m_TypeAndNameIndex;
-
-public:
- typedef ByPos::const_iterator const_iterator;
- typedef ByTypeAndName::const_iterator const_range_iterator;
- typedef SwFrameFormatsBase::size_type size_type;
- typedef SwFrameFormatsBase::value_type value_type;
-
- SwFrameFormats();
- // frees all SwFrameFormat!
- virtual ~SwFrameFormats() override;
-
- bool empty() const { return m_Array.empty(); }
- size_t size() const { return m_Array.size(); }
-
- // Only fails, if you try to insert the same object twice
- std::pair<const_iterator,bool> push_back( const value_type& x );
-
- // This will try to remove the exact object!
- bool erase( const value_type& x );
- void erase( size_type index );
- void erase( const_iterator const& position );
-
- // Get the iterator of the exact object (includes pointer!),
- // e.g for position with std::distance.
- // There is also ContainsFormat, if you don't need the position.
- const_iterator find( const value_type& x ) const;
-
- // As this array is non-unique related to type and name,
- // we always get ranges for the "key" values.
- std::pair<const_range_iterator,const_range_iterator>
- rangeFind( sal_uInt16 type, const OUString& name ) const;
- // Convenience function, which just uses type and name!
- // To look for the exact object use find.
- std::pair<const_range_iterator,const_range_iterator>
- rangeFind( const value_type& x ) const;
- // So we can actually check for end()
- const_range_iterator rangeEnd() const { return m_TypeAndNameIndex.end(); }
- const_iterator rangeProject( const_range_iterator const& position )
- { return m_Array.project<0>( position ); }
-
- const value_type& operator[]( size_t index_ ) const
- { return m_PosIndex.operator[]( index_ ); }
- const value_type& front() const { return m_PosIndex.front(); }
- const value_type& back() const { return m_PosIndex.back(); }
- const_iterator begin() const { return m_PosIndex.begin(); }
- const_iterator end() const { return m_PosIndex.end(); }
-
- void dumpAsXml(xmlTextWriterPtr pWriter, const char* pName) const;
-
- virtual size_t GetFormatCount() const override { return m_Array.size(); }
- virtual SwFormat* GetFormat(size_t idx) const override { return operator[]( idx ); }
-
- /// fast check if given format is contained here
- /// @precond pFormat must not have been deleted
- bool ContainsFormat(SwFrameFormat const& rFormat) const;
- /// not so fast check that given format is still alive (i.e. contained here)
- bool IsAlive(SwFrameFormat const*) const;
-
- void DeleteAndDestroyAll( bool keepDefault = false );
-
- bool newDefault( const value_type& x );
- void newDefault( const_iterator const& position );
-};
-
/// Unsorted, undeleting SwFrameFormat vector
class SwFrameFormatsV final : public SwFormatsModifyBase<SwFrameFormat*>
diff --git a/sw/inc/frameformats.hxx b/sw/inc/frameformats.hxx
new file mode 100644
index 000000000000..92b34d49e252
--- /dev/null
+++ b/sw/inc/frameformats.hxx
@@ -0,0 +1,123 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#pragma once
+
+#include "docary.hxx"
+#include <boost/multi_index_container.hpp>
+#include <boost/multi_index/composite_key.hpp>
+#include <boost/multi_index/identity.hpp>
+#include <boost/multi_index/mem_fun.hpp>
+#include <boost/multi_index/ordered_index.hpp>
+#include <boost/multi_index/random_access_index.hpp>
+
+// Like o3tl::find_partialorder_ptrequals
+// We don't allow duplicated object entries!
+struct type_name_key
+ : boost::multi_index::composite_key<
+ SwFrameFormat*, boost::multi_index::const_mem_fun<SwFormat, sal_uInt16, &SwFormat::Which>,
+ boost::multi_index::const_mem_fun<SwFormat, const OUString&, &SwFormat::GetName>,
+ boost::multi_index::identity<SwFrameFormat*> // the actual object pointer
+ >
+{
+};
+
+typedef boost::multi_index_container<
+ SwFrameFormat*,
+ boost::multi_index::indexed_by<boost::multi_index::random_access<>,
+ boost::multi_index::ordered_unique<type_name_key>>>
+ SwFrameFormatsBase;
+
+/// Specific frame formats (frames, DrawObjects).
+class SW_DLLPUBLIC SwFrameFormats : public SwFormatsBase
+{
+ // function updating ByName index via modify
+ friend void SwFrameFormat::SetName(const OUString&, bool);
+
+ typedef SwFrameFormatsBase::nth_index<0>::type ByPos;
+ typedef SwFrameFormatsBase::nth_index<1>::type ByTypeAndName;
+ typedef ByPos::iterator iterator;
+
+ SwFrameFormatsBase m_Array;
+ ByPos& m_PosIndex;
+ ByTypeAndName& m_TypeAndNameIndex;
+
+public:
+ typedef ByPos::const_iterator const_iterator;
+ typedef ByTypeAndName::const_iterator const_range_iterator;
+ typedef SwFrameFormatsBase::size_type size_type;
+ typedef SwFrameFormatsBase::value_type value_type;
+
+ SwFrameFormats();
+ // frees all SwFrameFormat!
+ virtual ~SwFrameFormats() override;
+
+ bool empty() const { return m_Array.empty(); }
+ size_t size() const { return m_Array.size(); }
+
+ // Only fails, if you try to insert the same object twice
+ std::pair<const_iterator, bool> push_back(const value_type& x);
+
+ // This will try to remove the exact object!
+ bool erase(const value_type& x);
+ void erase(size_type index);
+ void erase(const_iterator const& position);
+
+ // Get the iterator of the exact object (includes pointer!),
+ // e.g for position with std::distance.
+ // There is also ContainsFormat, if you don't need the position.
+ const_iterator find(const value_type& x) const;
+
+ // As this array is non-unique related to type and name,
+ // we always get ranges for the "key" values.
+ std::pair<const_range_iterator, const_range_iterator> rangeFind(sal_uInt16 type,
+ const OUString& name) const;
+ // Convenience function, which just uses type and name!
+ // To look for the exact object use find.
+ std::pair<const_range_iterator, const_range_iterator> rangeFind(const value_type& x) const;
+ // So we can actually check for end()
+ const_range_iterator rangeEnd() const { return m_TypeAndNameIndex.end(); }
+ const_iterator rangeProject(const_range_iterator const& position)
+ {
+ return m_Array.project<0>(position);
+ }
+
+ const value_type& operator[](size_t index_) const { return m_PosIndex.operator[](index_); }
+ const value_type& front() const { return m_PosIndex.front(); }
+ const value_type& back() const { return m_PosIndex.back(); }
+ const_iterator begin() const { return m_PosIndex.begin(); }
+ const_iterator end() const { return m_PosIndex.end(); }
+
+ void dumpAsXml(xmlTextWriterPtr pWriter, const char* pName) const;
+
+ virtual size_t GetFormatCount() const override { return m_Array.size(); }
+ virtual SwFormat* GetFormat(size_t idx) const override { return operator[](idx); }
+
+ /// fast check if given format is contained here
+ /// @precond pFormat must not have been deleted
+ bool ContainsFormat(SwFrameFormat const& rFormat) const;
+ /// not so fast check that given format is still alive (i.e. contained here)
+ bool IsAlive(SwFrameFormat const*) const;
+
+ void DeleteAndDestroyAll(bool keepDefault = false);
+
+ bool newDefault(const value_type& x);
+ void newDefault(const_iterator const& position);
+};
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/inc/ndtxt.hxx b/sw/inc/ndtxt.hxx
index acef43b0010e..dadf38794ef9 100644
--- a/sw/inc/ndtxt.hxx
+++ b/sw/inc/ndtxt.hxx
@@ -21,7 +21,6 @@
#include <cppuhelper/weakref.hxx>
-#include "doc.hxx"
#include "swdllapi.h"
#include "node.hxx"
#include "hintids.hxx"
@@ -63,6 +62,8 @@ class SwGrammarMarkUp;
struct SwDocStat;
struct SwParaIdleData_Impl;
enum class ExpandMode;
+enum class SwFieldIds : sal_uInt16;
+class SwField;
namespace sw { namespace mark { enum class RestoreMode; } }
@@ -708,13 +709,6 @@ public:
bool IsHiddenByParaField() const
{ return m_pSwpHints && m_pSwpHints->IsHiddenByParaField(); }
- int FieldCanHideParaWeight(SwFieldIds eFieldId) const
- {
- return GetDoc()->FieldCanHideParaWeight(eFieldId);
- }
- bool FieldHidesPara(const SwField& rField) const
- { return GetDoc()->FieldHidesPara(rField); }
-
/// Hidden Paragraph Field:
bool HasHiddenCharAttribute( bool bWholePara ) const
diff --git a/sw/qa/core/doc/doc.cxx b/sw/qa/core/doc/doc.cxx
index 1879e326fb9f..882f31873bf3 100644
--- a/sw/qa/core/doc/doc.cxx
+++ b/sw/qa/core/doc/doc.cxx
@@ -15,6 +15,7 @@
#include <wrtsh.hxx>
#include <fmtanchr.hxx>
+#include <frameformats.hxx>
static char const DATA_DIRECTORY[] = "/sw/qa/core/doc/data/";
diff --git a/sw/qa/extras/htmlimport/htmlimport.cxx b/sw/qa/extras/htmlimport/htmlimport.cxx
index 6259b1141520..f0d28644b3e1 100644
--- a/sw/qa/extras/htmlimport/htmlimport.cxx
+++ b/sw/qa/extras/htmlimport/htmlimport.cxx
@@ -26,6 +26,7 @@
#include <txatbase.hxx>
#include <fmtflcnt.hxx>
#include <fmtfsize.hxx>
+#include <frameformats.hxx>
class HtmlImportTest : public SwModelTestBase
{
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx
index a37c603732ad..ccb2c196ae58 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx
@@ -23,6 +23,7 @@
#include <editsh.hxx>
#include <frmatr.hxx>
+#include <frameformats.hxx>
class Test : public SwModelTestBase
{
diff --git a/sw/qa/extras/rtfexport/rtfexport4.cxx b/sw/qa/extras/rtfexport/rtfexport4.cxx
index 4a95b6f4338a..d2a2cd98d445 100644
--- a/sw/qa/extras/rtfexport/rtfexport4.cxx
+++ b/sw/qa/extras/rtfexport/rtfexport4.cxx
@@ -20,6 +20,7 @@
#include <unotxdoc.hxx>
#include <pam.hxx>
#include <fmtanchr.hxx>
+#include <frameformats.hxx>
/**
Split these tests into their own file because they are really really slow
diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx b/sw/qa/extras/uiwriter/uiwriter.cxx
index 8c4123c31a6b..e837114a1684 100644
--- a/sw/qa/extras/uiwriter/uiwriter.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter.cxx
@@ -128,6 +128,7 @@
#include <iodetect.hxx>
#include <wrthtml.hxx>
#include <dbmgr.hxx>
+#include <frameformats.hxx>
namespace
{
diff --git a/sw/qa/extras/uiwriter/uiwriter2.cxx b/sw/qa/extras/uiwriter/uiwriter2.cxx
index a9a8f708496b..22348f88655d 100644
--- a/sw/qa/extras/uiwriter/uiwriter2.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter2.cxx
@@ -46,6 +46,7 @@
#include <PostItMgr.hxx>
#include <postithelper.hxx>
#include <fmtcntnt.hxx>
+#include <frameformats.hxx>
#include <shellio.hxx>
#include <editeng/fontitem.hxx>
diff --git a/sw/qa/extras/ww8import/ww8import.cxx b/sw/qa/extras/ww8import/ww8import.cxx
index 250a32832752..7f68b083cd88 100644
--- a/sw/qa/extras/ww8import/ww8import.cxx
+++ b/sw/qa/extras/ww8import/ww8import.cxx
@@ -16,6 +16,7 @@
#include <wrtsh.hxx>
#include <ndgrf.hxx>
#include <fmtsrnd.hxx>
+#include <frameformats.hxx>
#include <editeng/boxitem.hxx>
#include <editeng/lrspitem.hxx>
#include <editeng/ulspitem.hxx>
diff --git a/sw/source/core/crsr/crstrvl.cxx b/sw/source/core/crsr/crstrvl.cxx
index c7b00dea2cbb..5a53b39bbe06 100644
--- a/sw/source/core/crsr/crstrvl.cxx
+++ b/sw/source/core/crsr/crstrvl.cxx
@@ -70,6 +70,7 @@
#include <unotools/intlwrapper.hxx>
#include <docufld.hxx>
#include <svx/srchdlg.hxx>
+#include <frameformats.hxx>
using namespace ::com::sun::star;
diff --git a/sw/source/core/doc/CntntIdxStore.cxx b/sw/source/core/doc/CntntIdxStore.cxx
index ef2f12608f29..bd36e45ae6c0 100644
--- a/sw/source/core/doc/CntntIdxStore.cxx
+++ b/sw/source/core/doc/CntntIdxStore.cxx
@@ -34,6 +34,7 @@
#include <sal/types.h>
#include <unocrsr.hxx>
#include <txtfrm.hxx>
+#include <frameformats.hxx>
#include <memory>
using namespace ::boost;
diff --git a/sw/source/core/doc/DocumentContentOperationsManager.cxx b/sw/source/core/doc/DocumentContentOperationsManager.cxx
index c12faf54627e..0491adeda901 100644
--- a/sw/source/core/doc/DocumentContentOperationsManager.cxx
+++ b/sw/source/core/doc/DocumentContentOperationsManager.cxx
@@ -66,6 +66,7 @@
#include <hints.hxx>
#include <fmtflcnt.hxx>
#include <docedt.hxx>
+#include <frameformats.hxx>
#include <o3tl/safeint.hxx>
#include <sal/log.hxx>
#include <unotools/charclass.hxx>
diff --git a/sw/source/core/doc/DocumentLayoutManager.cxx b/sw/source/core/doc/DocumentLayoutManager.cxx
index 67875e86efbb..57f8af08920b 100644
--- a/sw/source/core/doc/DocumentLayoutManager.cxx
+++ b/sw/source/core/doc/DocumentLayoutManager.cxx
@@ -39,6 +39,7 @@
#include <textboxhelper.hxx>
#include <ndindex.hxx>
#include <pam.hxx>
+#include <frameformats.hxx>
#include <com/sun/star/embed/EmbedStates.hpp>
using namespace ::com::sun::star;
diff --git a/sw/source/core/doc/DocumentLinksAdministrationManager.cxx b/sw/source/core/doc/DocumentLinksAdministrationManager.cxx
index 58a687294165..c5ad43e69bcc 100644
--- a/sw/source/core/doc/DocumentLinksAdministrationManager.cxx
+++ b/sw/source/core/doc/DocumentLinksAdministrationManager.cxx
@@ -41,6 +41,7 @@
#include <fmtcntnt.hxx>
#include <swtable.hxx>
#include <ndtxt.hxx>
+#include <frameformats.hxx>
#include <tools/urlobj.hxx>
#include <unotools/charclass.hxx>
#include <unotools/securityoptions.hxx>
diff --git a/sw/source/core/doc/DocumentStylePoolManager.cxx b/sw/source/core/doc/DocumentStylePoolManager.cxx
index b25a3cd2a6d5..063c37df58c4 100644
--- a/sw/source/core/doc/DocumentStylePoolManager.cxx
+++ b/sw/source/core/doc/DocumentStylePoolManager.cxx
@@ -64,6 +64,7 @@
#include <osl/diagnose.h>
#include <strings.hrc>
#include <frmatr.hxx>
+#include <frameformats.hxx>
#include <com/sun/star/text/VertOrientation.hpp>
#include <com/sun/star/text/RelOrientation.hpp>
#include <com/sun/star/text/HoriOrientation.hpp>
diff --git a/sw/source/core/doc/dbgoutsw.cxx b/sw/source/core/doc/dbgoutsw.cxx
index 0b6f282caa89..3fb9c460bbd3 100644
--- a/sw/source/core/doc/dbgoutsw.cxx
+++ b/sw/source/core/doc/dbgoutsw.cxx
@@ -42,6 +42,7 @@
#include <paratr.hxx>
#include <SwNodeNum.hxx>
#include <dbgoutsw.hxx>
+#include <frameformats.hxx>
#include <iostream>
#include <cstdio>
diff --git a/sw/source/core/doc/docbasic.cxx b/sw/source/core/doc/docbasic.cxx
index b0dc7d481d09..e72ee5ad76a3 100644
--- a/sw/source/core/doc/docbasic.cxx
+++ b/sw/source/core/doc/docbasic.cxx
@@ -32,6 +32,7 @@
#include <doc.hxx>
#include <docsh.hxx>
#include <swevent.hxx>
+#include <frameformats.hxx>
#include <memory>
using namespace ::com::sun::star::uno;
diff --git a/sw/source/core/doc/docchart.cxx b/sw/source/core/doc/docchart.cxx
index b602c92afd14..d0601e454a40 100644
--- a/sw/source/core/doc/docchart.cxx
+++ b/sw/source/core/doc/docchart.cxx
@@ -28,7 +28,7 @@
#include <ndole.hxx>
#include <swtblfmt.hxx>
#include <tblsel.hxx>
-
+#include <frameformats.hxx>
#include <unochart.hxx>
void SwTable::UpdateCharts() const
diff --git a/sw/source/core/doc/doccomp.cxx b/sw/source/core/doc/doccomp.cxx
index 3e8fef2058e3..34334242a2c9 100644
--- a/sw/source/core/doc/doccomp.cxx
+++ b/sw/source/core/doc/doccomp.cxx
@@ -38,6 +38,7 @@
#include <docsh.hxx>
#include <fmtcntnt.hxx>
#include <modcfg.hxx>
+#include <frameformats.hxx>
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
#include <com/sun/star/document/XDocumentProperties.hpp>
diff --git a/sw/source/core/doc/docedt.cxx b/sw/source/core/doc/docedt.cxx
index c73d05f4c2a7..f3de5d3648f4 100644
--- a/sw/source/core/doc/docedt.cxx
+++ b/sw/source/core/doc/docedt.cxx
@@ -38,6 +38,7 @@
#include <frmfmt.hxx>
#include <ndtxt.hxx>
#include <undobj.hxx>
+#include <frameformats.hxx>
#include <vector>
#include <com/sun/star/linguistic2/XProofreadingIterator.hpp>
diff --git a/sw/source/core/doc/docfly.cxx b/sw/source/core/doc/docfly.cxx
index 6077fc7fcf0b..99c9b580bd8e 100644
--- a/sw/source/core/doc/docfly.cxx
+++ b/sw/source/core/doc/docfly.cxx
@@ -54,6 +54,7 @@
#include <dflyobj.hxx>
#include <undoflystrattr.hxx>
#include <calbck.hxx>
+#include <frameformats.hxx>
#include <memory>
#include <svx/xbtmpit.hxx>
#include <svx/xflftrit.hxx>
diff --git a/sw/source/core/doc/docfmt.cxx b/sw/source/core/doc/docfmt.cxx
index c2cc80d11f20..1768221fb922 100644
--- a/sw/source/core/doc/docfmt.cxx
+++ b/sw/source/core/doc/docfmt.cxx
@@ -72,6 +72,7 @@
#include <UndoManager.hxx>
#include <swmodule.hxx>
#include <modcfg.hxx>
+#include <frameformats.hxx>
#include <memory>
using namespace ::com::sun::star::i18n;
@@ -729,6 +730,11 @@ void SwDoc::DelTableFrameFormat( SwTableFormat *pFormat )
delete pFormat;
}
+SwFrameFormat* SwDoc::FindFrameFormatByName( const OUString& rName ) const
+{
+ return static_cast<SwFrameFormat*>(FindFormatByName( static_cast<SwFormatsBase&>(*mpFrameFormatTable), rName ));
+}
+
/// Create the formats
SwFlyFrameFormat *SwDoc::MakeFlyFrameFormat( const OUString &rFormatName,
SwFrameFormat *pDerivedFrom )
diff --git a/sw/source/core/doc/docglbl.cxx b/sw/source/core/doc/docglbl.cxx
index f3a4eaba8af6..c1d2c0c8b26a 100644
--- a/sw/source/core/doc/docglbl.cxx
+++ b/sw/source/core/doc/docglbl.cxx
@@ -44,6 +44,7 @@
#include <section.hxx>
#include <calbck.hxx>
#include <iodetect.hxx>
+#include <frameformats.hxx>
#include <memory>
#include <com/sun/star/uno/Reference.h>
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
diff --git a/sw/source/core/doc/doclay.cxx b/sw/source/core/doc/doclay.cxx
index c62a91c56a33..50d9ef0f9850 100644
--- a/sw/source/core/doc/doclay.cxx
+++ b/sw/source/core/doc/doclay.cxx
@@ -80,6 +80,7 @@
#include <ftninfo.hxx>
#include <pagedesc.hxx>
#include <strings.hrc>
+#include <frameformats.hxx>
#include <tools/datetimeutils.hxx>
#include <sortedobjs.hxx>
diff --git a/sw/source/core/doc/docnew.cxx b/sw/source/core/doc/docnew.cxx
index 781c1a466e02..db01f3f00912 100644
--- a/sw/source/core/doc/docnew.cxx
+++ b/sw/source/core/doc/docnew.cxx
@@ -92,6 +92,7 @@
#include <wrtsh.hxx>
#include <unocrsr.hxx>
#include <fmthdft.hxx>
+#include <frameformats.hxx>
#include <numrule.hxx>
diff --git a/sw/source/core/doc/docsort.cxx b/sw/source/core/doc/docsort.cxx
index d30249802487..bd35fedf13f4 100644
--- a/sw/source/core/doc/docsort.cxx
+++ b/sw/source/core/doc/docsort.cxx
@@ -43,6 +43,7 @@
#include <cellatr.hxx>
#include <redline.hxx>
#include <node2lay.hxx>
+#include <frameformats.hxx>
#include <set>
#include <utility>
diff --git a/sw/source/core/doc/doctxm.cxx b/sw/source/core/doc/doctxm.cxx
index 27e5c60c73b8..a5427d028a5b 100644
--- a/sw/source/core/doc/doctxm.cxx
+++ b/sw/source/core/doc/doctxm.cxx
@@ -63,6 +63,7 @@
#include <calbck.hxx>
#include <ToxTextGenerator.hxx>
#include <ToxTabStopTokenHandler.hxx>
+#include <frameformats.hxx>
#include <tools/datetimeutils.hxx>
#include <tools/globname.hxx>
#include <com/sun/star/embed/XEmbeddedObject.hpp>
diff --git a/sw/source/core/doc/tblcpy.cxx b/sw/source/core/doc/tblcpy.cxx
index e03bddf51f66..164a33ae54cd 100644
--- a/sw/source/core/doc/tblcpy.cxx
+++ b/sw/source/core/doc/tblcpy.cxx
@@ -41,6 +41,7 @@
#include <hints.hxx>
#include <UndoTable.hxx>
#include <fmtfsize.hxx>
+#include <frameformats.hxx>
#include <deque>
#include <memory>
#include <numeric>
diff --git a/sw/source/core/doc/textboxhelper.cxx b/sw/source/core/doc/textboxhelper.cxx
index 37939224daf6..b59bb46f20b0 100644
--- a/sw/source/core/doc/textboxhelper.cxx
+++ b/sw/source/core/doc/textboxhelper.cxx
@@ -26,6 +26,7 @@
#include <mvsave.hxx>
#include <fmtsrnd.hxx>
#include <frmfmt.hxx>
+#include <frameformats.hxx>
#include <editeng/unoprnms.hxx>
#include <editeng/memberids.h>
diff --git a/sw/source/core/docnode/ndcopy.cxx b/sw/source/core/docnode/ndcopy.cxx
index 6f97cc44db57..3c8ffe881b78 100644
--- a/sw/source/core/docnode/ndcopy.cxx
+++ b/sw/source/core/docnode/ndcopy.cxx
@@ -28,6 +28,7 @@
#include <ddefld.hxx>
#include <swddetbl.hxx>
#include <ndindex.hxx>
+#include <frameformats.hxx>
#include <vector>
#include <osl/diagnose.h>
diff --git a/sw/source/core/docnode/ndtbl.cxx b/sw/source/core/docnode/ndtbl.cxx
index 43528cb67bcc..6a8e0138324d 100644
--- a/sw/source/core/docnode/ndtbl.cxx
+++ b/sw/source/core/docnode/ndtbl.cxx
@@ -86,6 +86,7 @@
#include <fldupde.hxx>
#include <calbck.hxx>
#include <fntcache.hxx>
+#include <frameformats.hxx>
#include <o3tl/numeric.hxx>
#include <tools/datetimeutils.hxx>
#include <sal/log.hxx>
diff --git a/sw/source/core/docnode/node.cxx b/sw/source/core/docnode/node.cxx
index 85076e5b024e..080903462a6f 100644
--- a/sw/source/core/docnode/node.cxx
+++ b/sw/source/core/docnode/node.cxx
@@ -68,6 +68,7 @@
#include <memory>
#include <swcrsr.hxx>
#include <hints.hxx>
+#include <frameformats.hxx>
using namespace ::com::sun::star::i18n;
diff --git a/sw/source/core/draw/dcontact.cxx b/sw/source/core/draw/dcontact.cxx
index 7545f83d4d5c..295e7e25b474 100644
--- a/sw/source/core/draw/dcontact.cxx
+++ b/sw/source/core/draw/dcontact.cxx
@@ -53,6 +53,7 @@
#include <doc.hxx>
#include <hints.hxx>
#include <txtfrm.hxx>
+#include <frameformats.hxx>
#include <docary.hxx>
#include <sortedobjs.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
diff --git a/sw/source/core/edit/edglss.cxx b/sw/source/core/edit/edglss.cxx
index 07697e6fb3e8..fbe20f8991e2 100644
--- a/sw/source/core/edit/edglss.cxx
+++ b/sw/source/core/edit/edglss.cxx
@@ -34,6 +34,7 @@
#include <swtable.hxx>
#include <shellio.hxx>
#include <iodetect.hxx>
+#include <frameformats.hxx>
void SwEditShell::InsertGlossary( SwTextBlocks& rGlossary, const OUString& rStr )
{
diff --git a/sw/source/core/edit/edws.cxx b/sw/source/core/edit/edws.cxx
index dd5381cbb9eb..b17b557df188 100644
--- a/sw/source/core/edit/edws.cxx
+++ b/sw/source/core/edit/edws.cxx
@@ -34,6 +34,7 @@
#include <txtfrm.hxx>
#include <swundo.hxx>
#include <SwRewriter.hxx>
+#include <frameformats.hxx>
// masqueraded copy constructor
SwEditShell::SwEditShell( SwEditShell& rEdSH, vcl::Window *pWindow )
diff --git a/sw/source/core/fields/cellfml.cxx b/sw/source/core/fields/cellfml.cxx
index e7e3830f6983..db2375997e78 100644
--- a/sw/source/core/fields/cellfml.cxx
+++ b/sw/source/core/fields/cellfml.cxx
@@ -43,6 +43,7 @@
#include <flddat.hxx>
#include <cellatr.hxx>
#include <ndindex.hxx>
+#include <frameformats.hxx>
#include <comphelper/string.hxx>
#include <o3tl/safeint.hxx>
diff --git a/sw/source/core/frmedt/fecopy.cxx b/sw/source/core/frmedt/fecopy.cxx
index c675e1fd48bc..683f5ae08439 100644
--- a/sw/source/core/frmedt/fecopy.cxx
+++ b/sw/source/core/frmedt/fecopy.cxx
@@ -67,6 +67,7 @@
#include <pagedesc.hxx>
#include <mvsave.hxx>
#include <textboxhelper.hxx>
+#include <frameformats.hxx>
#include <vcl/virdev.hxx>
#include <svx/svdundo.hxx>
diff --git a/sw/source/core/frmedt/fefly1.cxx b/sw/source/core/frmedt/fefly1.cxx
index f0d83d242a4c..13746c579141 100644
--- a/sw/source/core/frmedt/fefly1.cxx
+++ b/sw/source/core/frmedt/fefly1.cxx
@@ -69,6 +69,7 @@
#include <ndole.hxx>
#include <fefly.hxx>
#include <fmtcnct.hxx>
+#include <frameformats.hxx>
#include <textboxhelper.hxx>
diff --git a/sw/source/core/frmedt/tblsel.cxx b/sw/source/core/frmedt/tblsel.cxx
index cc88ed1d8578..01f39ff8dbd2 100644
--- a/sw/source/core/frmedt/tblsel.cxx
+++ b/sw/source/core/frmedt/tblsel.cxx
@@ -44,6 +44,7 @@
#include <sectfrm.hxx>
#include <frmtool.hxx>
#include <calbck.hxx>
+#include <frameformats.hxx>
#include <deque>
#include <memory>
diff --git a/sw/source/core/layout/atrfrm.cxx b/sw/source/core/layout/atrfrm.cxx
index 78f47d47d731..f417675b4292 100644
--- a/sw/source/core/layout/atrfrm.cxx
+++ b/sw/source/core/layout/atrfrm.cxx
@@ -84,6 +84,7 @@
#include <pagedeschint.hxx>
#include <drawdoc.hxx>
#include <hints.hxx>
+#include <frameformats.hxx>
#include <ndtxt.hxx>
diff --git a/sw/source/core/layout/flypos.cxx b/sw/source/core/layout/flypos.cxx
index f507eed9c171..e7709204fd9d 100644
--- a/sw/source/core/layout/flypos.cxx
+++ b/sw/source/core/layout/flypos.cxx
@@ -22,6 +22,7 @@
#include <docary.hxx>
#include <fmtanchr.hxx>
#include <ndindex.hxx>
+#include <frameformats.hxx>
#include <svx/swframetypes.hxx>
bool SwPosFlyFrameCmp::operator()(const SwPosFlyFramePtr& rA, const SwPosFlyFramePtr& rB) const
diff --git a/sw/source/core/layout/frmtool.cxx b/sw/source/core/layout/frmtool.cxx
index 4807cfcdb185..d59d121786ef 100644
--- a/sw/source/core/layout/frmtool.cxx
+++ b/sw/source/core/layout/frmtool.cxx
@@ -72,6 +72,7 @@
#include <IDocumentRedlineAccess.hxx>
#include <IDocumentFieldsAccess.hxx>
#include <IDocumentState.hxx>
+#include <frameformats.hxx>
#include <boost/circular_buffer.hpp>
#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
diff --git a/sw/source/core/layout/laycache.cxx b/sw/source/core/layout/laycache.cxx
index 2f0608056008..d7c9cc72fc69 100644
--- a/sw/source/core/layout/laycache.cxx
+++ b/sw/source/core/layout/laycache.cxx
@@ -46,6 +46,7 @@
#include <ndindex.hxx>
#include <node.hxx>
#include <ndtxt.hxx>
+#include <frameformats.hxx>
#include <limits>
#include <set>
diff --git a/sw/source/core/layout/pagechg.cxx b/sw/source/core/layout/pagechg.cxx
index b93b5a23440b..c9f2469591dd 100644
--- a/sw/source/core/layout/pagechg.cxx
+++ b/sw/source/core/layout/pagechg.cxx
@@ -36,6 +36,7 @@
#include <view.hxx>
#include <edtwin.hxx>
#include <docary.hxx>
+#include <frameformats.hxx>
#include <viewimp.hxx>
#include <pagefrm.hxx>
diff --git a/sw/source/core/layout/tabfrm.cxx b/sw/source/core/layout/tabfrm.cxx
index 2a957de66933..2a9b98e4869e 100644
--- a/sw/source/core/layout/tabfrm.cxx
+++ b/sw/source/core/layout/tabfrm.cxx
@@ -63,6 +63,7 @@
#include <frmatr.hxx>
#include <frmtool.hxx>
#include <ndtxt.hxx>
+#include <frameformats.hxx>
using namespace ::com::sun::star;
diff --git a/sw/source/core/text/EnhancedPDFExportHelper.cxx b/sw/source/core/text/EnhancedPDFExportHelper.cxx
index 477be010437e..d570a8015f52 100644
--- a/sw/source/core/text/EnhancedPDFExportHelper.cxx
+++ b/sw/source/core/text/EnhancedPDFExportHelper.cxx
@@ -79,6 +79,7 @@
#include <stack>
#include <frmtool.hxx>
#include <strings.hrc>
+#include <frameformats.hxx>
#include <tools/globname.hxx>
#include <svx/svdobj.hxx>
diff --git a/sw/source/core/text/itratr.cxx b/sw/source/core/text/itratr.cxx
index 3e3dc819c270..1fadbf708d12 100644
--- a/sw/source/core/text/itratr.cxx
+++ b/sw/source/core/text/itratr.cxx
@@ -56,6 +56,7 @@
#include <com/sun/star/i18n/XBreakIterator.hpp>
#include <editeng/lrspitem.hxx>
#include <calbck.hxx>
+#include <frameformats.hxx>
using namespace ::com::sun::star::i18n;
using namespace ::com::sun::star;
diff --git a/sw/source/core/text/itrpaint.cxx b/sw/source/core/text/itrpaint.cxx
index 0e9b3d4dfa58..30889d15f2d4 100644
--- a/sw/source/core/text/itrpaint.cxx
+++ b/sw/source/core/text/itrpaint.cxx
@@ -38,6 +38,7 @@
#include "redlnitr.hxx"
#include "porrst.hxx"
#include "pormulti.hxx"
+#include <doc.hxx>
// Returns, if we have an underline breaking situation
// Adding some more conditions here means you also have to change them
diff --git a/sw/source/core/text/pormulti.cxx b/sw/source/core/text/pormulti.cxx
index c7ac050d1bc7..f72e120848f6 100644
--- a/sw/source/core/text/pormulti.cxx
+++ b/sw/source/core/text/pormulti.cxx
@@ -44,6 +44,7 @@
#include <tgrditem.hxx>
#include <swtable.hxx>
#include <fmtfsize.hxx>
+#include <doc.hxx>
using namespace ::com::sun::star;
diff --git a/sw/source/core/text/txtfrm.cxx b/sw/source/core/text/txtfrm.cxx
index 874dcc75db99..8b6051b8da73 100644
--- a/sw/source/core/text/txtfrm.cxx
+++ b/sw/source/core/text/txtfrm.cxx
@@ -1386,18 +1386,18 @@ bool SwTextFrame::IsHiddenNow() const
{
// see also SwpHints::CalcHiddenParaField()
const SwFormatField& rField = pHint->GetFormatField();
- int nCurWeight = pNode->FieldCanHideParaWeight(rField.GetField()->GetTyp()->Which());
+ int nCurWeight = pNode->GetDoc()->FieldCanHideParaWeight(rField.GetField()->GetTyp()->Which());
if (nCurWeight > nNewResultWeight)
{
nNewResultWeight = nCurWeight;
- bHiddenParaField = pNode->FieldHidesPara(*rField.GetField());
+ bHiddenParaField = pNode->GetDoc()->FieldHidesPara(*rField.GetField());
}
else if (nCurWeight == nNewResultWeight && bHiddenParaField)
{
// Currently, for both supported hiding types (HiddenPara, Database), "Don't hide"
// takes precedence - i.e., if there's a "Don't hide" field of that weight, we only
// care about fields of higher weight.
- bHiddenParaField = pNode->FieldHidesPara(*rField.GetField());
+ bHiddenParaField = pNode->GetDoc()->FieldHidesPara(*rField.GetField());
}
}
}
diff --git a/sw/source/core/txtnode/ndtxt.cxx b/sw/source/core/txtnode/ndtxt.cxx
index dccc699ed67b..d59a106f47b8 100644
--- a/sw/source/core/txtnode/ndtxt.cxx
+++ b/sw/source/core/txtnode/ndtxt.cxx
@@ -79,6 +79,7 @@
#include <memory>
#include <unoparagraph.hxx>
#include <wrtsh.hxx>
+#include <frameformats.hxx>
#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
#include <svl/itemiter.hxx>
diff --git a/sw/source/core/txtnode/thints.cxx b/sw/source/core/txtnode/thints.cxx
index e58d0e7e6892..2dcb0dd9d457 100644
--- a/sw/source/core/txtnode/thints.cxx
+++ b/sw/source/core/txtnode/thints.cxx
@@ -1184,7 +1184,7 @@ void SwTextNode::DestroyAttr( SwTextAttr* pAttr )
// certain fields must update the SwDoc's calculation flags
// Certain fields (like HiddenParaField) must trigger recalculation of visible flag
- if (FieldCanHideParaWeight(pFieldType->Which()))
+ if (GetDoc()->FieldCanHideParaWeight(pFieldType->Which()))
SetCalcHiddenParaField();
switch( pFieldType->Which() )
@@ -1494,7 +1494,7 @@ bool SwTextNode::InsertHint( SwTextAttr * const pAttr, const SetAttrMode nMode )
case RES_TXTATR_FIELD:
{
// trigger notification for relevant fields, like HiddenParaFields
- if (FieldCanHideParaWeight(
+ if (GetDoc()->FieldCanHideParaWeight(
pAttr->GetFormatField().GetField()->GetTyp()->Which()))
{
bHiddenPara = true;
@@ -2628,18 +2628,18 @@ bool SwpHints::CalcHiddenParaField() const
{
// see also SwTextFrame::IsHiddenNow()
const SwFormatField& rField = pTextHt->GetFormatField();
- int nCurWeight = m_rParent.FieldCanHideParaWeight(rField.GetField()->GetTyp()->Which());
+ int nCurWeight = m_rParent.GetDoc()->FieldCanHideParaWeight(rField.GetField()->GetTyp()->Which());
if (nCurWeight > nNewResultWeight)
{
nNewResultWeight = nCurWeight;
- bNewHiddenByParaField = m_rParent.FieldHidesPara(*rField.GetField());
+ bNewHiddenByParaField = m_rParent.GetDoc()->FieldHidesPara(*rField.GetField());
}
else if (nCurWeight == nNewResultWeight && bNewHiddenByParaField)
{
// Currently, for both supported hiding types (HiddenPara, Database), "Don't hide"
// takes precedence - i.e., if there's a "Don't hide" field of that weight, we only
// care about fields of higher weight.
- bNewHiddenByParaField = m_rParent.FieldHidesPara(*rField.GetField());
+ bNewHiddenByParaField = m_rParent.GetDoc()->FieldHidesPara(*rField.GetField());
}
}
}
@@ -3336,7 +3336,7 @@ void SwpHints::DeleteAtPos( const size_t nPos )
pTextField->ChgTextNode(nullptr);
}
else if (m_bHiddenByParaField
- && m_rParent.FieldCanHideParaWeight(pFieldTyp->Which()))
+ && m_rParent.GetDoc()->FieldCanHideParaWeight(pFieldTyp->Which()))
{
m_bCalcHiddenParaField = true;
}
diff --git a/sw/source/core/undo/rolbck.cxx b/sw/source/core/undo/rolbck.cxx
index 9270d5cc28de..ceac742f9bbc 100644
--- a/sw/source/core/undo/rolbck.cxx
+++ b/sw/source/core/undo/rolbck.cxx
@@ -53,6 +53,7 @@
#include <charfmt.hxx>
#include <strings.hrc>
#include <bookmrk.hxx>
+#include <frameformats.hxx>
#include <memory>
OUString SwHistoryHint::GetDescription() const
diff --git a/sw/source/core/undo/unattr.cxx b/sw/source/core/undo/unattr.cxx
index d2c584884ac6..83fbf59f216c 100644
--- a/sw/source/core/undo/unattr.cxx
+++ b/sw/source/core/undo/unattr.cxx
@@ -52,6 +52,7 @@
#include <section.hxx>
#include <charfmt.hxx>
#include <calbck.hxx>
+#include <frameformats.hxx>
SwUndoFormatAttrHelper::SwUndoFormatAttrHelper( SwFormat& rFormat, bool bSvDrwPt )
: SwClient( &rFormat )
diff --git a/sw/source/core/undo/undel.cxx b/sw/source/core/undo/undel.cxx
index 51d859b5b5d5..a93a34bb0257 100644
--- a/sw/source/core/undo/undel.cxx
+++ b/sw/source/core/undo/undel.cxx
@@ -39,6 +39,7 @@
#include <txtfrm.hxx>
#include <rootfrm.hxx>
#include <strings.hrc>
+#include <frameformats.hxx>
#include <vector>
// DELETE
diff --git a/sw/source/core/undo/undobj.cxx b/sw/source/core/undo/undobj.cxx
index 5d79e7b84ecc..125154579980 100644
--- a/sw/source/core/undo/undobj.cxx
+++ b/sw/source/core/undo/undobj.cxx
@@ -39,6 +39,7 @@
#include <strings.hrc>
#include <docsh.hxx>
#include <view.hxx>
+#include <frameformats.hxx>
#include <sal/log.hxx>
// This class saves the Pam as integers and can recompose those into a PaM
diff --git a/sw/source/core/undo/undobj1.cxx b/sw/source/core/undo/undobj1.cxx
index 83dcaf4a09f2..51ba206af391 100644
--- a/sw/source/core/undo/undobj1.cxx
+++ b/sw/source/core/undo/undobj1.cxx
@@ -36,6 +36,7 @@
#include <pam.hxx>
#include <ndtxt.hxx>
#include <ndole.hxx>
+#include <frameformats.hxx>
SwUndoFlyBase::SwUndoFlyBase( SwFrameFormat* pFormat, SwUndoId nUndoId )
: SwUndo(nUndoId, pFormat->GetDoc())
diff --git a/sw/source/core/undo/undraw.cxx b/sw/source/core/undo/undraw.cxx
index 05e71ed20a6b..562fc6205eca 100644
--- a/sw/source/core/undo/undraw.cxx
+++ b/sw/source/core/undo/undraw.cxx
@@ -41,6 +41,7 @@
#include <UndoCore.hxx>
#include <dcontact.hxx>
#include <viewsh.hxx>
+#include <frameformats.hxx>
struct SwUndoGroupObjImpl
{
diff --git a/sw/source/core/undo/untbl.cxx b/sw/source/core/undo/untbl.cxx
index 06d6357c0cee..b841c0420344 100644
--- a/sw/source/core/undo/untbl.cxx
+++ b/sw/source/core/undo/untbl.cxx
@@ -58,6 +58,7 @@
#include <strings.hrc>
#include <unochart.hxx>
#include <calbck.hxx>
+#include <frameformats.hxx>
#include <memory>
#include <utility>
diff --git a/sw/source/core/undo/untblk.cxx b/sw/source/core/undo/untblk.cxx
index 6af2f532c020..a7713bc036db 100644
--- a/sw/source/core/undo/untblk.cxx
+++ b/sw/source/core/undo/untblk.cxx
@@ -30,6 +30,7 @@
#include <UndoCore.hxx>
#include <rolbck.hxx>
#include <redline.hxx>
+#include <frameformats.hxx>
namespace sw {
diff --git a/sw/source/core/unocore/unocoll.cxx b/sw/source/core/unocore/unocoll.cxx
index f30b5240cda4..e02a2fa945e2 100644
--- a/sw/source/core/unocore/unocoll.cxx
+++ b/sw/source/core/unocore/unocoll.cxx
@@ -56,6 +56,7 @@
#include <unometa.hxx>
#include <docsh.hxx>
#include <hints.hxx>
+#include <frameformats.hxx>
#include <com/sun/star/document/XCodeNameQuery.hpp>
#include <com/sun/star/drawing/XDrawPageSupplier.hpp>
#include <com/sun/star/form/XFormsSupplier.hpp>
diff --git a/sw/source/core/unocore/unoobj2.cxx b/sw/source/core/unocore/unoobj2.cxx
index 417370f05980..600ee1fca9f8 100644
--- a/sw/source/core/unocore/unoobj2.cxx
+++ b/sw/source/core/unocore/unoobj2.cxx
@@ -68,6 +68,7 @@
#include <fmtflcnt.hxx>
#include <vector>
#include <sortedobjs.hxx>
+#include <frameformats.hxx>
#include <algorithm>
#include <iterator>
diff --git a/sw/source/core/unocore/unostyle.cxx b/sw/source/core/unocore/unostyle.cxx
index 67da3653b6d3..9113c4bc0609 100644
--- a/sw/source/core/unocore/unostyle.cxx
+++ b/sw/source/core/unocore/unostyle.cxx
@@ -89,6 +89,7 @@
#include <fmtfsize.hxx>
#include <numrule.hxx>
#include <tblafmt.hxx>
+#include <frameformats.hxx>
#include <comphelper/servicehelper.hxx>
#include <cppuhelper/exc_hlp.hxx>
diff --git a/sw/source/core/unocore/unotbl.cxx b/sw/source/core/unocore/unotbl.cxx
index b51efa908b1b..7945d1cfc585 100644
--- a/sw/source/core/unocore/unotbl.cxx
+++ b/sw/source/core/unocore/unotbl.cxx
@@ -106,6 +106,7 @@
#include <fesh.hxx>
#include <itabenum.hxx>
#include <poolfmt.hxx>
+#include <frameformats.hxx>
using namespace ::com::sun::star;
using ::editeng::SvxBorderLine;
diff --git a/sw/source/core/unocore/unotext.cxx b/sw/source/core/unocore/unotext.cxx
index 1790b1862e23..68b0576b7ba7 100644
--- a/sw/source/core/unocore/unotext.cxx
+++ b/sw/source/core/unocore/unotext.cxx
@@ -67,6 +67,7 @@
#include <ndtxt.hxx>
#include <SwRewriter.hxx>
#include <strings.hrc>
+#include <frameformats.hxx>
using namespace ::com::sun::star;
diff --git a/sw/source/filter/ascii/wrtasc.cxx b/sw/source/filter/ascii/wrtasc.cxx
index fcbf33f135dc..fa99ce7c6d95 100644
--- a/sw/source/filter/ascii/wrtasc.cxx
+++ b/sw/source/filter/ascii/wrtasc.cxx
@@ -27,6 +27,7 @@
#include <fmtcntnt.hxx>
#include <frmfmt.hxx>
#include "wrtasc.hxx"
+#include <frameformats.hxx>
#include <strings.hrc>
diff --git a/sw/source/filter/basflt/shellio.cxx b/sw/source/filter/basflt/shellio.cxx
index 3a5f44e35a60..85113a0f6404 100644
--- a/sw/source/filter/basflt/shellio.cxx
+++ b/sw/source/filter/basflt/shellio.cxx
@@ -59,6 +59,7 @@
#include <redline.hxx>
#include <swerror.h>
#include <pausethreadstarting.hxx>
+#include <frameformats.hxx>
using namespace ::com::sun::star;
diff --git a/sw/source/filter/html/htmlforw.cxx b/sw/source/filter/html/htmlforw.cxx
index 4431234b8015..14791f86759b 100644
--- a/sw/source/filter/html/htmlforw.cxx
+++ b/sw/source/filter/html/htmlforw.cxx
@@ -56,6 +56,7 @@
#include "htmlfly.hxx"
#include "htmlform.hxx"
#include <frmfmt.hxx>
+#include <frameformats.hxx>
#include <memory>
using namespace ::com::sun::star;
diff --git a/sw/source/filter/html/htmlgrin.cxx b/sw/source/filter/html/htmlgrin.cxx
index 6a1a92a98e65..ef59eb27d254 100644
--- a/sw/source/filter/html/htmlgrin.cxx
+++ b/sw/source/filter/html/htmlgrin.cxx
@@ -65,6 +65,7 @@
#include "swhtml.hxx"
#include <numrule.hxx>
#include <IDocumentMarkAccess.hxx>
+#include <frameformats.hxx>
#include <vcl/graphicfilter.hxx>
#include <tools/urlobj.hxx>
diff --git a/sw/source/filter/html/htmltab.cxx b/sw/source/filter/html/htmltab.cxx
index e0926eb9dbb9..e95e08c5c290 100644
--- a/sw/source/filter/html/htmltab.cxx
+++ b/sw/source/filter/html/htmltab.cxx
@@ -64,6 +64,7 @@
#include <itabenum.hxx>
#include <tblafmt.hxx>
#include <SwStyleNameMapper.hxx>
+#include <frameformats.hxx>
#define NETSCAPE_DFLT_BORDER 1
#define NETSCAPE_DFLT_CELLSPACING 2
diff --git a/sw/source/filter/html/swhtml.cxx b/sw/source/filter/html/swhtml.cxx
index 1168844d4673..94f4842029a0 100644
--- a/sw/source/filter/html/swhtml.cxx
+++ b/sw/source/filter/html/swhtml.cxx
@@ -123,6 +123,7 @@
#include <ndole.hxx>
#include <unoframe.hxx>
#include "css1atr.hxx"
+#include <frameformats.hxx>
#define FONTSIZE_MASK 7
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index 5885e788f6b4..90e9ff7fe17a 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -126,6 +126,7 @@
#include <grfatr.hxx>
#include <frmatr.hxx>
#include <txtatr.hxx>
+#include <frameformats.hxx>
#include <osl/file.hxx>
#include <utility>
diff --git a/sw/source/filter/ww8/wrtw8esh.cxx b/sw/source/filter/ww8/wrtw8esh.cxx
index 24d5204383ac..ec4810773511 100644
--- a/sw/source/filter/ww8/wrtw8esh.cxx
+++ b/sw/source/filter/ww8/wrtw8esh.cxx
@@ -85,6 +85,7 @@
#include <IDocumentStylePoolAccess.hxx>
#include <oox/ole/olehelper.hxx>
#include <fmturl.hxx>
+#include <frameformats.hxx>
#include <sfx2/sfxsids.hrc>
#include <unotools/saveopt.hxx>
#include <o3tl/enumrange.hxx>
diff --git a/sw/source/filter/ww8/ww8glsy.cxx b/sw/source/filter/ww8/ww8glsy.cxx
index 4e651ed6dbde..6d8cdce2741b 100644
--- a/sw/source/filter/ww8/ww8glsy.cxx
+++ b/sw/source/filter/ww8/ww8glsy.cxx
@@ -30,6 +30,7 @@
#include <doc.hxx>
#include <IDocumentStylePoolAccess.hxx>
#include <docary.hxx>
+#include <frameformats.hxx>
#include "ww8glsy.hxx"
#include "ww8par.hxx"
diff --git a/sw/source/filter/xml/xmlexp.cxx b/sw/source/filter/xml/xmlexp.cxx
index 4a8be86cea70..86892a84dc00 100644
--- a/sw/source/filter/xml/xmlexp.cxx
+++ b/sw/source/filter/xml/xmlexp.cxx
@@ -52,6 +52,7 @@
#include "xmlexpit.hxx"
#include <comphelper/processfactory.hxx>
#include <docary.hxx>
+#include <frameformats.hxx>
#include <comphelper/servicehelper.hxx>
#include <vcl/svapp.hxx>
#include <IDocumentSettingAccess.hxx>
diff --git a/sw/source/uibase/app/docstyle.cxx b/sw/source/uibase/app/docstyle.cxx
index de62518f9c5d..5f07333ecdaa 100644
--- a/sw/source/uibase/app/docstyle.cxx
+++ b/sw/source/uibase/app/docstyle.cxx
@@ -60,6 +60,7 @@
#include <svx/xdef.hxx>
#include <SwRewriter.hxx>
#include <hints.hxx>
+#include <frameformats.hxx>
#include <svx/xfillit0.hxx>
#include <svx/xflftrit.hxx>
#include <svx/drawitem.hxx>
diff --git a/sw/source/uibase/docvw/UnfloatTableButton.cxx b/sw/source/uibase/docvw/UnfloatTableButton.cxx
index ee4c8d68b489..4f7bda6566f6 100644
--- a/sw/source/uibase/docvw/UnfloatTableButton.cxx
+++ b/sw/source/uibase/docvw/UnfloatTableButton.cxx
@@ -39,6 +39,7 @@
#include <drawinglayer/processor2d/processorfromoutputdevice.hxx>
#include <basegfx/vector/b2dvector.hxx>
#include <svl/grabbagitem.hxx>
+#include <doc.hxx>
#define TEXT_PADDING 3
#define BOX_DISTANCE 3
diff --git a/sw/source/uibase/uiview/view2.cxx b/sw/source/uibase/uiview/view2.cxx
index f464ce1f640a..0bd28349a48a 100644
--- a/sw/source/uibase/uiview/view2.cxx
+++ b/sw/source/uibase/uiview/view2.cxx
@@ -130,6 +130,7 @@
#include <i18nutil/searchopt.hxx>
#include <paratr.hxx>
#include <rootfrm.hxx>
+#include <frameformats.hxx>
#include <memory>
diff --git a/sw/source/uibase/wrtsh/delete.cxx b/sw/source/uibase/wrtsh/delete.cxx
index 631afcfa1fce..0dbc7eb89cc5 100644
--- a/sw/source/uibase/wrtsh/delete.cxx
+++ b/sw/source/uibase/wrtsh/delete.cxx
@@ -31,6 +31,7 @@
#include <IDocumentUndoRedo.hxx>
#include <i18nutil/unicode.hxx>
#include <rtl/character.hxx>
+#include <doc.hxx>
inline void SwWrtShell::OpenMark()
{