summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sc/IwyuFilter_sc.yaml6
-rw-r--r--sc/source/filter/excel/excdoc.cxx4
-rw-r--r--sc/source/filter/excel/excel.cxx1
-rw-r--r--sc/source/filter/excel/excimp8.cxx1
-rw-r--r--sc/source/filter/excel/excrecds.cxx2
-rw-r--r--sc/source/filter/excel/expop2.cxx1
-rw-r--r--sc/source/filter/excel/read.cxx2
-rw-r--r--sc/source/filter/excel/xechart.cxx1
-rw-r--r--sc/source/filter/excel/xecontent.cxx3
-rw-r--r--sc/source/filter/excel/xeescher.cxx5
-rw-r--r--sc/source/filter/excel/xeformula.cxx3
-rw-r--r--sc/source/filter/excel/xehelper.cxx1
-rw-r--r--sc/source/filter/excel/xelink.cxx4
-rw-r--r--sc/source/filter/excel/xename.cxx5
-rw-r--r--sc/source/filter/excel/xepage.cxx2
-rw-r--r--sc/source/filter/excel/xepivot.cxx3
-rw-r--r--sc/source/filter/excel/xerecord.cxx2
-rw-r--r--sc/source/filter/excel/xeroot.cxx3
-rw-r--r--sc/source/filter/excel/xestream.cxx2
-rw-r--r--sc/source/filter/excel/xestring.cxx1
-rw-r--r--sc/source/filter/excel/xestyle.cxx1
-rw-r--r--sc/source/filter/excel/xetable.cxx4
-rw-r--r--sc/source/filter/excel/xeview.cxx3
-rw-r--r--sc/source/filter/excel/xichart.cxx1
-rw-r--r--sc/source/filter/excel/xicontent.cxx1
-rw-r--r--sc/source/filter/excel/xiescher.cxx1
-rw-r--r--sc/source/filter/excel/xihelper.cxx1
-rw-r--r--sc/source/filter/excel/xilink.cxx1
-rw-r--r--sc/source/filter/excel/xiname.cxx1
-rw-r--r--sc/source/filter/excel/xipivot.cxx2
-rw-r--r--sc/source/filter/excel/xistream.cxx2
-rw-r--r--sc/source/filter/excel/xistring.cxx1
-rw-r--r--sc/source/filter/excel/xistyle.cxx5
-rw-r--r--sc/source/filter/excel/xlchart.cxx1
-rw-r--r--sc/source/filter/excel/xlpage.cxx1
-rw-r--r--sc/source/filter/excel/xlpivot.cxx5
-rw-r--r--sc/source/filter/excel/xlroot.cxx2
-rw-r--r--sc/source/filter/excel/xlstyle.cxx2
-rw-r--r--sc/source/filter/inc/XclExpChangeTrack.hxx7
-rw-r--r--sc/source/filter/inc/XclImpChangeTrack.hxx4
-rw-r--r--sc/source/filter/inc/excform.hxx1
-rw-r--r--sc/source/filter/inc/imp_op.hxx3
-rw-r--r--sc/source/filter/inc/xcl97esc.hxx8
-rw-r--r--sc/source/filter/inc/xcl97rec.hxx5
-rw-r--r--sc/source/filter/inc/xecontent.hxx6
-rw-r--r--sc/source/filter/inc/xedbdata.hxx1
-rw-r--r--sc/source/filter/inc/xeescher.hxx4
-rw-r--r--sc/source/filter/inc/xeextlst.hxx1
-rw-r--r--sc/source/filter/inc/xeformula.hxx2
-rw-r--r--sc/source/filter/inc/xehelper.hxx5
-rw-r--r--sc/source/filter/inc/xelink.hxx9
-rw-r--r--sc/source/filter/inc/xename.hxx1
-rw-r--r--sc/source/filter/inc/xepivot.hxx4
-rw-r--r--sc/source/filter/inc/xepivotxml.hxx1
-rw-r--r--sc/source/filter/inc/xerecord.hxx1
-rw-r--r--sc/source/filter/inc/xeroot.hxx4
-rw-r--r--sc/source/filter/inc/xestream.hxx14
-rw-r--r--sc/source/filter/inc/xestyle.hxx4
-rw-r--r--sc/source/filter/inc/xetable.hxx8
-rw-r--r--sc/source/filter/inc/xichart.hxx4
-rw-r--r--sc/source/filter/inc/xicontent.hxx7
-rw-r--r--sc/source/filter/inc/xiescher.hxx7
-rw-r--r--sc/source/filter/inc/xihelper.hxx3
-rw-r--r--sc/source/filter/inc/xilink.hxx1
-rw-r--r--sc/source/filter/inc/xiname.hxx2
-rw-r--r--sc/source/filter/inc/xistring.hxx1
-rw-r--r--sc/source/filter/inc/xistyle.hxx5
-rw-r--r--sc/source/filter/inc/xlchart.hxx2
-rw-r--r--sc/source/filter/inc/xlescher.hxx3
-rw-r--r--sc/source/filter/inc/xlpage.hxx2
-rw-r--r--sc/source/filter/inc/xlpivot.hxx7
-rw-r--r--sc/source/filter/inc/xlroot.hxx12
-rw-r--r--sc/source/filter/inc/xlstream.hxx1
-rw-r--r--sc/source/filter/inc/xlstring.hxx2
-rw-r--r--sc/source/filter/inc/xlstyle.hxx3
-rw-r--r--sc/source/filter/inc/xltools.hxx2
-rw-r--r--sc/source/filter/inc/xltracer.hxx4
-rw-r--r--sc/source/filter/inc/xlview.hxx1
-rw-r--r--sc/source/filter/oox/excelfilter.cxx1
-rw-r--r--sc/source/filter/xcl97/XclExpChangeTrack.cxx3
-rw-r--r--sc/source/filter/xcl97/xcl97esc.cxx1
-rw-r--r--sc/source/filter/xcl97/xcl97rec.cxx2
82 files changed, 152 insertions, 104 deletions
diff --git a/sc/IwyuFilter_sc.yaml b/sc/IwyuFilter_sc.yaml
index 7c480e254f5a..6ad4546a6514 100644
--- a/sc/IwyuFilter_sc.yaml
+++ b/sc/IwyuFilter_sc.yaml
@@ -388,3 +388,9 @@ blacklist:
- com/sun/star/lang/XInitialization.hpp
- com/sun/star/lang/XServiceInfo.hpp
- com/sun/star/sheet/XFilterFormulaParser.hpp
+ sc/source/filter/inc/xerecord.hxx:
+ # Needed for member access
+ - xestream.hxx
+ sc/source/filter/inc/xlstring.hxx:
+ # Needed for template
+ - o3tl/typed_flags_set.hxx
diff --git a/sc/source/filter/excel/excdoc.cxx b/sc/source/filter/excel/excdoc.cxx
index 891919fdc7e7..ebe83426995e 100644
--- a/sc/source/filter/excel/excdoc.cxx
+++ b/sc/source/filter/excel/excdoc.cxx
@@ -68,6 +68,10 @@
#include <XclExpChangeTrack.hxx>
#include <xepivotxml.hxx>
#include <xedbdata.hxx>
+#include <xlcontent.hxx>
+#include <xlname.hxx>
+#include <xllink.hxx>
+#include <xltools.hxx>
#include <math.h>
diff --git a/sc/source/filter/excel/excel.cxx b/sc/source/filter/excel/excel.cxx
index 46c95034aa31..edc446b75362 100644
--- a/sc/source/filter/excel/excel.cxx
+++ b/sc/source/filter/excel/excel.cxx
@@ -37,6 +37,7 @@
#include <document.hxx>
#include <optuno.hxx>
#include <xistream.hxx>
+#include <xltools.hxx>
#include <docsh.hxx>
#include <scerrors.hxx>
diff --git a/sc/source/filter/excel/excimp8.cxx b/sc/source/filter/excel/excimp8.cxx
index d6c47724fb11..b09e5f7f3977 100644
--- a/sc/source/filter/excel/excimp8.cxx
+++ b/sc/source/filter/excel/excimp8.cxx
@@ -53,6 +53,7 @@
#include <vcl/graph.hxx>
#include <vcl/bitmapaccess.hxx>
#include <sot/exchange.hxx>
+#include <sot/storage.hxx>
#include <svl/stritem.hxx>
#include <svl/sharedstringpool.hxx>
diff --git a/sc/source/filter/excel/excrecds.cxx b/sc/source/filter/excel/excrecds.cxx
index d66c2d9e8fce..ef5846cf0edd 100644
--- a/sc/source/filter/excel/excrecds.cxx
+++ b/sc/source/filter/excel/excrecds.cxx
@@ -68,6 +68,7 @@
#include <editutil.hxx>
#include <formula/errorcodes.hxx>
#include <oox/export/utils.hxx>
+#include <oox/token/tokens.hxx>
#include <queryentry.hxx>
#include <queryparam.hxx>
#include <root.hxx>
@@ -78,6 +79,7 @@
#include <xelink.hxx>
#include <xename.hxx>
#include <xecontent.hxx>
+#include <xlname.hxx>
#include <xcl97rec.hxx>
#include <tabprotection.hxx>
diff --git a/sc/source/filter/excel/expop2.cxx b/sc/source/filter/excel/expop2.cxx
index 568e9be92105..10d4df072193 100644
--- a/sc/source/filter/excel/expop2.cxx
+++ b/sc/source/filter/excel/expop2.cxx
@@ -39,6 +39,7 @@
#include <filtopt.hxx>
#include <xltools.hxx>
#include <xelink.hxx>
+#include <xehelper.hxx>
#include <officecfg/Office/Calc.hxx>
diff --git a/sc/source/filter/excel/read.cxx b/sc/source/filter/excel/read.cxx
index f4a9e04bb87e..150e104a8269 100644
--- a/sc/source/filter/excel/read.cxx
+++ b/sc/source/filter/excel/read.cxx
@@ -23,6 +23,7 @@
#include <scerrors.hxx>
#include <fprogressbar.hxx>
#include <globstr.hrc>
+#include <xlcontent.hxx>
#include <xltracer.hxx>
#include <xltable.hxx>
#include <xihelper.hxx>
@@ -30,6 +31,7 @@
#include <xiview.hxx>
#include <xilink.hxx>
#include <xiname.hxx>
+#include <xlname.hxx>
#include <xicontent.hxx>
#include <xiescher.hxx>
#include <xipivot.hxx>
diff --git a/sc/source/filter/excel/xechart.cxx b/sc/source/filter/excel/xechart.cxx
index e864d192e617..828e028c2942 100644
--- a/sc/source/filter/excel/xechart.cxx
+++ b/sc/source/filter/excel/xechart.cxx
@@ -70,6 +70,7 @@
#include <xehelper.hxx>
#include <xepage.hxx>
#include <xestyle.hxx>
+#include <xltools.hxx>
#include <memory>
diff --git a/sc/source/filter/excel/xecontent.cxx b/sc/source/filter/excel/xecontent.cxx
index 9e97d3bbb2fc..06e3fd453559 100644
--- a/sc/source/filter/excel/xecontent.cxx
+++ b/sc/source/filter/excel/xecontent.cxx
@@ -44,6 +44,9 @@
#include <xehelper.hxx>
#include <xestyle.hxx>
#include <xename.hxx>
+#include <xlcontent.hxx>
+#include <xltools.hxx>
+#include <xeformula.hxx>
#include <rtl/uuid.h>
#include <sal/log.hxx>
#include <oox/export/utils.hxx>
diff --git a/sc/source/filter/excel/xeescher.cxx b/sc/source/filter/excel/xeescher.cxx
index b3e97ea16422..131fbd000be8 100644
--- a/sc/source/filter/excel/xeescher.cxx
+++ b/sc/source/filter/excel/xeescher.cxx
@@ -31,6 +31,7 @@
#include <com/sun/star/chart2/XChartDocument.hpp>
#include <com/sun/star/awt/Point.hpp>
#include <com/sun/star/awt/Size.hpp>
+#include <com/sun/star/chart/XChartDocument.hpp>
#include <set>
#include <rtl/ustrbuf.h>
@@ -50,11 +51,15 @@
#include <postit.hxx>
#include <fapihelper.hxx>
+#include <xcl97esc.hxx>
#include <xechart.hxx>
#include <xeformula.hxx>
+#include <xehelper.hxx>
#include <xelink.hxx>
#include <xename.hxx>
#include <xestyle.hxx>
+#include <xllink.hxx>
+#include <xltools.hxx>
#include <userdat.hxx>
#include <drwlayer.hxx>
#include <svl/itemset.hxx>
diff --git a/sc/source/filter/excel/xeformula.cxx b/sc/source/filter/excel/xeformula.cxx
index 72a7bd7440a5..9214f5c1e3bf 100644
--- a/sc/source/filter/excel/xeformula.cxx
+++ b/sc/source/filter/excel/xeformula.cxx
@@ -32,6 +32,9 @@
#include <xelink.hxx>
#include <xename.hxx>
#include <xestream.hxx>
+#include <xestring.hxx>
+#include <xllink.hxx>
+#include <xltools.hxx>
#include <sal/log.hxx>
using namespace ::formula;
diff --git a/sc/source/filter/excel/xehelper.cxx b/sc/source/filter/excel/xehelper.cxx
index c2b825814b78..4c752f0f0b9f 100644
--- a/sc/source/filter/excel/xehelper.cxx
+++ b/sc/source/filter/excel/xehelper.cxx
@@ -46,6 +46,7 @@
#include <fprogressbar.hxx>
#include <globstr.hrc>
#include <xltracer.hxx>
+#include <xltools.hxx>
#include <xecontent.hxx>
#include <xelink.hxx>
#include <xehelper.hxx>
diff --git a/sc/source/filter/excel/xelink.cxx b/sc/source/filter/excel/xelink.cxx
index ea51929c60b6..401d052706c6 100644
--- a/sc/source/filter/excel/xelink.cxx
+++ b/sc/source/filter/excel/xelink.cxx
@@ -32,6 +32,10 @@
#include <externalrefmgr.hxx>
#include <tokenarray.hxx>
#include <xecontent.hxx>
+#include <xeformula.hxx>
+#include <xehelper.hxx>
+#include <xllink.hxx>
+#include <xltools.hxx>
#include <vector>
#include <memory>
diff --git a/sc/source/filter/excel/xename.cxx b/sc/source/filter/excel/xename.cxx
index 6e0ec1372973..021bd342846d 100644
--- a/sc/source/filter/excel/xename.cxx
+++ b/sc/source/filter/excel/xename.cxx
@@ -29,9 +29,14 @@
#include <xelink.hxx>
#include <globalnames.hxx>
#include <excrecds.hxx>
+#include <xlname.hxx>
+#include <xeformula.hxx>
+#include <xestring.hxx>
+#include <xltools.hxx>
#include <formula/grammar.hxx>
#include <oox/export/utils.hxx>
+#include <oox/token/tokens.hxx>
using namespace ::oox;
diff --git a/sc/source/filter/excel/xepage.cxx b/sc/source/filter/excel/xepage.cxx
index 0e0ce7163354..a039e40fb2bf 100644
--- a/sc/source/filter/excel/xepage.cxx
+++ b/sc/source/filter/excel/xepage.cxx
@@ -28,12 +28,14 @@
#include <editeng/ulspitem.hxx>
#include <editeng/brushitem.hxx>
#include <oox/export/utils.hxx>
+#include <oox/token/tokens.hxx>
#include <document.hxx>
#include <stlpool.hxx>
#include <stlsheet.hxx>
#include <attrib.hxx>
#include <xehelper.hxx>
#include <xeescher.hxx>
+#include <xltools.hxx>
#include <set>
#include <limits>
diff --git a/sc/source/filter/excel/xepivot.cxx b/sc/source/filter/excel/xepivot.cxx
index 8684fa45ce50..010591e4d65a 100644
--- a/sc/source/filter/excel/xepivot.cxx
+++ b/sc/source/filter/excel/xepivot.cxx
@@ -18,11 +18,14 @@
*/
#include <xepivot.hxx>
+#include <xehelper.hxx>
#include <com/sun/star/sheet/DataPilotFieldSortInfo.hpp>
#include <com/sun/star/sheet/DataPilotFieldAutoShowInfo.hpp>
#include <com/sun/star/sheet/DataPilotFieldLayoutInfo.hpp>
#include <com/sun/star/sheet/DataPilotFieldReference.hpp>
+#include <com/sun/star/sheet/DataPilotFieldReferenceItemType.hpp>
#include <com/sun/star/sheet/DataPilotFieldGroupBy.hpp>
+#include <com/sun/star/sheet/DataPilotFieldSortMode.hpp>
#include <algorithm>
#include <math.h>
diff --git a/sc/source/filter/excel/xerecord.cxx b/sc/source/filter/excel/xerecord.cxx
index 4083c6740cb3..85fb4a51a663 100644
--- a/sc/source/filter/excel/xerecord.cxx
+++ b/sc/source/filter/excel/xerecord.cxx
@@ -19,7 +19,9 @@
#include <xerecord.hxx>
#include <xeroot.hxx>
+#include <xltools.hxx>
+#include <oox/token/tokens.hxx>
#include <oox/export/utils.hxx>
#include <osl/diagnose.h>
diff --git a/sc/source/filter/excel/xeroot.cxx b/sc/source/filter/excel/xeroot.cxx
index a1d822c9d491..93a0a761106d 100644
--- a/sc/source/filter/excel/xeroot.cxx
+++ b/sc/source/filter/excel/xeroot.cxx
@@ -40,6 +40,9 @@
#include <xeroot.hxx>
#include <xepivotxml.hxx>
#include <xedbdata.hxx>
+#include <xlcontent.hxx>
+#include <xlname.hxx>
+#include <xllink.hxx>
#include <excrecds.hxx>
#include <tabprotection.hxx>
diff --git a/sc/source/filter/excel/xestream.cxx b/sc/source/filter/excel/xestream.cxx
index 3986becf4556..2934439d69a6 100644
--- a/sc/source/filter/excel/xestream.cxx
+++ b/sc/source/filter/excel/xestream.cxx
@@ -28,11 +28,13 @@
#include <rtl/random.h>
#include <sax/fshelper.hxx>
#include <unotools/streamwrap.hxx>
+#include <sot/storage.hxx>
#include <docuno.hxx>
#include <xestream.hxx>
#include <xladdress.hxx>
#include <xlstring.hxx>
+#include <xltools.hxx>
#include <xeroot.hxx>
#include <xestyle.hxx>
#include <xcl97rec.hxx>
diff --git a/sc/source/filter/excel/xestring.cxx b/sc/source/filter/excel/xestring.cxx
index ac827e90cf11..b0e929e05e6e 100644
--- a/sc/source/filter/excel/xestring.cxx
+++ b/sc/source/filter/excel/xestring.cxx
@@ -25,6 +25,7 @@
#include <xestyle.hxx>
#include <xestream.hxx>
#include <xestring.hxx>
+#include <oox/token/tokens.hxx>
using namespace ::oox;
diff --git a/sc/source/filter/excel/xestyle.cxx b/sc/source/filter/excel/xestyle.cxx
index d1699d498fe3..b4cc6f4826f5 100644
--- a/sc/source/filter/excel/xestyle.cxx
+++ b/sc/source/filter/excel/xestyle.cxx
@@ -53,6 +53,7 @@
#include <globstr.hrc>
#include <scresid.hxx>
#include <xestring.hxx>
+#include <xltools.hxx>
#include <conditio.hxx>
#include <oox/export/utils.hxx>
diff --git a/sc/source/filter/excel/xetable.cxx b/sc/source/filter/excel/xetable.cxx
index c73a0a8b42d4..fb15e33ab75a 100644
--- a/sc/source/filter/excel/xetable.cxx
+++ b/sc/source/filter/excel/xetable.cxx
@@ -33,10 +33,14 @@
#include <xecontent.hxx>
#include <xeescher.hxx>
#include <xeextlst.hxx>
+#include <xeformula.hxx>
+#include <xlcontent.hxx>
+#include <xltools.hxx>
#include <tokenarray.hxx>
#include <formula/errorcodes.hxx>
#include <thread>
#include <comphelper/threadpool.hxx>
+#include <oox/token/tokens.hxx>
#include <oox/export/utils.hxx>
using namespace ::oox;
diff --git a/sc/source/filter/excel/xeview.cxx b/sc/source/filter/excel/xeview.cxx
index f0c7b503a172..a8504671a1c0 100644
--- a/sc/source/filter/excel/xeview.cxx
+++ b/sc/source/filter/excel/xeview.cxx
@@ -23,6 +23,9 @@
#include <viewopti.hxx>
#include <xelink.hxx>
#include <xestyle.hxx>
+#include <xehelper.hxx>
+#include <xltools.hxx>
+#include <oox/token/tokens.hxx>
#include <oox/export/utils.hxx>
using namespace ::oox;
diff --git a/sc/source/filter/excel/xichart.cxx b/sc/source/filter/excel/xichart.cxx
index 975e6d534202..739215a6efbe 100644
--- a/sc/source/filter/excel/xichart.cxx
+++ b/sc/source/filter/excel/xichart.cxx
@@ -93,6 +93,7 @@
#include <chartlis.hxx>
#include <fprogressbar.hxx>
#include <xltracer.hxx>
+#include <xltools.hxx>
#include <xistream.hxx>
#include <xiformula.hxx>
#include <xistyle.hxx>
diff --git a/sc/source/filter/excel/xicontent.cxx b/sc/source/filter/excel/xicontent.cxx
index e75c945662d8..9fbd5806824b 100644
--- a/sc/source/filter/excel/xicontent.cxx
+++ b/sc/source/filter/excel/xicontent.cxx
@@ -50,6 +50,7 @@
#include <arealink.hxx>
#include <stlsheet.hxx>
#include <scextopt.hxx>
+#include <xlcontent.hxx>
#include <xlformula.hxx>
#include <xltracer.hxx>
#include <xistream.hxx>
diff --git a/sc/source/filter/excel/xiescher.cxx b/sc/source/filter/excel/xiescher.cxx
index 1d7e22dd2834..41de97379ebc 100644
--- a/sc/source/filter/excel/xiescher.cxx
+++ b/sc/source/filter/excel/xiescher.cxx
@@ -83,6 +83,7 @@
#include <svx/xbtmpit.hxx>
#include <svx/xbitmap.hxx>
#include <svtools/embedhlp.hxx>
+#include <sot/storage.hxx>
#include <document.hxx>
#include <drwlayer.hxx>
diff --git a/sc/source/filter/excel/xihelper.cxx b/sc/source/filter/excel/xihelper.cxx
index f31cbc29cae8..b8e138490140 100644
--- a/sc/source/filter/excel/xihelper.cxx
+++ b/sc/source/filter/excel/xihelper.cxx
@@ -32,6 +32,7 @@
#include <attrib.hxx>
#include <xltracer.hxx>
#include <xistream.hxx>
+#include <xistring.hxx>
#include <xistyle.hxx>
#include <excform.hxx>
#include <stringutil.hxx>
diff --git a/sc/source/filter/excel/xilink.cxx b/sc/source/filter/excel/xilink.cxx
index 02f0562f7fec..10e393dbb8d3 100644
--- a/sc/source/filter/excel/xilink.cxx
+++ b/sc/source/filter/excel/xilink.cxx
@@ -25,6 +25,7 @@
#include <xistream.hxx>
#include <xihelper.hxx>
#include <xiname.hxx>
+#include <xltools.hxx>
#include <excform.hxx>
#include <tokenarray.hxx>
#include <externalrefmgr.hxx>
diff --git a/sc/source/filter/excel/xiname.cxx b/sc/source/filter/excel/xiname.cxx
index bc60c1e18252..720e61953d0f 100644
--- a/sc/source/filter/excel/xiname.cxx
+++ b/sc/source/filter/excel/xiname.cxx
@@ -18,6 +18,7 @@
*/
#include <xiname.hxx>
+#include <xlname.hxx>
#include <rangenam.hxx>
#include <xistream.hxx>
#include <excform.hxx>
diff --git a/sc/source/filter/excel/xipivot.cxx b/sc/source/filter/excel/xipivot.cxx
index 78519393c425..084924bdfb3f 100644
--- a/sc/source/filter/excel/xipivot.cxx
+++ b/sc/source/filter/excel/xipivot.cxx
@@ -23,11 +23,13 @@
#include <com/sun/star/sheet/DataPilotFieldAutoShowInfo.hpp>
#include <com/sun/star/sheet/DataPilotFieldLayoutInfo.hpp>
#include <com/sun/star/sheet/DataPilotFieldReference.hpp>
+#include <com/sun/star/sheet/DataPilotFieldReferenceItemType.hpp>
#include <tools/datetime.hxx>
#include <svl/zformat.hxx>
#include <svl/intitem.hxx>
#include <sal/log.hxx>
+#include <sot/storage.hxx>
#include <document.hxx>
#include <formulacell.hxx>
diff --git a/sc/source/filter/excel/xistream.cxx b/sc/source/filter/excel/xistream.cxx
index 9c2aa9e75f83..8c5365d9a4b4 100644
--- a/sc/source/filter/excel/xistream.cxx
+++ b/sc/source/filter/excel/xistream.cxx
@@ -22,6 +22,8 @@
#include <osl/thread.h>
#include <osl/diagnose.h>
#include <sal/log.hxx>
+#include <ftools.hxx>
+#include <ftools.hxx>
#include <xistream.hxx>
#include <xlstring.hxx>
#include <xiroot.hxx>
diff --git a/sc/source/filter/excel/xistring.cxx b/sc/source/filter/excel/xistring.cxx
index 6349a3e0c58b..4b06f3447978 100644
--- a/sc/source/filter/excel/xistring.cxx
+++ b/sc/source/filter/excel/xistring.cxx
@@ -21,6 +21,7 @@
#include <xlstyle.hxx>
#include <xistream.hxx>
#include <xiroot.hxx>
+#include <xltools.hxx>
#include <sal/log.hxx>
// Byte/Unicode strings =======================================================
diff --git a/sc/source/filter/excel/xistyle.cxx b/sc/source/filter/excel/xistyle.cxx
index c058977842f0..14fa8478d0f5 100644
--- a/sc/source/filter/excel/xistyle.cxx
+++ b/sc/source/filter/excel/xistyle.cxx
@@ -48,15 +48,20 @@
#include <sal/log.hxx>
#include <vcl/fontcharmap.hxx>
#include <document.hxx>
+#include <documentimport.hxx>
#include <docpool.hxx>
#include <attrib.hxx>
+#include <patattr.hxx>
#include <stlpool.hxx>
#include <stlsheet.hxx>
#include <formulacell.hxx>
#include <globstr.hrc>
#include <scresid.hxx>
#include <attarray.hxx>
+#include <xladdress.hxx>
+#include <xlcontent.hxx>
#include <xltracer.hxx>
+#include <xltools.hxx>
#include <xistream.hxx>
#include <xicontent.hxx>
diff --git a/sc/source/filter/excel/xlchart.cxx b/sc/source/filter/excel/xlchart.cxx
index a3634ca49b20..7a24e96d431a 100644
--- a/sc/source/filter/excel/xlchart.cxx
+++ b/sc/source/filter/excel/xlchart.cxx
@@ -50,6 +50,7 @@
#include <global.hxx>
#include <xlroot.hxx>
#include <xlstyle.hxx>
+#include <xltools.hxx>
using namespace css;
diff --git a/sc/source/filter/excel/xlpage.cxx b/sc/source/filter/excel/xlpage.cxx
index ef9c68ca65e5..3a47286728f8 100644
--- a/sc/source/filter/excel/xlpage.cxx
+++ b/sc/source/filter/excel/xlpage.cxx
@@ -18,6 +18,7 @@
*/
#include <xlpage.hxx>
+#include <xltools.hxx>
#include <sfx2/printer.hxx>
#include <editeng/svxenum.hxx>
#include <editeng/paperinf.hxx>
diff --git a/sc/source/filter/excel/xlpivot.cxx b/sc/source/filter/excel/xlpivot.cxx
index 7fc6f46225b2..25a0a9c4cf9c 100644
--- a/sc/source/filter/excel/xlpivot.cxx
+++ b/sc/source/filter/excel/xlpivot.cxx
@@ -27,6 +27,11 @@
#include <osl/diagnose.h>
#include <sal/log.hxx>
#include <com/sun/star/sheet/DataPilotFieldGroupBy.hpp>
+#include <com/sun/star/sheet/DataPilotFieldSortMode.hpp>
+#include <com/sun/star/sheet/DataPilotFieldShowItemsMode.hpp>
+#include <com/sun/star/sheet/DataPilotFieldLayoutMode.hpp>
+#include <com/sun/star/sheet/DataPilotFieldReferenceType.hpp>
+#include <com/sun/star/sheet/DataPilotFieldReferenceItemType.hpp>
using ::com::sun::star::sheet::GeneralFunction;
using ::com::sun::star::sheet::DataPilotFieldOrientation;
diff --git a/sc/source/filter/excel/xlroot.cxx b/sc/source/filter/excel/xlroot.cxx
index 9e941bd67720..c114d859a54e 100644
--- a/sc/source/filter/excel/xlroot.cxx
+++ b/sc/source/filter/excel/xlroot.cxx
@@ -26,6 +26,7 @@
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/i18n/ScriptType.hpp>
#include <comphelper/processfactory.hxx>
+#include <sot/storage.hxx>
#include <vcl/svapp.hxx>
#include <svl/stritem.hxx>
#include <svl/languageoptions.hxx>
@@ -51,6 +52,7 @@
#include <xlstyle.hxx>
#include <xlchart.hxx>
#include <xltracer.hxx>
+#include <xltools.hxx>
#include <unotools/configmgr.hxx>
#include <unotools/useroptions.hxx>
#include <root.hxx>
diff --git a/sc/source/filter/excel/xlstyle.cxx b/sc/source/filter/excel/xlstyle.cxx
index 610736f89a4c..59cde89bb3ca 100644
--- a/sc/source/filter/excel/xlstyle.cxx
+++ b/sc/source/filter/excel/xlstyle.cxx
@@ -20,6 +20,7 @@
#include <xlstyle.hxx>
#include <com/sun/star/awt/FontFamily.hpp>
#include <com/sun/star/awt/FontSlant.hpp>
+#include <com/sun/star/awt/FontStrikeout.hpp>
#include <com/sun/star/awt/FontUnderline.hpp>
#include <com/sun/star/i18n/ScriptType.hpp>
#include <vcl/svapp.hxx>
@@ -33,6 +34,7 @@
#include <editeng/svxfont.hxx>
#include <global.hxx>
#include <xlroot.hxx>
+#include <xltools.hxx>
// Color data =================================================================
/** Standard EGA colors, bright. */
diff --git a/sc/source/filter/inc/XclExpChangeTrack.hxx b/sc/source/filter/inc/XclExpChangeTrack.hxx
index 2a74350756dc..5ac54f447bee 100644
--- a/sc/source/filter/inc/XclExpChangeTrack.hxx
+++ b/sc/source/filter/inc/XclExpChangeTrack.hxx
@@ -23,14 +23,13 @@
#include <memory>
#include <stack>
#include <tools/datetime.hxx>
-#include <rtl/uuid.h>
-#include <bigrange.hxx>
#include <chgtrack.hxx>
#include <document.hxx>
#include "xelink.hxx"
-#include "ftools.hxx"
+#include "xestring.hxx"
#include "excrecds.hxx"
-#include <o3tl/deleter.hxx>
+#include "xlformula.hxx"
+#include "xeformula.hxx"
class ExcXmlRecord : public ExcRecord
{
diff --git a/sc/source/filter/inc/XclImpChangeTrack.hxx b/sc/source/filter/inc/XclImpChangeTrack.hxx
index 8d9e8293f7a4..96146d5a3e78 100644
--- a/sc/source/filter/inc/XclImpChangeTrack.hxx
+++ b/sc/source/filter/inc/XclImpChangeTrack.hxx
@@ -20,16 +20,14 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XCLIMPCHANGETRACK_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XCLIMPCHANGETRACK_HXX
-#include <tools/datetime.hxx>
#include "xiroot.hxx"
#include "xistream.hxx"
#include "excform.hxx"
-#include "imp_op.hxx"
struct ScCellValue;
class ScChangeAction;
class ScChangeTrack;
-class XclImpChTrFmlConverter;
+class DateTime;
struct XclImpChTrRecHeader
{
diff --git a/sc/source/filter/inc/excform.hxx b/sc/source/filter/inc/excform.hxx
index 122e1c42c305..4345d9daabfc 100644
--- a/sc/source/filter/inc/excform.hxx
+++ b/sc/source/filter/inc/excform.hxx
@@ -22,6 +22,7 @@
#include "xlformula.hxx"
#include "xiroot.hxx"
+#include "xltools.hxx"
#include "formel.hxx"
#include <vector>
diff --git a/sc/source/filter/inc/imp_op.hxx b/sc/source/filter/inc/imp_op.hxx
index 709be5419bfa..6120da506958 100644
--- a/sc/source/filter/inc/imp_op.hxx
+++ b/sc/source/filter/inc/imp_op.hxx
@@ -23,6 +23,7 @@
#include <sal/types.h>
#include "xiroot.hxx"
#include "xistream.hxx"
+#include "ftools.hxx"
#include <vector>
#include <memory>
@@ -32,10 +33,12 @@ class SvStream;
class ScFormulaCell;
class ScDocument;
+class ScTokenArray;
class ExcelToSc;
class XclImpOutlineBuffer;
class XclImpColRowSettings;
+struct XclAddress;
class ImportTyp
{
diff --git a/sc/source/filter/inc/xcl97esc.hxx b/sc/source/filter/inc/xcl97esc.hxx
index f3b5c9f21d0c..18f519b0d89b 100644
--- a/sc/source/filter/inc/xcl97esc.hxx
+++ b/sc/source/filter/inc/xcl97esc.hxx
@@ -23,13 +23,10 @@
#include <memory>
#include <stack>
#include <filter/msfilter/escherex.hxx>
-#include "xlescher.hxx"
#include "xeroot.hxx"
-#include <vector>
+#include <unotools/tempfile.hxx>
-namespace utl { class TempFile; }
-
-class SvStream;
+namespace com { namespace sun { namespace star { namespace awt { class XControlModel; } } } }
class XclEscherExGlobal : public EscherExGlobal, protected XclExpRoot
{
@@ -53,7 +50,6 @@ class XclEscherClientTextbox;
class XclExpOcxControlObj;
class XclExpTbxControlObj;
class XclExpShapeObj;
-class EscherExHostAppData;
class ShapeInteractionHelper
{
public:
diff --git a/sc/source/filter/inc/xcl97rec.hxx b/sc/source/filter/inc/xcl97rec.hxx
index f97c9b72bf9d..e957c677b0fe 100644
--- a/sc/source/filter/inc/xcl97rec.hxx
+++ b/sc/source/filter/inc/xcl97rec.hxx
@@ -22,8 +22,8 @@
#include <memory>
#include "excrecds.hxx"
-#include "xcl97esc.hxx"
-#include "xlstyle.hxx"
+#include "xlescher.hxx"
+#include "xestring.hxx"
#include <tabprotection.hxx>
#include <svx/svdobj.hxx>
@@ -32,6 +32,7 @@ class XclExpMsoDrawing;
class SdrCaptionObj;
class SdrTextObj;
class XclTxo;
+class XclEscherEx;
class XclExpObjList : public ExcEmptyRec, protected XclExpRoot
{
diff --git a/sc/source/filter/inc/xecontent.hxx b/sc/source/filter/inc/xecontent.hxx
index eabc51bc88f9..fccbf881d9c0 100644
--- a/sc/source/filter/inc/xecontent.hxx
+++ b/sc/source/filter/inc/xecontent.hxx
@@ -22,13 +22,12 @@
#include <memory>
#include <rangelst.hxx>
-#include "xlcontent.hxx"
#include "xladdress.hxx"
#include "xerecord.hxx"
#include "xeroot.hxx"
#include "xestring.hxx"
-#include "xeformula.hxx"
#include "xeextlst.hxx"
+#include "xlformula.hxx"
#include <colorscale.hxx>
@@ -163,7 +162,6 @@ private:
// Conditional formatting =====================================================
-class ScCondFormatEntry;
class XclExpCFImpl;
/** Represents a CF record that contains one condition of a conditional format. */
@@ -220,8 +218,6 @@ private:
const Color& mrColor;
};
-class ScConditionalFormat;
-
/** Represents a CONDFMT record that contains all conditions of a conditional format.
@descr Contains the conditions which are stored in CF records. */
class XclExpCondfmt : public XclExpRecord, protected XclExpRoot
diff --git a/sc/source/filter/inc/xedbdata.hxx b/sc/source/filter/inc/xedbdata.hxx
index 795867317b8c..962f823084b6 100644
--- a/sc/source/filter/inc/xedbdata.hxx
+++ b/sc/source/filter/inc/xedbdata.hxx
@@ -24,7 +24,6 @@
#include "xerecord.hxx"
class ScDBData;
-class XclExpTablesManagerImpl;
class XclExpTables : public XclExpRecordBase, protected XclExpRoot
{
diff --git a/sc/source/filter/inc/xeescher.hxx b/sc/source/filter/inc/xeescher.hxx
index 04d773b44dd6..c908675f3d2c 100644
--- a/sc/source/filter/inc/xeescher.hxx
+++ b/sc/source/filter/inc/xeescher.hxx
@@ -25,13 +25,15 @@
#include "xcl97rec.hxx"
#include "xlescher.hxx"
#include "xlformula.hxx"
-#include <com/sun/star/chart/XChartDocument.hpp>
#include <svx/sdtaitm.hxx>
#include <rtl/ustring.hxx>
#include <memory>
class ScPostIt;
+namespace utl { class TempFile; }
+namespace com { namespace sun { namespace star { namespace chart { class XChartDocument; } } } }
+
namespace com { namespace sun { namespace star {
namespace script { struct ScriptEventDescriptor; }
} } }
diff --git a/sc/source/filter/inc/xeextlst.hxx b/sc/source/filter/inc/xeextlst.hxx
index 859237321be8..4d8ee7bdb930 100644
--- a/sc/source/filter/inc/xeextlst.hxx
+++ b/sc/source/filter/inc/xeextlst.hxx
@@ -14,7 +14,6 @@
#include "xeroot.hxx"
#include <colorscale.hxx>
-#include <formulaopt.hxx>
#include <memory>
diff --git a/sc/source/filter/inc/xeformula.hxx b/sc/source/filter/inc/xeformula.hxx
index 32d3694a5b58..61a9d28480d2 100644
--- a/sc/source/filter/inc/xeformula.hxx
+++ b/sc/source/filter/inc/xeformula.hxx
@@ -24,6 +24,8 @@
#include "xeroot.hxx"
#include <memory>
+struct XclAddress;
+
// External reference log =====================================================
/** Log entry for external references in a formula, used i.e. in change tracking. */
diff --git a/sc/source/filter/inc/xehelper.hxx b/sc/source/filter/inc/xehelper.hxx
index c90c6fa18c76..69b1f2e76ae7 100644
--- a/sc/source/filter/inc/xehelper.hxx
+++ b/sc/source/filter/inc/xehelper.hxx
@@ -21,9 +21,10 @@
#define INCLUDED_SC_SOURCE_FILTER_INC_XEHELPER_HXX
#include <memory>
+#include <rangelst.hxx>
#include "xladdress.hxx"
#include "xeroot.hxx"
-#include "xestring.hxx"
+#include "xlstring.hxx"
// Export progress bar ========================================================
@@ -326,8 +327,6 @@ public:
// Header/footer conversion ===================================================
-class EditEngine;
-
/** Converts edit engine text objects to an Excel header/footer string.
@descr Header/footer content is divided into three parts: Left, center and
right portion. All formatting information will be encoded in the Excel string
diff --git a/sc/source/filter/inc/xelink.hxx b/sc/source/filter/inc/xelink.hxx
index 9411b7a233c8..e9bcbb012983 100644
--- a/sc/source/filter/inc/xelink.hxx
+++ b/sc/source/filter/inc/xelink.hxx
@@ -20,17 +20,16 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XELINK_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XELINK_HXX
-#include <markdata.hxx>
-#include "xllink.hxx"
#include "xerecord.hxx"
-#include "xehelper.hxx"
-#include "xeformula.hxx"
+#include "xeroot.hxx"
#include <externalrefmgr.hxx>
-#include <o3tl/typed_flags_set.hxx>
#include <memory>
+namespace o3tl { template <typename T> struct typed_flags; }
+
struct ScSingleRefData;
struct ScComplexRefData;
+struct XclExpRefLogEntry;
/* ============================================================================
Classes for export of different kinds of internal/external references.
diff --git a/sc/source/filter/inc/xename.hxx b/sc/source/filter/inc/xename.hxx
index a0bb336bb3e7..f7ffedf49198 100644
--- a/sc/source/filter/inc/xename.hxx
+++ b/sc/source/filter/inc/xename.hxx
@@ -21,7 +21,6 @@
#define INCLUDED_SC_SOURCE_FILTER_INC_XENAME_HXX
#include "xerecord.hxx"
-#include "xlname.hxx"
#include "xlformula.hxx"
#include "xeroot.hxx"
#include <memory>
diff --git a/sc/source/filter/inc/xepivot.hxx b/sc/source/filter/inc/xepivot.hxx
index 38464e2523fe..261c05297d38 100644
--- a/sc/source/filter/inc/xepivot.hxx
+++ b/sc/source/filter/inc/xepivot.hxx
@@ -20,7 +20,6 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XEPIVOT_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XEPIVOT_HXX
-#include <map>
#include "xerecord.hxx"
#include "xlpivot.hxx"
#include "xeroot.hxx"
@@ -30,7 +29,6 @@ class ScDPSaveData;
class ScDPSaveDimension;
class ScDPSaveMember;
class ScDPSaveGroupDimension;
-class ScDPSaveNumGroupDimension;
struct ScDPNumGroupInfo;
// Pivot cache
@@ -59,8 +57,6 @@ private:
sal_uInt16 mnTypeFlag; /// Data type flag.
};
-class XclExpPivotCache;
-
class XclExpPCField : public XclExpRecord, public XclPCField, protected XclExpRoot
{
public:
diff --git a/sc/source/filter/inc/xepivotxml.hxx b/sc/source/filter/inc/xepivotxml.hxx
index accfb4a25e22..2301cd300fbf 100644
--- a/sc/source/filter/inc/xepivotxml.hxx
+++ b/sc/source/filter/inc/xepivotxml.hxx
@@ -18,7 +18,6 @@
#include <unordered_map>
class ScDPCache;
-class ScDPCollection;
class ScDPObject;
class XclExpXmlPivotCaches : public XclExpRecordBase, protected XclExpRoot
diff --git a/sc/source/filter/inc/xerecord.hxx b/sc/source/filter/inc/xerecord.hxx
index 2985e452ce2e..dd968d92aa7b 100644
--- a/sc/source/filter/inc/xerecord.hxx
+++ b/sc/source/filter/inc/xerecord.hxx
@@ -22,6 +22,7 @@
#include "xlconst.hxx"
#include "xestream.hxx"
+#include "xlstream.hxx"
#include <memory>
// Base classes to export Excel records =======================================
diff --git a/sc/source/filter/inc/xeroot.hxx b/sc/source/filter/inc/xeroot.hxx
index 41290c26411a..1775c5450591 100644
--- a/sc/source/filter/inc/xeroot.hxx
+++ b/sc/source/filter/inc/xeroot.hxx
@@ -20,14 +20,14 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XEROOT_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XEROOT_HXX
-#include <com/sun/star/beans/NamedValue.hpp>
-
#include "xlroot.hxx"
#include <compiler.hxx>
#include <memory>
// Forward declarations of objects in public use ==============================
+namespace com { namespace sun { namespace star { namespace beans { struct NamedValue; } } } }
+
class XclExpRecordBase;
class XclExpString;
diff --git a/sc/source/filter/inc/xestream.hxx b/sc/source/filter/inc/xestream.hxx
index 8d3ce390b93a..f8a7cb06a02d 100644
--- a/sc/source/filter/inc/xestream.hxx
+++ b/sc/source/filter/inc/xestream.hxx
@@ -20,30 +20,26 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XESTREAM_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XESTREAM_HXX
-#include <com/sun/star/beans/NamedValue.hpp>
-#include <com/sun/star/ucb/ContentCreationException.hpp>
-
#include <map>
#include <stack>
-#include <string>
#include <rtl/strbuf.hxx>
#include <oox/core/xmlfilterbase.hxx>
-#include <oox/token/tokens.hxx>
#include <sax/fshelper.hxx>
#include <tools/stream.hxx>
-
-#include "xlstream.hxx"
-#include "xestring.hxx"
+#include "ftools.hxx"
#include <filter/msfilter/mscodec.hxx>
#include <vector>
+namespace com { namespace sun { namespace star { namespace beans { struct NamedValue; } } } }
+
/* ============================================================================
Output stream class for Excel export
- CONTINUE record handling
============================================================================ */
+class XclExpString;
class XclExpRoot;
class XclExpBiff8Encrypter;
typedef std::shared_ptr< XclExpBiff8Encrypter > XclExpEncrypterRef;
@@ -235,14 +231,12 @@ private:
class ScAddress;
class ScDocShell;
-class ScDocument;
class ScFormulaCell;
class ScRange;
class ScRangeList;
class ScTokenArray;
struct XclAddress;
struct XclFontData;
-struct XclRange;
class XclRangeList;
namespace sc { class CompileFormulaContext; }
diff --git a/sc/source/filter/inc/xestyle.hxx b/sc/source/filter/inc/xestyle.hxx
index a8fe61c332f3..8ee42dbcb268 100644
--- a/sc/source/filter/inc/xestyle.hxx
+++ b/sc/source/filter/inc/xestyle.hxx
@@ -27,7 +27,6 @@
#include "xerecord.hxx"
#include "xlstyle.hxx"
#include "xeroot.hxx"
-#include <conditio.hxx>
#include <fonthelper.hxx>
#include <memory>
#include <vector>
@@ -119,8 +118,6 @@ private:
// FONT record - font information =============================================
-class SvxFont;
-
const size_t EXC_FONTLIST_NOTFOUND = static_cast< size_t >( -1 );
/** Helper functions for font export. */
@@ -266,7 +263,6 @@ struct XclExpNumFmt
void SaveXml( XclExpXmlStream& rStrm );
};
-class SvNumberFormatter;
typedef ::std::unique_ptr< SvNumberFormatter > SvNumberFormatterPtr;
/** Stores all number formats used in the document. */
diff --git a/sc/source/filter/inc/xetable.hxx b/sc/source/filter/inc/xetable.hxx
index bf5456e947fd..96cbe9d6baf4 100644
--- a/sc/source/filter/inc/xetable.hxx
+++ b/sc/source/filter/inc/xetable.hxx
@@ -25,16 +25,16 @@
#include <vector>
#include "xladdress.hxx"
#include "xerecord.hxx"
-#include "xestring.hxx"
-#include "xeformula.hxx"
#include "xestyle.hxx"
-#include "xeextlst.hxx"
+#include "xlformula.hxx"
#include <map>
#include <memory>
#include <unordered_map>
#include <unordered_set>
+class XclExtLst;
+
/* ============================================================================
Export of cell tables including row and column description.
- Managing all used and formatted cells in a sheet.
@@ -203,8 +203,6 @@ private:
// Multiple operations ========================================================
-struct XclMultipleOpRefs;
-
/** Represents a TABLEOP record for a multiple operations range. */
class XclExpTableop : public XclExpRangeFmlaBase
{
diff --git a/sc/source/filter/inc/xichart.hxx b/sc/source/filter/inc/xichart.hxx
index f02ec52ca42b..824537d20798 100644
--- a/sc/source/filter/inc/xichart.hxx
+++ b/sc/source/filter/inc/xichart.hxx
@@ -21,14 +21,10 @@
#define INCLUDED_SC_SOURCE_FILTER_INC_XICHART_HXX
#include <set>
-#include <list>
#include <map>
#include <memory>
#include <vector>
-#include <svl/itemset.hxx>
-
-#include <rangelst.hxx>
#include <types.hxx>
#include "xlchart.hxx"
#include "xlstyle.hxx"
diff --git a/sc/source/filter/inc/xicontent.hxx b/sc/source/filter/inc/xicontent.hxx
index cb6b80850cdb..4a6b53dc8fa1 100644
--- a/sc/source/filter/inc/xicontent.hxx
+++ b/sc/source/filter/inc/xicontent.hxx
@@ -20,9 +20,7 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XICONTENT_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XICONTENT_HXX
-#include <global.hxx>
#include <rangelst.hxx>
-#include "xlcontent.hxx"
#include "xistring.hxx"
#include "xiroot.hxx"
#include <validat.hxx>
@@ -32,6 +30,9 @@
#include <vector>
#include <memory>
+class ErrCode;
+struct XclRange;
+
/* ============================================================================
Classes to import the big Excel document contents (related to several cells or
globals for the document).
@@ -118,8 +119,6 @@ public:
// Conditional formatting =====================================================
-class ScConditionalFormat;
-
/** Represents a conditional format with condition formulas, and formatting attributes. */
class XclImpCondFormat : protected XclImpRoot
{
diff --git a/sc/source/filter/inc/xiescher.hxx b/sc/source/filter/inc/xiescher.hxx
index 58ac66867831..8d8378c5bf87 100644
--- a/sc/source/filter/inc/xiescher.hxx
+++ b/sc/source/filter/inc/xiescher.hxx
@@ -20,13 +20,10 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XIESCHER_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XIESCHER_HXX
-#include <com/sun/star/container/XNameContainer.hpp>
#include <filter/msfilter/msdffimp.hxx>
-#include <svx/svdobj.hxx>
#include <vcl/graph.hxx>
#include "xlescher.hxx"
#include "xiroot.hxx"
-#include "xistring.hxx"
#include <oox/ole/olehelper.hxx>
#include <rtl/ustring.hxx>
#include <map>
@@ -38,6 +35,8 @@ namespace com { namespace sun { namespace star {
namespace form { class XForm; }
} } }
+namespace com { namespace sun { namespace star { namespace container { class XNameContainer; } } } }
+
class SdrObjList;
class ScfProgressBar;
class ScfPropertySet;
@@ -46,6 +45,8 @@ class XclImpChart;
class XclImpDffConverter;
class XclImpDrawing;
+struct SdrObjectFreeOp;
+
// Drawing objects ============================================================
typedef std::unique_ptr< SdrObject, SdrObjectFreeOp > SdrObjectPtr;
diff --git a/sc/source/filter/inc/xihelper.hxx b/sc/source/filter/inc/xihelper.hxx
index 15c76bd839d6..71536362d02e 100644
--- a/sc/source/filter/inc/xihelper.hxx
+++ b/sc/source/filter/inc/xihelper.hxx
@@ -24,7 +24,7 @@
#include <types.hxx>
#include "xladdress.hxx"
#include "xiroot.hxx"
-#include "xistring.hxx"
+#include "xltools.hxx"
#include <memory>
#include <vector>
@@ -128,7 +128,6 @@ public:
// Header/footer conversion ===================================================
class EditEngine;
-class EditTextObject;
class SfxItemSet;
class SvxFieldItem;
struct XclFontData;
diff --git a/sc/source/filter/inc/xilink.hxx b/sc/source/filter/inc/xilink.hxx
index 8644be6973bb..2e188d0de9c1 100644
--- a/sc/source/filter/inc/xilink.hxx
+++ b/sc/source/filter/inc/xilink.hxx
@@ -24,6 +24,7 @@
#include <map>
#include "xllink.hxx"
#include "xiroot.hxx"
+#include "ftools.hxx"
#include <types.hxx>
namespace svl {
diff --git a/sc/source/filter/inc/xiname.hxx b/sc/source/filter/inc/xiname.hxx
index a9a9cdf12bf9..658d81e195a3 100644
--- a/sc/source/filter/inc/xiname.hxx
+++ b/sc/source/filter/inc/xiname.hxx
@@ -20,7 +20,6 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XINAME_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XINAME_HXX
-#include "xlname.hxx"
#include "xiroot.hxx"
#include "xistream.hxx"
@@ -29,7 +28,6 @@
#include <memory>
#include <vector>
-class ScRangeData;
class ScTokenArray;
/** Represents a defined name. It may be related to a single sheet or global. */
diff --git a/sc/source/filter/inc/xistring.hxx b/sc/source/filter/inc/xistring.hxx
index 2fc25cf9302e..0d97b4c89357 100644
--- a/sc/source/filter/inc/xistring.hxx
+++ b/sc/source/filter/inc/xistring.hxx
@@ -20,6 +20,7 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XISTRING_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XISTRING_HXX
+#include <rtl/ustring.hxx>
#include "xlstring.hxx"
// Byte/Unicode strings =======================================================
diff --git a/sc/source/filter/inc/xistyle.hxx b/sc/source/filter/inc/xistyle.hxx
index 3f37b9e5dfda..1c03c3d39cd8 100644
--- a/sc/source/filter/inc/xistyle.hxx
+++ b/sc/source/filter/inc/xistyle.hxx
@@ -23,11 +23,12 @@
#include <vector>
#include <memory>
#include <rangelst.hxx>
-#include <patattr.hxx>
-#include "xladdress.hxx"
#include "xlstyle.hxx"
#include "xiroot.hxx"
+class ScPatternAttr;
+
+struct XclRange;
struct ScAttrEntry;
enum class SvxBoxItemLine;
diff --git a/sc/source/filter/inc/xlchart.hxx b/sc/source/filter/inc/xlchart.hxx
index bdb9fbad783f..1da9057df893 100644
--- a/sc/source/filter/inc/xlchart.hxx
+++ b/sc/source/filter/inc/xlchart.hxx
@@ -1298,8 +1298,6 @@ private:
sal_Int32 mnIndex; /// Index to create unique identifiers.
};
-struct XclFontData;
-
/** Helper class for usage of property sets. */
class XclChPropSetHelper
{
diff --git a/sc/source/filter/inc/xlescher.hxx b/sc/source/filter/inc/xlescher.hxx
index dc28000ecce4..7d443dcc8eaa 100644
--- a/sc/source/filter/inc/xlescher.hxx
+++ b/sc/source/filter/inc/xlescher.hxx
@@ -22,7 +22,6 @@
#include <tools/gen.hxx>
#include <tools/mapunit.hxx>
-#include "fapihelper.hxx"
#include "xladdress.hxx"
#include "xlstyle.hxx"
#include "xistream.hxx"
@@ -33,8 +32,6 @@ namespace com { namespace sun { namespace star {
namespace script { struct ScriptEventDescriptor; }
} } }
-namespace tools { class Rectangle; }
-
// Constants and Enumerations =================================================
// (0x001C) NOTE --------------------------------------------------------------
diff --git a/sc/source/filter/inc/xlpage.hxx b/sc/source/filter/inc/xlpage.hxx
index 9fe993c35842..8ae20f85d1ba 100644
--- a/sc/source/filter/inc/xlpage.hxx
+++ b/sc/source/filter/inc/xlpage.hxx
@@ -21,7 +21,7 @@
#define INCLUDED_SC_SOURCE_FILTER_INC_XLPAGE_HXX
#include <tools/gen.hxx>
-#include "xltools.hxx"
+#include "ftools.hxx"
#include <memory>
// Constants and Enumerations =================================================
diff --git a/sc/source/filter/inc/xlpivot.hxx b/sc/source/filter/inc/xlpivot.hxx
index 26e5c7869eb2..d9f04ca98942 100644
--- a/sc/source/filter/inc/xlpivot.hxx
+++ b/sc/source/filter/inc/xlpivot.hxx
@@ -20,19 +20,12 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XLPIVOT_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XLPIVOT_HXX
-#include <com/sun/star/sheet/GeneralFunction.hpp>
#include <com/sun/star/sheet/DataPilotFieldOrientation.hpp>
-#include <com/sun/star/sheet/DataPilotFieldSortMode.hpp>
-#include <com/sun/star/sheet/DataPilotFieldShowItemsMode.hpp>
-#include <com/sun/star/sheet/DataPilotFieldLayoutMode.hpp>
-#include <com/sun/star/sheet/DataPilotFieldReferenceType.hpp>
-#include <com/sun/star/sheet/DataPilotFieldReferenceItemType.hpp>
#include <tools/datetime.hxx>
#include "ftools.hxx"
#include "xladdress.hxx"
#include <dpobject.hxx>
-#include <memory>
#include <boost/optional.hpp>
class XclImpStream;
diff --git a/sc/source/filter/inc/xlroot.hxx b/sc/source/filter/inc/xlroot.hxx
index f5942a4b0808..1b799d845b87 100644
--- a/sc/source/filter/inc/xlroot.hxx
+++ b/sc/source/filter/inc/xlroot.hxx
@@ -20,23 +20,19 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XLROOT_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XLROOT_HXX
-#include <com/sun/star/beans/NamedValue.hpp>
-
#include <i18nlangtag/lang.h>
-#include <sot/storage.hxx>
+#include <tools/ref.hxx>
#include "xlconst.hxx"
-#include "xltools.hxx"
-#include <documentimport.hxx>
#include <memory>
+namespace com { namespace sun { namespace star { namespace beans { struct NamedValue; } } } }
namespace comphelper { class IDocPasswordVerifier; }
// Forward declarations of objects in public use ==============================
class DateTime;
-
-struct XclAddress;
-struct XclRange;
+class SotStorage;
+class SotStorageStream;
// Global data ================================================================
diff --git a/sc/source/filter/inc/xlstream.hxx b/sc/source/filter/inc/xlstream.hxx
index 0c45575199ed..583259ac7734 100644
--- a/sc/source/filter/inc/xlstream.hxx
+++ b/sc/source/filter/inc/xlstream.hxx
@@ -21,7 +21,6 @@
#define INCLUDED_SC_SOURCE_FILTER_INC_XLSTREAM_HXX
#include <svx/svxerr.hxx>
-#include "ftools.hxx"
// Constants ==================================================================
diff --git a/sc/source/filter/inc/xlstring.hxx b/sc/source/filter/inc/xlstring.hxx
index 7cf72899ae96..82cd3486ead5 100644
--- a/sc/source/filter/inc/xlstring.hxx
+++ b/sc/source/filter/inc/xlstring.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XLSTRING_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XLSTRING_HXX
-#include "ftools.hxx"
+#include <vector>
#include <o3tl/typed_flags_set.hxx>
// Constants and enumerations =================================================
diff --git a/sc/source/filter/inc/xlstyle.hxx b/sc/source/filter/inc/xlstyle.hxx
index f9b6e68a80ad..70fd39121c3e 100644
--- a/sc/source/filter/inc/xlstyle.hxx
+++ b/sc/source/filter/inc/xlstyle.hxx
@@ -22,9 +22,8 @@
#include <map>
#include <com/sun/star/awt/FontSlant.hpp>
-#include <com/sun/star/awt/FontStrikeout.hpp>
#include <tools/color.hxx>
-#include <vcl/vclenum.hxx>
+#include <tools/fontenum.hxx>
#include <editeng/svxenum.hxx>
#include <editeng/frmdir.hxx>
#include <svl/zforlist.hxx>
diff --git a/sc/source/filter/inc/xltools.hxx b/sc/source/filter/inc/xltools.hxx
index 497cdf9b3c60..212d9e46fb40 100644
--- a/sc/source/filter/inc/xltools.hxx
+++ b/sc/source/filter/inc/xltools.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XLTOOLS_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XLTOOLS_HXX
-#include <address.hxx>
+#include <types.hxx>
#include "ftools.hxx"
class SfxObjectShell;
diff --git a/sc/source/filter/inc/xltracer.hxx b/sc/source/filter/inc/xltracer.hxx
index f5fb567be3f0..94446fb2744b 100644
--- a/sc/source/filter/inc/xltracer.hxx
+++ b/sc/source/filter/inc/xltracer.hxx
@@ -20,8 +20,8 @@
#ifndef INCLUDED_SC_SOURCE_FILTER_INC_XLTRACER_HXX
#define INCLUDED_SC_SOURCE_FILTER_INC_XLTRACER_HXX
-#include <global.hxx>
-#include "xltools.hxx"
+#include <address.hxx>
+#include <vector>
// As Trace features become implemented, we can safely delete the enum entry as
// we use the member mnID to keep track of the actual trace tag ID value.
diff --git a/sc/source/filter/inc/xlview.hxx b/sc/source/filter/inc/xlview.hxx
index 824f9a783269..281edf900e46 100644
--- a/sc/source/filter/inc/xlview.hxx
+++ b/sc/source/filter/inc/xlview.hxx
@@ -21,7 +21,6 @@
#define INCLUDED_SC_SOURCE_FILTER_INC_XLVIEW_HXX
#include <tools/color.hxx>
-#include "ftools.hxx"
#include "xladdress.hxx"
#include <map>
#include <memory>
diff --git a/sc/source/filter/oox/excelfilter.cxx b/sc/source/filter/oox/excelfilter.cxx
index 2be4d12ce6be..e638d0df7c82 100644
--- a/sc/source/filter/oox/excelfilter.cxx
+++ b/sc/source/filter/oox/excelfilter.cxx
@@ -30,6 +30,7 @@
#include <themebuffer.hxx>
#include <workbookfragment.hxx>
#include <xestream.hxx>
+#include <xlstream.hxx>
#include <addressconverter.hxx>
#include <document.hxx>
diff --git a/sc/source/filter/xcl97/XclExpChangeTrack.cxx b/sc/source/filter/xcl97/XclExpChangeTrack.cxx
index feddc3cbee27..25dbfa9dcee5 100644
--- a/sc/source/filter/xcl97/XclExpChangeTrack.cxx
+++ b/sc/source/filter/xcl97/XclExpChangeTrack.cxx
@@ -22,6 +22,8 @@
#include <sot/storage.hxx>
#include <XclExpChangeTrack.hxx>
#include <xeformula.hxx>
+#include <xehelper.hxx>
+#include <xltools.hxx>
#include <formulacell.hxx>
#include <xcl97rec.hxx>
#include <document.hxx>
@@ -32,6 +34,7 @@
#include <oox/token/namespaces.hxx>
#include <oox/token/tokens.hxx>
#include <rtl/strbuf.hxx>
+#include <rtl/uuid.h>
#include <svl/sharedstring.hxx>
using namespace oox;
diff --git a/sc/source/filter/xcl97/xcl97esc.cxx b/sc/source/filter/xcl97/xcl97esc.cxx
index 83cd1746eb32..bf3ecc400ab5 100644
--- a/sc/source/filter/xcl97/xcl97esc.cxx
+++ b/sc/source/filter/xcl97/xcl97esc.cxx
@@ -41,6 +41,7 @@
#include <sal/log.hxx>
#include <sot/exchange.hxx>
+#include <sot/storage.hxx>
#include <xeescher.hxx>
#include <global.hxx>
diff --git a/sc/source/filter/xcl97/xcl97rec.cxx b/sc/source/filter/xcl97/xcl97rec.cxx
index b1e082154374..22e1dfac26be 100644
--- a/sc/source/filter/xcl97/xcl97rec.cxx
+++ b/sc/source/filter/xcl97/xcl97rec.cxx
@@ -46,7 +46,9 @@
#include <xecontent.hxx>
#include <xeescher.hxx>
#include <xestyle.hxx>
+#include <xehelper.hxx>
#include <xelink.hxx>
+#include <xlcontent.hxx>
#include <scitems.hxx>