summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--avmedia/source/viewer/mediawindow.cxx1
-rw-r--r--basctl/source/basicide/basobj3.cxx1
-rw-r--r--basctl/source/basicide/iderdll.cxx1
-rw-r--r--basctl/source/basicide/moduldl2.cxx1
-rw-r--r--cui/source/dialogs/hldocntp.cxx1
-rw-r--r--cui/source/options/optgdlg.cxx1
-rw-r--r--cui/source/options/optupdt.cxx1
-rw-r--r--cui/source/tabpages/autocdlg.cxx1
-rw-r--r--desktop/qa/desktop_lib/test_desktop_lib.cxx1
-rw-r--r--forms/source/component/ImageControl.cxx2
-rw-r--r--forms/source/richtext/richtextcontrol.cxx1
-rw-r--r--include/IwyuFilter_include.yaml3
-rw-r--r--include/sfx2/emojicontrol.hxx5
-rw-r--r--include/sfx2/emojipopup.hxx2
-rw-r--r--include/sfx2/emojiview.hxx2
-rw-r--r--include/sfx2/event.hxx5
-rw-r--r--include/sfx2/evntconf.hxx7
-rw-r--r--include/sfx2/fcontnr.hxx21
-rw-r--r--include/sfx2/filedlghelper.hxx18
-rw-r--r--include/sfx2/frame.hxx15
-rw-r--r--include/sfx2/frmdescr.hxx1
-rw-r--r--include/sfx2/frmhtml.hxx4
-rw-r--r--include/sfx2/frmhtmlw.hxx12
-rw-r--r--include/sfx2/ipclient.hxx8
-rw-r--r--include/sfx2/linkmgr.hxx1
-rw-r--r--include/sfx2/linksrc.hxx9
-rw-r--r--include/sfx2/lnkbase.hxx7
-rw-r--r--include/sfx2/lokcharthelper.hxx4
-rw-r--r--include/sfx2/lokhelper.hxx2
-rw-r--r--include/sfx2/mailmodelapi.hxx12
-rw-r--r--include/sfx2/mgetempl.hxx11
-rw-r--r--include/sfx2/mieclip.hxx6
-rw-r--r--include/sfx2/module.hxx13
-rw-r--r--include/sfx2/msg.hxx3
-rw-r--r--include/sfx2/msgpool.hxx3
-rw-r--r--sc/IwyuFilter_sc.yaml3
-rw-r--r--sc/inc/scmod.hxx1
-rw-r--r--sc/source/core/tool/ddelink.cxx1
-rw-r--r--sc/source/ui/dbgui/csvgrid.cxx2
-rw-r--r--sc/source/ui/docshell/docsh4.cxx1
-rw-r--r--sc/source/ui/docshell/servobj.cxx1
-rw-r--r--sc/source/ui/drawfunc/fuins2.cxx1
-rw-r--r--sc/source/ui/inc/anyrefdg.hxx1
-rw-r--r--sc/source/ui/unoobj/appluno.cxx1
-rw-r--r--sc/source/ui/unoobj/scdetect.cxx2
-rw-r--r--sc/source/ui/view/viewfun4.cxx1
-rw-r--r--sd/IwyuFilter_sd.yaml2
-rw-r--r--sd/inc/sdmod.hxx1
-rw-r--r--sd/source/core/drawdoc3.cxx1
-rw-r--r--sd/source/core/drawdoc4.cxx1
-rw-r--r--sd/source/ui/dlg/PhotoAlbumDialog.cxx1
-rw-r--r--sd/source/ui/dlg/vectdlg.cxx1
-rw-r--r--sd/source/ui/func/fuinsert.cxx1
-rw-r--r--sd/source/ui/view/drviews2.cxx1
-rw-r--r--sfx2/source/appl/appcfg.cxx1
-rw-r--r--sfx2/source/appl/appopen.cxx1
-rw-r--r--sfx2/source/appl/childwin.cxx1
-rw-r--r--sfx2/source/appl/impldde.hxx1
-rw-r--r--sfx2/source/appl/shutdownicon.cxx1
-rw-r--r--sfx2/source/bastyp/frmhtml.cxx1
-rw-r--r--sfx2/source/bastyp/frmhtmlw.cxx2
-rw-r--r--sfx2/source/config/evntconf.cxx1
-rw-r--r--sfx2/source/control/emojicontrol.cxx1
-rw-r--r--sfx2/source/control/sfxstatuslistener.cxx1
-rw-r--r--sfx2/source/control/unoctitm.cxx1
-rw-r--r--sfx2/source/dialog/filedlghelper.cxx1
-rw-r--r--sfx2/source/dialog/filedlgimpl.hxx1
-rw-r--r--sfx2/source/dialog/filtergrouping.cxx1
-rw-r--r--sfx2/source/dialog/partwnd.cxx1
-rw-r--r--sfx2/source/dialog/splitwin.cxx2
-rw-r--r--sfx2/source/doc/objcont.cxx1
-rw-r--r--sfx2/source/doc/sfxbasemodel.cxx1
-rw-r--r--sfx2/source/doc/templatedlg.cxx1
-rw-r--r--sfx2/source/inc/workwin.hxx1
-rw-r--r--sfx2/source/sidebar/SidebarToolBox.cxx1
-rw-r--r--sfx2/source/statbar/stbitem.cxx2
-rw-r--r--sfx2/source/toolbox/tbxitem.cxx1
-rw-r--r--sfx2/source/view/classificationcontroller.cxx1
-rw-r--r--sfx2/source/view/classificationhelper.cxx2
-rw-r--r--sfx2/source/view/ipclient.cxx1
-rw-r--r--sfx2/source/view/lokcharthelper.cxx1
-rw-r--r--sfx2/source/view/lokhelper.cxx1
-rw-r--r--sfx2/source/view/viewfrm.cxx1
-rw-r--r--starmath/IwyuFilter_starmath.yaml3
-rw-r--r--starmath/inc/smmod.hxx1
-rw-r--r--svx/source/form/filtnav.cxx2
-rw-r--r--svx/source/form/fmtextcontrolshell.cxx1
-rw-r--r--svx/source/form/fmvwimp.cxx1
-rw-r--r--svx/source/form/tabwin.cxx1
-rw-r--r--svx/source/gallery2/galctrl.cxx2
-rw-r--r--svx/source/sidebar/text/TextCharacterSpacingControl.cxx1
-rw-r--r--svx/source/stbctrls/pszctrl.cxx3
-rw-r--r--svx/source/stbctrls/xmlsecctrl.cxx2
-rw-r--r--svx/source/svdraw/svdograf.cxx1
-rw-r--r--svx/source/svdraw/svdoole2.cxx1
-rw-r--r--sw/inc/swmodule.hxx1
-rw-r--r--sw/qa/extras/uiwriter/uiwriter.cxx1
-rw-r--r--sw/source/core/doc/DocumentContentOperationsManager.cxx1
-rw-r--r--sw/source/core/doc/doclay.cxx1
-rw-r--r--sw/source/core/doc/swserv.cxx1
-rw-r--r--sw/source/core/docnode/section.cxx1
-rw-r--r--sw/source/core/docnode/swbaslnk.cxx1
-rw-r--r--sw/source/core/fields/ddefld.cxx1
-rw-r--r--sw/source/core/frmedt/fefly1.cxx1
-rw-r--r--sw/source/core/frmedt/feshview.cxx1
-rw-r--r--sw/source/core/ole/ndole.cxx1
-rw-r--r--sw/source/core/swg/SwXMLTextBlocks.cxx1
-rw-r--r--sw/source/core/text/EnhancedPDFExportHelper.cxx1
-rw-r--r--sw/source/filter/html/htmlplug.cxx2
-rw-r--r--sw/source/filter/html/wrthtml.cxx1
-rw-r--r--sw/source/filter/html/wrthtml.hxx1
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.cxx1
-rw-r--r--sw/source/filter/ww8/rtfattributeoutput.cxx1
-rw-r--r--sw/source/filter/xml/xmltexte.cxx1
-rw-r--r--sw/source/ui/chrdlg/chardlg.cxx1
-rw-r--r--sw/source/ui/dbui/mmresultdialogs.cxx1
-rw-r--r--sw/source/ui/dialog/macassgn.cxx1
-rw-r--r--sw/source/ui/misc/glossary.cxx2
-rw-r--r--sw/source/ui/vba/vbaapplication.cxx1
-rw-r--r--sw/source/uibase/app/docsh2.cxx1
-rw-r--r--sw/source/uibase/dbui/dbmgr.cxx1
-rw-r--r--sw/source/uibase/dochdl/gloshdl.cxx1
-rw-r--r--sw/source/uibase/sidebar/PageMarginControl.cxx1
-rw-r--r--sw/source/uibase/sidebar/PageSizeControl.cxx1
-rw-r--r--sw/source/uibase/utlui/bookctrl.cxx1
-rw-r--r--sw/source/uibase/utlui/glbltree.cxx1
-rw-r--r--sw/source/uibase/wrtsh/wrtsh1.cxx1
127 files changed, 190 insertions, 106 deletions
diff --git a/avmedia/source/viewer/mediawindow.cxx b/avmedia/source/viewer/mediawindow.cxx
index 4cc6d4e043b4..81b8d968a36e 100644
--- a/avmedia/source/viewer/mediawindow.cxx
+++ b/avmedia/source/viewer/mediawindow.cxx
@@ -23,6 +23,7 @@
#include <bitmaps.hlst>
#include <strings.hrc>
#include <tools/urlobj.hxx>
+#include <vcl/graph.hxx>
#include <vcl/svapp.hxx>
#include <vcl/weld.hxx>
#include <unotools/pathoptions.hxx>
diff --git a/basctl/source/basicide/basobj3.cxx b/basctl/source/basicide/basobj3.cxx
index f9b50882cff7..1d9500ce4dcb 100644
--- a/basctl/source/basicide/basobj3.cxx
+++ b/basctl/source/basicide/basobj3.cxx
@@ -32,6 +32,7 @@
#include <localizationmgr.hxx>
#include <dlged.hxx>
#include <com/sun/star/script/XLibraryContainerPassword.hpp>
+#include <sfx2/app.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/sfxsids.hrc>
#include <sfx2/request.hxx>
diff --git a/basctl/source/basicide/iderdll.cxx b/basctl/source/basicide/iderdll.cxx
index 4fa61b7456ae..8659031a719f 100644
--- a/basctl/source/basicide/iderdll.cxx
+++ b/basctl/source/basicide/iderdll.cxx
@@ -35,6 +35,7 @@
#include <com/sun/star/script/XLibraryContainerPassword.hpp>
#include <unotools/resmgr.hxx>
#include <vcl/settings.hxx>
+#include <sfx2/app.hxx>
namespace basctl
{
diff --git a/basctl/source/basicide/moduldl2.cxx b/basctl/source/basicide/moduldl2.cxx
index 728de23842fa..7494d288266b 100644
--- a/basctl/source/basicide/moduldl2.cxx
+++ b/basctl/source/basicide/moduldl2.cxx
@@ -27,6 +27,7 @@
#include <svx/passwd.hxx>
#include <ucbhelper/content.hxx>
#include <rtl/uri.hxx>
+#include <sfx2/app.hxx>
#include <sfx2/dinfdlg.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/filedlghelper.hxx>
diff --git a/cui/source/dialogs/hldocntp.cxx b/cui/source/dialogs/hldocntp.cxx
index def0a72ea767..39adc1b3d46b 100644
--- a/cui/source/dialogs/hldocntp.cxx
+++ b/cui/source/dialogs/hldocntp.cxx
@@ -21,6 +21,7 @@
#include <osl/file.hxx>
#include <sfx2/viewfrm.hxx>
#include <sfx2/docfac.hxx>
+#include <sfx2/docfilt.hxx>
#include <com/sun/star/awt/XTopWindow.hpp>
#include <com/sun/star/uno/Reference.h>
#include <com/sun/star/uno/Sequence.h>
diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx
index 38d020438273..6c31ddbcdc60 100644
--- a/cui/source/options/optgdlg.cxx
+++ b/cui/source/options/optgdlg.cxx
@@ -96,6 +96,7 @@
#include <svtools/apearcfg.hxx>
#include <svtools/optionsdrawinglayer.hxx>
#include <svtools/restartdialog.hxx>
+#include <svtools/imgdef.hxx>
#include <comphelper/solarmutex.hxx>
#include <config_vclplug.h>
diff --git a/cui/source/options/optupdt.cxx b/cui/source/options/optupdt.cxx
index 33b70f558718..63c6a2959189 100644
--- a/cui/source/options/optupdt.cxx
+++ b/cui/source/options/optupdt.cxx
@@ -37,6 +37,7 @@
#include <com/sun/star/setup/UpdateCheckConfig.hpp>
#include <com/sun/star/configuration/ReadWriteAccess.hpp>
#include <com/sun/star/beans/PropertyAttribute.hpp>
+#include <com/sun/star/beans/NamedValue.hpp>
#include <osl/file.hxx>
#include <osl/security.hxx>
#include <sal/log.hxx>
diff --git a/cui/source/tabpages/autocdlg.cxx b/cui/source/tabpages/autocdlg.cxx
index 678b29bc503f..0438cdadddfe 100644
--- a/cui/source/tabpages/autocdlg.cxx
+++ b/cui/source/tabpages/autocdlg.cxx
@@ -25,6 +25,7 @@
#include <sot/exchange.hxx>
#include <vcl/transfer.hxx>
#include <unotools/syslocale.hxx>
+#include <sfx2/app.hxx>
#include <sfx2/objsh.hxx>
#include <sfx2/viewsh.hxx>
#include <unotools/charclass.hxx>
diff --git a/desktop/qa/desktop_lib/test_desktop_lib.cxx b/desktop/qa/desktop_lib/test_desktop_lib.cxx
index 413b697be70a..9157580e8bb7 100644
--- a/desktop/qa/desktop_lib/test_desktop_lib.cxx
+++ b/desktop/qa/desktop_lib/test_desktop_lib.cxx
@@ -24,6 +24,7 @@
#include <vcl/scheduler.hxx>
#include <comphelper/processfactory.hxx>
#include <rtl/uri.hxx>
+#include <sfx2/app.hxx>
#include <sfx2/objsh.hxx>
#include <sfx2/lokhelper.hxx>
#include <test/unoapi_test.hxx>
diff --git a/forms/source/component/ImageControl.cxx b/forms/source/component/ImageControl.cxx
index 6bfb2d3b829f..37b2eda2cb07 100644
--- a/forms/source/component/ImageControl.cxx
+++ b/forms/source/component/ImageControl.cxx
@@ -47,12 +47,14 @@
#include <tools/stream.hxx>
#include <tools/debug.hxx>
#include <tools/diagnose_ex.h>
+#include <vcl/graph.hxx>
#include <vcl/svapp.hxx>
#include <vcl/window.hxx>
#include <unotools/streamhelper.hxx>
#include <comphelper/guarding.hxx>
#include <comphelper/property.hxx>
#include <comphelper/types.hxx>
+#include <cppuhelper/queryinterface.hxx>
#include <unotools/ucbstreamhelper.hxx>
#include <svl/urihelper.hxx>
diff --git a/forms/source/richtext/richtextcontrol.cxx b/forms/source/richtext/richtextcontrol.cxx
index 0d90d3541e60..c5f24075225a 100644
--- a/forms/source/richtext/richtextcontrol.cxx
+++ b/forms/source/richtext/richtextcontrol.cxx
@@ -38,6 +38,7 @@
#include <svl/itemset.hxx>
#include <svl/itempool.hxx>
#include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
namespace frm
{
diff --git a/include/IwyuFilter_include.yaml b/include/IwyuFilter_include.yaml
index 18363b93fbb3..a66056a04972 100644
--- a/include/IwyuFilter_include.yaml
+++ b/include/IwyuFilter_include.yaml
@@ -695,3 +695,6 @@ blacklist:
include/sfx2/DocumentMetadataAccess.hxx:
# base class has to be a complete type
- com/sun/star/rdf/XDocumentMetadataAccess.hpp
+ include/sfx2/mieclip.hxx:
+ # Needed for implicit dtor
+ - tools/stream.hxx
diff --git a/include/sfx2/emojicontrol.hxx b/include/sfx2/emojicontrol.hxx
index d759de4725b4..132fe247b774 100644
--- a/include/sfx2/emojicontrol.hxx
+++ b/include/sfx2/emojicontrol.hxx
@@ -12,14 +12,13 @@
#include <sal/config.h>
#include <sfx2/dllapi.h>
-#include <vcl/button.hxx>
#include <vcl/tabctrl.hxx>
-#include <vcl/tabpage.hxx>
#include <sfx2/tbxctrl.hxx>
-#include <com/sun/star/frame/XFrame.hpp>
#define TAB_FONT_SIZE 15
+namespace com::sun::star::frame { class XFrame; }
+
class EmojiView;
class ThumbnailViewItem;
enum class FILTER_CATEGORY;
diff --git a/include/sfx2/emojipopup.hxx b/include/sfx2/emojipopup.hxx
index 471df173e802..40d25ef57934 100644
--- a/include/sfx2/emojipopup.hxx
+++ b/include/sfx2/emojipopup.hxx
@@ -23,8 +23,6 @@
#include <sfx2/tbxctrl.hxx>
#include <sfx2/dllapi.h>
-#include <functional>
-
class SFX2_DLLPUBLIC EmojiPopup : public SfxToolBoxControl
{
public:
diff --git a/include/sfx2/emojiview.hxx b/include/sfx2/emojiview.hxx
index 6c311d740e0a..8a08e1d8c75d 100644
--- a/include/sfx2/emojiview.hxx
+++ b/include/sfx2/emojiview.hxx
@@ -18,8 +18,6 @@
#define ITEM_PADDING 5
#define ITEM_MAX_TEXT_LENGTH 10
-class EmojiViewItem;
-
enum class FILTER_CATEGORY
{
PEOPLE,
diff --git a/include/sfx2/event.hxx b/include/sfx2/event.hxx
index 8a797d3379e1..46208943b210 100644
--- a/include/sfx2/event.hxx
+++ b/include/sfx2/event.hxx
@@ -29,10 +29,11 @@
#include <rtl/ustring.hxx>
#include <com/sun/star/uno/Sequence.hxx>
-#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/frame/XController2.hpp>
#include <com/sun/star/view/PrintableState.hpp>
+namespace com::sun::star::beans { struct PropertyValue; }
+
/**
these values get stored in streams in a 16-bit value
*/
@@ -230,8 +231,6 @@ public:
{ return xViewController; }
};
-class Printer;
-
class SfxPrintingHint : public SfxViewEventHint
{
css::view::PrintableState const mnPrintableState;
diff --git a/include/sfx2/evntconf.hxx b/include/sfx2/evntconf.hxx
index 86769b324f95..efd330260f53 100644
--- a/include/sfx2/evntconf.hxx
+++ b/include/sfx2/evntconf.hxx
@@ -22,16 +22,13 @@
#include <sal/config.h>
#include <sfx2/dllapi.h>
#include <sal/types.h>
-#include <vcl/fixed.hxx>
-#include <vcl/button.hxx>
#include <sfx2/event.hxx>
-#include <sfx2/sfxsids.hrc>
-#include <svl/macitem.hxx>
+#include <svl/poolitem.hxx>
#include <memory>
#include <vector>
class SfxObjectShell;
-class SvxMacroTableDtor;
+class SvxMacro;
struct SFX2_DLLPUBLIC SfxEventName
{
diff --git a/include/sfx2/fcontnr.hxx b/include/sfx2/fcontnr.hxx
index 091599e82b9f..6d62f8cfa561 100644
--- a/include/sfx2/fcontnr.hxx
+++ b/include/sfx2/fcontnr.hxx
@@ -22,24 +22,22 @@
#include <sal/config.h>
#include <sfx2/dllapi.h>
#include <sal/types.h>
-#include <com/sun/star/uno/Sequence.hxx>
-#include <com/sun/star/beans/NamedValue.hpp>
-#include <com/sun/star/container/XNameAccess.hpp>
-#include <svl/poolitem.hxx>
-#include <vcl/window.hxx>
+#include <rtl/ustring.hxx>
+#include <tools/link.hxx>
+#include <comphelper/documentconstants.hxx>
+#include <sot/formats.hxx>
-#include <sfx2/docfilt.hxx>
-
-#include <tools/ref.hxx>
#include <memory>
-namespace vcl { class Window; }
+namespace com::sun::star::beans { struct NamedValue; }
+namespace com::sun::star::container { class XNameAccess; }
+namespace com::sun::star::uno { template <typename > class Sequence; }
+namespace com::sun::star::uno { template <typename > class Reference; }
+
class ErrCode;
class SfxFilter;
-class SfxObjectFactory;
class SfxMedium;
class SfxFilterContainer_Impl;
-class SfxFrame;
class SFX2_DLLPUBLIC SfxFilterContainer
@@ -97,7 +95,6 @@ public:
std::shared_ptr<const SfxFilter> GetAnyFilter( SfxFilterFlags nMustg=SfxFilterFlags::NONE, SfxFilterFlags nDont=SFX_FILTER_NOTINSTALLED ) const;
};
-class SfxFilterContainer_Impl;
class SFX2_DLLPUBLIC SfxFilterMatcherIter
{
diff --git a/include/sfx2/filedlghelper.hxx b/include/sfx2/filedlghelper.hxx
index 2e2104eeb7fc..42d6b53c0cfb 100644
--- a/include/sfx2/filedlghelper.hxx
+++ b/include/sfx2/filedlghelper.hxx
@@ -22,18 +22,16 @@
#include <sal/config.h>
#include <sfx2/dllapi.h>
#include <sal/types.h>
-#include <com/sun/star/awt/XWindow.hpp>
-#include <com/sun/star/uno/Reference.hxx>
#include <com/sun/star/uno/Sequence.hxx>
#include <rtl/ref.hxx>
#include <rtl/ustring.hxx>
+#include <comphelper/documentconstants.hxx>
+#include <tools/link.hxx>
#include <vcl/errcode.hxx>
-#include <vcl/graph.hxx>
-#include <vcl/weld.hxx>
-#include <sfx2/sfxuno.hxx>
-#include <sfx2/docfilt.hxx>
+#include <o3tl/typed_flags_set.hxx>
#include <memory>
+#include <vector>
namespace com
{
@@ -46,7 +44,6 @@ namespace com
namespace dialogs
{
class XFilePicker3;
- class XFilePickerListener;
struct FilePickerEvent;
struct DialogClosedEvent;
}
@@ -55,8 +52,13 @@ namespace com
}
}
+namespace com::sun::star::awt { class XWindow; }
+namespace com::sun::star::uno { template <typename > class Reference; }
+namespace weld { class Window; }
+
+class Graphic;
+class SfxFilter;
class SfxItemSet;
-namespace vcl { class Window; }
enum class FileDialogFlags {
NONE = 0x00,
diff --git a/include/sfx2/frame.hxx b/include/sfx2/frame.hxx
index 9a3a96a91520..4878bcd460d7 100644
--- a/include/sfx2/frame.hxx
+++ b/include/sfx2/frame.hxx
@@ -39,20 +39,10 @@ namespace com
{
namespace star
{
- namespace awt
- {
- class XWindow;
- }
namespace frame
{
class XFrame;
- class XFrameLoader;
class XController;
- class XDispatchProviderInterceptor;
- }
- namespace beans
- {
- struct PropertyValue;
}
}
}
@@ -61,16 +51,11 @@ namespace com
class SvBorder;
class SfxWorkWindow;
namespace vcl { class Window; }
-class SfxFrame;
class SfxFrame_Impl;
class SfxObjectShell;
-class SfxObjectFactory;
class SfxViewFrame;
class SfxFrameDescriptor;
-class SfxFrameSetDescriptor;
-class SfxDispatcher;
namespace tools { class Rectangle; }
-class SfxRequest;
class SystemWindow;
typedef ::std::vector<OUString> TargetList;
diff --git a/include/sfx2/frmdescr.hxx b/include/sfx2/frmdescr.hxx
index 99e26280bebb..196a2ccc9356 100644
--- a/include/sfx2/frmdescr.hxx
+++ b/include/sfx2/frmdescr.hxx
@@ -23,7 +23,6 @@
#include <rtl/ustring.hxx>
#include <sal/config.h>
#include <sfx2/dllapi.h>
-#include <sfx2/sfxsids.hrc>
#include <tools/gen.hxx>
#include <tools/urlobj.hxx>
diff --git a/include/sfx2/frmhtml.hxx b/include/sfx2/frmhtml.hxx
index 4ca4a30f04c5..cb1fb6a2335c 100644
--- a/include/sfx2/frmhtml.hxx
+++ b/include/sfx2/frmhtml.hxx
@@ -23,11 +23,9 @@
#include <sal/config.h>
#include <sfx2/dllapi.h>
-#include <sfx2/frmdescr.hxx>
#include <sfx2/sfxhtml.hxx>
-class SfxFrameHTMLParser;
-class SfxMedium;
+class SfxFrameDescriptor;
class SFX2_DLLPUBLIC SfxFrameHTMLParser : public SfxHTMLParser
{
diff --git a/include/sfx2/frmhtmlw.hxx b/include/sfx2/frmhtmlw.hxx
index da44dc92968a..4b827a7c97ad 100644
--- a/include/sfx2/frmhtmlw.hxx
+++ b/include/sfx2/frmhtmlw.hxx
@@ -22,15 +22,8 @@
#include <sal/config.h>
#include <sfx2/dllapi.h>
#include <sal/types.h>
+#include <rtl/ustring.hxx>
-#include <sfx2/frmdescr.hxx>
-#include <com/sun/star/uno/Reference.h>
-#include <com/sun/star/beans/XPropertySet.hpp>
-#include <svtools/parhtml.hxx>
-#include <svtools/htmlout.hxx>
-#include <svtools/htmlkywd.hxx>
-
-class SfxFrame;
class SvStream;
namespace com { namespace sun { namespace star {
@@ -39,6 +32,9 @@ namespace com { namespace sun { namespace star {
}
} } }
+namespace com::sun::star::beans { class XPropertySet; }
+namespace com::sun::star::uno { template <class interface_type> class Reference; }
+
class SFX2_DLLPUBLIC SfxFrameHTMLWriter
{
SAL_DLLPRIVATE static void OutMeta( SvStream& rStrm,
diff --git a/include/sfx2/ipclient.hxx b/include/sfx2/ipclient.hxx
index 97aaf8db6f8d..eb4c2c825651 100644
--- a/include/sfx2/ipclient.hxx
+++ b/include/sfx2/ipclient.hxx
@@ -22,15 +22,15 @@
#include <sal/config.h>
#include <sfx2/dllapi.h>
#include <sal/types.h>
-#include <com/sun/star/uno/Reference.h>
-#include <com/sun/star/embed/Aspects.hpp>
-#include <com/sun/star/embed/XEmbeddedObject.hpp>
#include <rtl/ref.hxx>
#include <tools/gen.hxx>
-#include <sfx2/objsh.hxx>
#include <vcl/window.hxx>
+#include <vcl/errcode.hxx>
+
+namespace com::sun::star::embed { class XEmbeddedObject; }
+namespace com::sun::star::uno { template <typename > class Reference; }
class SfxInPlaceClient_Impl;
class SfxViewShell;
diff --git a/include/sfx2/linkmgr.hxx b/include/sfx2/linkmgr.hxx
index 128dd47e4462..2646d2d61cdd 100644
--- a/include/sfx2/linkmgr.hxx
+++ b/include/sfx2/linkmgr.hxx
@@ -29,7 +29,6 @@
class SfxObjectShell;
class Graphic;
-class Size;
namespace com { namespace sun { namespace star {
namespace lang {
diff --git a/include/sfx2/linksrc.hxx b/include/sfx2/linksrc.hxx
index b0323cb11696..fe6706544b20 100644
--- a/include/sfx2/linksrc.hxx
+++ b/include/sfx2/linksrc.hxx
@@ -22,9 +22,8 @@
#include <sal/config.h>
#include <sfx2/dllapi.h>
-#include <tools/link.hxx>
#include <tools/ref.hxx>
-#include <com/sun/star/io/XInputStream.hpp>
+#include <com/sun/star/uno/Reference.hxx>
#include <memory>
namespace com { namespace sun { namespace star { namespace uno
@@ -32,9 +31,9 @@ namespace com { namespace sun { namespace star { namespace uno
class Any;
}}}}
namespace weld { class Window; }
-namespace rtl {
- class OUString;
-}
+
+template <typename Arg, typename Ret> class Link;
+namespace com::sun::star::io { class XInputStream; }
#ifndef ADVISEMODE_NODATA
// Must be the same value as Ole2 ADVF_*
diff --git a/include/sfx2/lnkbase.hxx b/include/sfx2/lnkbase.hxx
index 09f14b3a1723..19ade2d601b0 100644
--- a/include/sfx2/lnkbase.hxx
+++ b/include/sfx2/lnkbase.hxx
@@ -19,13 +19,13 @@
#ifndef INCLUDED_SFX2_LNKBASE_HXX
#define INCLUDED_SFX2_LNKBASE_HXX
-#include <com/sun/star/io/XInputStream.hpp>
#include <rtl/ustring.hxx>
#include <sal/config.h>
#include <sfx2/dllapi.h>
#include <sfx2/linksrc.hxx>
-#include <sot/exchange.hxx>
+#include <sot/formats.hxx>
#include <tools/ref.hxx>
+#include <tools/link.hxx>
#include <memory>
namespace com { namespace sun { namespace star { namespace uno
@@ -33,6 +33,8 @@ namespace com { namespace sun { namespace star { namespace uno
class Any;
}}}}
+namespace com::sun::star::io { class XInputStream; }
+
enum class SfxLinkUpdateMode {
NONE = 0,
// Ole2 compatible and persistent
@@ -45,7 +47,6 @@ namespace sfx2
struct ImplBaseLinkData;
class LinkManager;
-class SvLinkSource;
class FileDialogHelper;
#ifndef OBJECT_DDE_EXTERN
diff --git a/include/sfx2/lokcharthelper.hxx b/include/sfx2/lokcharthelper.hxx
index 92c57217f621..85b0baf66e1a 100644
--- a/include/sfx2/lokcharthelper.hxx
+++ b/include/sfx2/lokcharthelper.hxx
@@ -14,8 +14,8 @@
#include <tools/gen.hxx>
#include <vcl/window.hxx>
-#include <com/sun/star/frame/XController.hpp>
-#include <com/sun/star/frame/XDispatch.hpp>
+namespace com::sun::star::frame { class XController; }
+namespace com::sun::star::frame { class XDispatch; }
class SfxViewShell;
class VirtualDevice;
diff --git a/include/sfx2/lokhelper.hxx b/include/sfx2/lokhelper.hxx
index 62c024508de1..e874ee256412 100644
--- a/include/sfx2/lokhelper.hxx
+++ b/include/sfx2/lokhelper.hxx
@@ -16,8 +16,6 @@
#include <cstddef>
#include <rtl/string.hxx>
-class SfxViewShell;
-
class SFX2_DLLPUBLIC SfxLokHelper
{
public:
diff --git a/include/sfx2/mailmodelapi.hxx b/include/sfx2/mailmodelapi.hxx
index e28b148a9523..8ee361cd7908 100644
--- a/include/sfx2/mailmodelapi.hxx
+++ b/include/sfx2/mailmodelapi.hxx
@@ -19,15 +19,19 @@
#ifndef INCLUDED_SFX2_MAILMODELAPI_HXX
#define INCLUDED_SFX2_MAILMODELAPI_HXX
-#include <com/sun/star/frame/XFrame.hpp>
-#include <com/sun/star/frame/XModel.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/uno/Reference.hxx>
#include <rtl/ustring.hxx>
#include <sfx2/dllapi.h>
-#include <tools/link.hxx>
#include <vector>
#include <memory>
+namespace com::sun::star::beans { struct PropertyValue; }
+namespace com::sun::star::frame { class XFrame; }
+namespace com::sun::star::frame { class XModel; }
+namespace com::sun::star::lang { class XMultiServiceFactory; }
+namespace com::sun::star::uno { class XInterface; }
+namespace com::sun::star::uno { template <class E> class Sequence; }
+
// class AddressList_Impl ------------------------------------------------
typedef ::std::vector< OUString > AddressList_Impl;
diff --git a/include/sfx2/mgetempl.hxx b/include/sfx2/mgetempl.hxx
index 8433237da033..86764728d8de 100644
--- a/include/sfx2/mgetempl.hxx
+++ b/include/sfx2/mgetempl.hxx
@@ -21,17 +21,20 @@
#include <sfx2/styfitem.hxx>
#include <sfx2/tabdlg.hxx>
-#include <vcl/weld.hxx>
#include <memory>
+namespace weld { class Button; }
+namespace weld { class CheckButton; }
+namespace weld { class ComboBox; }
+namespace weld { class Entry; }
+namespace weld { class Label; }
+namespace weld { class Widget; }
+
/* expected:
SID_TEMPLATE_NAME : In: StringItem, Name of Template
SID_TEMPLATE_FAMILY : In: Family of Template
*/
-class SfxStyleFamilyItem;
-class SfxStyleSheetBase;
-
class SfxManageStyleSheetPage final : public SfxTabPage
{
SfxStyleSheetBase *pStyle;
diff --git a/include/sfx2/mieclip.hxx b/include/sfx2/mieclip.hxx
index 8fa29baa4ae6..103f93a3f68e 100644
--- a/include/sfx2/mieclip.hxx
+++ b/include/sfx2/mieclip.hxx
@@ -23,12 +23,8 @@
#include <memory>
#include <rtl/ustring.hxx>
#include <sal/config.h>
-#include <sal/types.h>
#include <sfx2/dllapi.h>
-
-class SvStream;
-class SotDataObject;
-class SvData;
+#include <tools/stream.hxx>
class SFX2_DLLPUBLIC MSE40HTMLClipFormatObj
{
diff --git a/include/sfx2/module.hxx b/include/sfx2/module.hxx
index 5709e4a90fbb..c4ad3d89aebf 100644
--- a/include/sfx2/module.hxx
+++ b/include/sfx2/module.hxx
@@ -21,29 +21,24 @@
#include <memory>
#include <sal/config.h>
-#include <sfx2/app.hxx>
#include <sfx2/dllapi.h>
#include <sfx2/shell.hxx>
#include <sfx2/styfitem.hxx>
-#include <sfx2/tabdlg.hxx>
-#include <svtools/imgdef.hxx>
+#include <vcl/tabpage.hxx>
#include <sal/types.h>
#include <tools/fldunit.hxx>
#include <com/sun/star/uno/Reference.hxx>
-class SfxBindings;
class SfxObjectFactory;
-class ModalDialog;
-class SfxObjectFactory;
-class SfxModule;
class SfxModule_Impl;
class SfxSlotPool;
-struct SfxChildWinContextFactory;
struct SfxChildWinFactory;
struct SfxStbCtrlFactory;
struct SfxTbxCtrlFactory;
class SfxTabPage;
-namespace vcl { class Window; }
+class SfxTbxCtrlFactArr_Impl;
+class SfxStbCtrlFactArr_Impl;
+class SfxChildWinFactArr_Impl;
namespace com { namespace sun { namespace star { namespace frame {
class XFrame;
diff --git a/include/sfx2/msg.hxx b/include/sfx2/msg.hxx
index 6634584558b6..7f9eb2de916b 100644
--- a/include/sfx2/msg.hxx
+++ b/include/sfx2/msg.hxx
@@ -31,9 +31,6 @@
#include <climits>
class SfxItemPool;
-class SfxItemSet;
-class SfxPoolItem;
-class SfxRequest;
enum class SfxSlotMode {
NONE = 0x0000L, // default
diff --git a/include/sfx2/msgpool.hxx b/include/sfx2/msgpool.hxx
index ea5650506414..357d86d67bed 100644
--- a/include/sfx2/msgpool.hxx
+++ b/include/sfx2/msgpool.hxx
@@ -23,13 +23,12 @@
#include <sal/config.h>
#include <sal/types.h>
#include <sfx2/dllapi.h>
-#include <sfx2/msg.hxx>
#include <sfx2/groupid.hxx>
-#include <memory>
#include <vector>
class SfxInterface;
class SfxSlot;
+class SfxViewFrame;
class SFX2_DLLPUBLIC SfxSlotPool
{
diff --git a/sc/IwyuFilter_sc.yaml b/sc/IwyuFilter_sc.yaml
index fc77866f682d..43bbdc561c04 100644
--- a/sc/IwyuFilter_sc.yaml
+++ b/sc/IwyuFilter_sc.yaml
@@ -298,6 +298,9 @@ blacklist:
sc/inc/scmatrix.hxx:
# base class has to be a complete type
- svl/sharedstringpool.hxx
+ sc/inc/scmod.hxx:
+ # Needed for macro define
+ - sfx2/app.hxx
sc/inc/shapeuno.hxx:
# base class has to be a complete type
- com/sun/star/beans/XPropertySet.hpp
diff --git a/sc/inc/scmod.hxx b/sc/inc/scmod.hxx
index 3a389ecc2d45..883da0ba9be6 100644
--- a/sc/inc/scmod.hxx
+++ b/sc/inc/scmod.hxx
@@ -24,6 +24,7 @@
#include <vcl/timer.hxx>
#include <vcl/idle.hxx>
#include <svl/lstner.hxx>
+#include <sfx2/app.hxx>
#include <sfx2/module.hxx>
#include "global.hxx"
#include "shellids.hxx"
diff --git a/sc/source/core/tool/ddelink.cxx b/sc/source/core/tool/ddelink.cxx
index 06bc7c2b9700..8dec14385d80 100644
--- a/sc/source/core/tool/ddelink.cxx
+++ b/sc/source/core/tool/ddelink.cxx
@@ -20,6 +20,7 @@
#include <comphelper/fileformat.h>
#include <comphelper/string.hxx>
#include <osl/thread.h>
+#include <sot/exchange.hxx>
#include <sfx2/linkmgr.hxx>
#include <sfx2/bindings.hxx>
#include <svl/zforlist.hxx>
diff --git a/sc/source/ui/dbgui/csvgrid.cxx b/sc/source/ui/dbgui/csvgrid.cxx
index 8a3a9da66133..bc1979a28084 100644
--- a/sc/source/ui/dbgui/csvgrid.cxx
+++ b/sc/source/ui/dbgui/csvgrid.cxx
@@ -32,6 +32,8 @@
// *** edit engine ***
#include <editeng/eeitem.hxx>
+#include <vcl/commandevent.hxx>
+#include <vcl/event.hxx>
#include <vcl/settings.hxx>
#include <vcl/virdev.hxx>
diff --git a/sc/source/ui/docshell/docsh4.cxx b/sc/source/ui/docshell/docsh4.cxx
index d75ef8138a10..3f03271240cd 100644
--- a/sc/source/ui/docshell/docsh4.cxx
+++ b/sc/source/ui/docshell/docsh4.cxx
@@ -31,6 +31,7 @@ using namespace ::com::sun::star;
#include <sfx2/infobar.hxx>
#include <sfx2/objface.hxx>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <svtools/ehdl.hxx>
#include <svtools/langtab.hxx>
#include <basic/sbxcore.hxx>
diff --git a/sc/source/ui/docshell/servobj.cxx b/sc/source/ui/docshell/servobj.cxx
index d0df8fe42348..7c93a4f3ab18 100644
--- a/sc/source/ui/docshell/servobj.cxx
+++ b/sc/source/ui/docshell/servobj.cxx
@@ -17,6 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <sot/exchange.hxx>
#include <sot/formats.hxx>
#include <sfx2/app.hxx>
#include <sfx2/linkmgr.hxx>
diff --git a/sc/source/ui/drawfunc/fuins2.cxx b/sc/source/ui/drawfunc/fuins2.cxx
index 6593623a10d8..6f1771e9b19b 100644
--- a/sc/source/ui/drawfunc/fuins2.cxx
+++ b/sc/source/ui/drawfunc/fuins2.cxx
@@ -36,6 +36,7 @@
#include <svx/svdpage.hxx>
#include <svx/svdundo.hxx>
#include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
#include <scmod.hxx>
#include <sal/log.hxx>
diff --git a/sc/source/ui/inc/anyrefdg.hxx b/sc/source/ui/inc/anyrefdg.hxx
index 33fd056cc4ae..069bc2650ee5 100644
--- a/sc/source/ui/inc/anyrefdg.hxx
+++ b/sc/source/ui/inc/anyrefdg.hxx
@@ -23,6 +23,7 @@
#include <sfx2/basedlgs.hxx>
#include <address.hxx>
#include <formula/funcutl.hxx>
+#include <vcl/accel.hxx>
#include "IAnyRefDialog.hxx"
#include <scmod.hxx>
diff --git a/sc/source/ui/unoobj/appluno.cxx b/sc/source/ui/unoobj/appluno.cxx
index febd4f2fcadd..c7f20cf96eb4 100644
--- a/sc/source/ui/unoobj/appluno.cxx
+++ b/sc/source/ui/unoobj/appluno.cxx
@@ -23,6 +23,7 @@
#include <cppuhelper/factory.hxx>
#include <formula/funcvarargs.h>
+#include <vcl/svapp.hxx>
#include <sfx2/app.hxx>
#include <sfx2/sfxmodelfactory.hxx>
#include <afmtuno.hxx>
diff --git a/sc/source/ui/unoobj/scdetect.cxx b/sc/source/ui/unoobj/scdetect.cxx
index fe00d7a59975..272ddc950275 100644
--- a/sc/source/ui/unoobj/scdetect.cxx
+++ b/sc/source/ui/unoobj/scdetect.cxx
@@ -29,7 +29,9 @@
#include <com/sun/star/io/XInputStream.hpp>
#include <unotools/mediadescriptor.hxx>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/fcontnr.hxx>
+#include <tools/solar.h>
using namespace ::com::sun::star;
using utl::MediaDescriptor;
diff --git a/sc/source/ui/view/viewfun4.cxx b/sc/source/ui/view/viewfun4.cxx
index 06634e895fe8..db36cb004402 100644
--- a/sc/source/ui/view/viewfun4.cxx
+++ b/sc/source/ui/view/viewfun4.cxx
@@ -34,6 +34,7 @@
#include <sfx2/bindings.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/fcontnr.hxx>
#include <svtools/langtab.hxx>
#include <vcl/graphicfilter.hxx>
diff --git a/sd/IwyuFilter_sd.yaml b/sd/IwyuFilter_sd.yaml
index b1c320db4a4c..a2dad7346275 100644
--- a/sd/IwyuFilter_sd.yaml
+++ b/sd/IwyuFilter_sd.yaml
@@ -28,6 +28,8 @@ blacklist:
# base class has to be a complete type
- com/sun/star/beans/XPropertySetInfo.hpp
- sot/storage.hxx
+ # Needed for define
+ - sfx2/app.hxx
sd/inc/sdpage.hxx:
# base class has to be a complete type
- com/sun/star/drawing/XDrawPage.hpp
diff --git a/sd/inc/sdmod.hxx b/sd/inc/sdmod.hxx
index 6c5c2b558a1a..65d9cdedf4e7 100644
--- a/sd/inc/sdmod.hxx
+++ b/sd/inc/sdmod.hxx
@@ -27,6 +27,7 @@
#include "sddllapi.h"
#include <svl/lstner.hxx>
#include <com/sun/star/beans/XPropertySetInfo.hpp>
+#include <sfx2/app.hxx>
#include <sfx2/module.hxx>
#include <sal/types.h>
#include <vcl/virdev.hxx>
diff --git a/sd/source/core/drawdoc3.cxx b/sd/source/core/drawdoc3.cxx
index d2112117d385..8f9f335bb837 100644
--- a/sd/source/core/drawdoc3.cxx
+++ b/sd/source/core/drawdoc3.cxx
@@ -21,6 +21,7 @@
#include <memory>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/app.hxx>
#include <svl/itemset.hxx>
diff --git a/sd/source/core/drawdoc4.cxx b/sd/source/core/drawdoc4.cxx
index f5fba2e58b1d..1018cf763f96 100644
--- a/sd/source/core/drawdoc4.cxx
+++ b/sd/source/core/drawdoc4.cxx
@@ -30,6 +30,7 @@
#include <DrawDocShell.hxx>
#include <editeng/eeitem.hxx>
+#include <vcl/idle.hxx>
#include <vcl/settings.hxx>
#include <vcl/svapp.hxx>
diff --git a/sd/source/ui/dlg/PhotoAlbumDialog.cxx b/sd/source/ui/dlg/PhotoAlbumDialog.cxx
index 8c8f33407416..186c407e0095 100644
--- a/sd/source/ui/dlg/PhotoAlbumDialog.cxx
+++ b/sd/source/ui/dlg/PhotoAlbumDialog.cxx
@@ -13,6 +13,7 @@
#include <com/sun/star/ui/dialogs/TemplateDescription.hpp>
#include <com/sun/star/graphic/GraphicProvider.hpp>
#include <com/sun/star/drawing/XDrawPagesSupplier.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <sfx2/filedlghelper.hxx>
#include <tools/urlobj.hxx>
diff --git a/sd/source/ui/dlg/vectdlg.cxx b/sd/source/ui/dlg/vectdlg.cxx
index bcb12f0d807f..c48b64172f70 100644
--- a/sd/source/ui/dlg/vectdlg.cxx
+++ b/sd/source/ui/dlg/vectdlg.cxx
@@ -21,6 +21,7 @@
#include <vcl/bitmapaccess.hxx>
#include <vcl/metaact.hxx>
#include <vcl/BitmapSimpleColorQuantizationFilter.hxx>
+#include <vcl/svapp.hxx>
#include <DrawDocShell.hxx>
#include <sdmod.hxx>
diff --git a/sd/source/ui/func/fuinsert.cxx b/sd/source/ui/func/fuinsert.cxx
index ffe73879d9c9..0553423b5eba 100644
--- a/sd/source/ui/func/fuinsert.cxx
+++ b/sd/source/ui/func/fuinsert.cxx
@@ -37,6 +37,7 @@
#include <svl/urihelper.hxx>
#include <sfx2/docfile.hxx>
#include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
#include <sfx2/filedlghelper.hxx>
#include <svtools/insdlg.hxx>
#include <sfx2/request.hxx>
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
index 58297a8bc942..6cde6563e7f0 100644
--- a/sd/source/ui/view/drviews2.cxx
+++ b/sd/source/ui/view/drviews2.cxx
@@ -51,6 +51,7 @@
#include <sfx2/dispatch.hxx>
#include <sfx2/docfile.hxx>
#include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
#include <sfx2/request.hxx>
#include <sfx2/viewfrm.hxx>
#include <sfx2/zoomitem.hxx>
diff --git a/sfx2/source/appl/appcfg.cxx b/sfx2/source/appl/appcfg.cxx
index 5abd5594baeb..5ad63a9869f4 100644
--- a/sfx2/source/appl/appcfg.cxx
+++ b/sfx2/source/appl/appcfg.cxx
@@ -48,6 +48,7 @@
#include <unotools/securityoptions.hxx>
#include <unotools/pathoptions.hxx>
#include <svtools/miscopt.hxx>
+#include <svtools/imgdef.hxx>
#include <vcl/toolbox.hxx>
#include <rtl/strbuf.hxx>
#include <rtl/ustrbuf.hxx>
diff --git a/sfx2/source/appl/appopen.cxx b/sfx2/source/appl/appopen.cxx
index c52764404809..4a655f940d4c 100644
--- a/sfx2/source/appl/appopen.cxx
+++ b/sfx2/source/appl/appopen.cxx
@@ -70,6 +70,7 @@
#include <sfx2/bindings.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/fcontnr.hxx>
#include <sfx2/new.hxx>
#include <sfx2/objitem.hxx>
diff --git a/sfx2/source/appl/childwin.cxx b/sfx2/source/appl/childwin.cxx
index 6a02b5bacab6..4dc55e2a126d 100644
--- a/sfx2/source/appl/childwin.cxx
+++ b/sfx2/source/appl/childwin.cxx
@@ -28,6 +28,7 @@
#include <cppuhelper/implbase.hxx>
#include <sal/log.hxx>
+#include <vcl/svapp.hxx>
#include <sfx2/childwin.hxx>
#include <sfx2/app.hxx>
#include <sfx2/bindings.hxx>
diff --git a/sfx2/source/appl/impldde.hxx b/sfx2/source/appl/impldde.hxx
index 68bb0cd113d2..ee2f2ecb9238 100644
--- a/sfx2/source/appl/impldde.hxx
+++ b/sfx2/source/appl/impldde.hxx
@@ -21,6 +21,7 @@
#include <rtl/ustring.hxx>
#include <sfx2/linksrc.hxx>
+#include <tools/link.hxx>
class DdeConnection;
class DdeData;
diff --git a/sfx2/source/appl/shutdownicon.cxx b/sfx2/source/appl/shutdownicon.cxx
index f9c243b34a6f..b0e8792d8b37 100644
--- a/sfx2/source/appl/shutdownicon.cxx
+++ b/sfx2/source/appl/shutdownicon.cxx
@@ -49,6 +49,7 @@
#include <com/sun/star/document/MacroExecMode.hpp>
#include <com/sun/star/document/UpdateDocMode.hpp>
#include <sfx2/filedlghelper.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/fcontnr.hxx>
#include <comphelper/processfactory.hxx>
#include <cppuhelper/implbase.hxx>
diff --git a/sfx2/source/bastyp/frmhtml.cxx b/sfx2/source/bastyp/frmhtml.cxx
index 5bcf59dfb167..5ff72824c7a8 100644
--- a/sfx2/source/bastyp/frmhtml.cxx
+++ b/sfx2/source/bastyp/frmhtml.cxx
@@ -21,6 +21,7 @@
#include <svtools/htmltokn.h>
#include <svtools/asynclink.hxx>
+#include <sfx2/frmdescr.hxx>
#include <sfx2/frmhtml.hxx>
#include <sfx2/docfile.hxx>
#include <sfx2/viewfrm.hxx>
diff --git a/sfx2/source/bastyp/frmhtmlw.cxx b/sfx2/source/bastyp/frmhtmlw.cxx
index f5ba6bcf4b50..a318dc875f0f 100644
--- a/sfx2/source/bastyp/frmhtmlw.cxx
+++ b/sfx2/source/bastyp/frmhtmlw.cxx
@@ -28,7 +28,9 @@
#include <tools/stream.hxx>
#include <tools/debug.hxx>
#include <unotools/resmgr.hxx>
+#include <svtools/htmlout.hxx>
+#include <sfx2/frmdescr.hxx>
#include <sfx2/frmhtmlw.hxx>
#include <sfx2/evntconf.hxx>
#include <sfx2/frame.hxx>
diff --git a/sfx2/source/config/evntconf.cxx b/sfx2/source/config/evntconf.cxx
index 1e664d6371e3..fbcbe656dec1 100644
--- a/sfx2/source/config/evntconf.cxx
+++ b/sfx2/source/config/evntconf.cxx
@@ -32,6 +32,7 @@
#include <com/sun/star/uno/Any.hxx>
#include <comphelper/processfactory.hxx>
#include <sfx2/evntconf.hxx>
+#include <svl/macitem.hxx>
#include <sfx2/docfile.hxx>
#include <sfx2/app.hxx>
diff --git a/sfx2/source/control/emojicontrol.cxx b/sfx2/source/control/emojicontrol.cxx
index 12b640c191fe..775ee77b3a75 100644
--- a/sfx2/source/control/emojicontrol.cxx
+++ b/sfx2/source/control/emojicontrol.cxx
@@ -20,6 +20,7 @@
#include <sfx2/emojiview.hxx>
#include <sfx2/emojiviewitem.hxx>
#include <sfx2/emojicontrol.hxx>
+#include <vcl/tabpage.hxx>
#include <comphelper/propertysequence.hxx>
#include <comphelper/dispatchcommand.hxx>
#include <officecfg/Office/Common.hxx>
diff --git a/sfx2/source/control/sfxstatuslistener.cxx b/sfx2/source/control/sfxstatuslistener.cxx
index 9323def48af9..cdb943f24d34 100644
--- a/sfx2/source/control/sfxstatuslistener.cxx
+++ b/sfx2/source/control/sfxstatuslistener.cxx
@@ -39,6 +39,7 @@
#include <sfx2/dispatch.hxx>
#include <sfx2/unoctitm.hxx>
#include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
using namespace ::cppu;
using namespace ::com::sun::star::uno;
diff --git a/sfx2/source/control/unoctitm.cxx b/sfx2/source/control/unoctitm.cxx
index 4a18c9fc587e..928616f99e13 100644
--- a/sfx2/source/control/unoctitm.cxx
+++ b/sfx2/source/control/unoctitm.cxx
@@ -60,6 +60,7 @@
#include <sfx2/request.hxx>
#include <statcach.hxx>
#include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
#include <sfx2/objsh.hxx>
#include <sfx2/viewsh.hxx>
#include <osl/file.hxx>
diff --git a/sfx2/source/dialog/filedlghelper.cxx b/sfx2/source/dialog/filedlghelper.cxx
index 01a4ccf90ac0..6c30efc09bdb 100644
--- a/sfx2/source/dialog/filedlghelper.cxx
+++ b/sfx2/source/dialog/filedlghelper.cxx
@@ -83,6 +83,7 @@
#include <sfx2/frame.hxx>
#include <sfx2/docfile.hxx>
#include <sfx2/docfac.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/objsh.hxx>
#include <openflag.hxx>
#include <sfx2/passwd.hxx>
diff --git a/sfx2/source/dialog/filedlgimpl.hxx b/sfx2/source/dialog/filedlgimpl.hxx
index b3de82cbe6a5..cdc8189692fb 100644
--- a/sfx2/source/dialog/filedlgimpl.hxx
+++ b/sfx2/source/dialog/filedlgimpl.hxx
@@ -34,6 +34,7 @@
class SfxFilterMatcher;
class GraphicFilter;
class FileDialogHelper;
+struct ImplSVEvent;
namespace sfx2
{
diff --git a/sfx2/source/dialog/filtergrouping.cxx b/sfx2/source/dialog/filtergrouping.cxx
index 96f16e64fccd..5a5660f7e550 100644
--- a/sfx2/source/dialog/filtergrouping.cxx
+++ b/sfx2/source/dialog/filtergrouping.cxx
@@ -22,6 +22,7 @@
#include <sfx2/filedlghelper.hxx>
#include <sfx2/strings.hrc>
#include <sfx2/docfac.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/sfxresid.hxx>
#include <osl/thread.h>
#include <rtl/strbuf.hxx>
diff --git a/sfx2/source/dialog/partwnd.cxx b/sfx2/source/dialog/partwnd.cxx
index 05312c84f1d4..f97bc2d30445 100644
--- a/sfx2/source/dialog/partwnd.cxx
+++ b/sfx2/source/dialog/partwnd.cxx
@@ -35,6 +35,7 @@
#include <toolkit/helper/vclunohelper.hxx>
+#include <vcl/event.hxx>
#include <sfx2/sfxsids.hrc>
#include <partwnd.hxx>
#include <sfx2/bindings.hxx>
diff --git a/sfx2/source/dialog/splitwin.cxx b/sfx2/source/dialog/splitwin.cxx
index 065ca5afde1a..b983787838e3 100644
--- a/sfx2/source/dialog/splitwin.cxx
+++ b/sfx2/source/dialog/splitwin.cxx
@@ -27,8 +27,10 @@
#include <unotools/viewoptions.hxx>
#include <sal/log.hxx>
+#include <vcl/event.hxx>
#include <vcl/menu.hxx>
#include <vcl/timer.hxx>
+#include <vcl/svapp.hxx>
#include <splitwin.hxx>
#include <workwin.hxx>
diff --git a/sfx2/source/doc/objcont.cxx b/sfx2/source/doc/objcont.cxx
index 5e17b9757cf9..02834f8fb98c 100644
--- a/sfx2/source/doc/objcont.cxx
+++ b/sfx2/source/doc/objcont.cxx
@@ -70,6 +70,7 @@
#include <sfx2/strings.hrc>
#include <sfx2/sfxbasemodel.hxx>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/request.hxx>
#include <openflag.hxx>
#include <memory>
diff --git a/sfx2/source/doc/sfxbasemodel.cxx b/sfx2/source/doc/sfxbasemodel.cxx
index 12af26232cec..8537b43de933 100644
--- a/sfx2/source/doc/sfxbasemodel.cxx
+++ b/sfx2/source/doc/sfxbasemodel.cxx
@@ -104,6 +104,7 @@
#include <sfx2/viewfrm.hxx>
#include <sfx2/viewsh.hxx>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/request.hxx>
#include <sfx2/printer.hxx>
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index dec6fe3e6353..351e610d6e71 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -20,6 +20,7 @@
#include <officecfg/Office/Common.hxx>
#include <sfx2/app.hxx>
#include <sfx2/docfac.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/fcontnr.hxx>
#include <sfx2/filedlghelper.hxx>
#include <sfx2/objsh.hxx>
diff --git a/sfx2/source/inc/workwin.hxx b/sfx2/source/inc/workwin.hxx
index 6b9894628e94..159e6ceb0c6c 100644
--- a/sfx2/source/inc/workwin.hxx
+++ b/sfx2/source/inc/workwin.hxx
@@ -32,6 +32,7 @@
#include <rtl/ustring.hxx>
#include <o3tl/typed_flags_set.hxx>
+#include <sfx2/basedlgs.hxx>
#include <sfx2/childwin.hxx>
#include <sfx2/objface.hxx>
#include <sfx2/shell.hxx>
diff --git a/sfx2/source/sidebar/SidebarToolBox.cxx b/sfx2/source/sidebar/SidebarToolBox.cxx
index 7182b479e282..4e9fe7916441 100644
--- a/sfx2/source/sidebar/SidebarToolBox.cxx
+++ b/sfx2/source/sidebar/SidebarToolBox.cxx
@@ -23,6 +23,7 @@
#include <vcl/builderfactory.hxx>
#include <vcl/commandinfoprovider.hxx>
+#include <vcl/event.hxx>
#include <vcl/settings.hxx>
#include <vcl/svapp.hxx>
#include <toolkit/helper/vclunohelper.hxx>
diff --git a/sfx2/source/statbar/stbitem.cxx b/sfx2/source/statbar/stbitem.cxx
index ffa258f639c8..dd8eac28bcac 100644
--- a/sfx2/source/statbar/stbitem.cxx
+++ b/sfx2/source/statbar/stbitem.cxx
@@ -27,6 +27,8 @@
#include <com/sun/star/frame/status/ItemState.hpp>
#include <com/sun/star/awt/MouseButton.hpp>
+#include <vcl/commandevent.hxx>
+#include <vcl/event.hxx>
#include <vcl/status.hxx>
#include <sfx2/app.hxx>
diff --git a/sfx2/source/toolbox/tbxitem.cxx b/sfx2/source/toolbox/tbxitem.cxx
index 7241d98101f2..1501c3a07708 100644
--- a/sfx2/source/toolbox/tbxitem.cxx
+++ b/sfx2/source/toolbox/tbxitem.cxx
@@ -59,6 +59,7 @@
#include <framework/menuconfiguration.hxx>
#include <framework/sfxhelperfunctions.hxx>
#include <vcl/taskpanelist.hxx>
+#include <vcl/event.hxx>
#include <toolkit/helper/vclunohelper.hxx>
#include <tools/globname.hxx>
#include <svtools/menuoptions.hxx>
diff --git a/sfx2/source/view/classificationcontroller.cxx b/sfx2/source/view/classificationcontroller.cxx
index d2bc9824db88..0bb7b2daea70 100644
--- a/sfx2/source/view/classificationcontroller.cxx
+++ b/sfx2/source/view/classificationcontroller.cxx
@@ -21,6 +21,7 @@
#include <toolkit/helper/vclunohelper.hxx>
#include <vcl/toolbox.hxx>
#include <vcl/fixed.hxx>
+#include <vcl/event.hxx>
#include <sfx2/viewfrm.hxx>
#include <sfx2/classificationhelper.hxx>
#include <sfx2/strings.hrc>
diff --git a/sfx2/source/view/classificationhelper.cxx b/sfx2/source/view/classificationhelper.cxx
index c3d2f96c2f6f..db94f56a9b44 100644
--- a/sfx2/source/view/classificationhelper.cxx
+++ b/sfx2/source/view/classificationhelper.cxx
@@ -34,6 +34,8 @@
#include <sfx2/viewfrm.hxx>
#include <tools/datetime.hxx>
#include <unotools/datetime.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/settings.hxx>
#include <vcl/weld.hxx>
#include <svl/fstathelper.hxx>
#include <config_folders.h>
diff --git a/sfx2/source/view/ipclient.cxx b/sfx2/source/view/ipclient.cxx
index 9f59d7335e0c..a7d8ac8850f4 100644
--- a/sfx2/source/view/ipclient.cxx
+++ b/sfx2/source/view/ipclient.cxx
@@ -17,6 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <com/sun/star/embed/Aspects.hpp>
#include <com/sun/star/embed/EmbedStates.hpp>
#include <com/sun/star/embed/UnreachableStateException.hpp>
#include <com/sun/star/embed/XVisualObject.hpp>
diff --git a/sfx2/source/view/lokcharthelper.cxx b/sfx2/source/view/lokcharthelper.cxx
index d0d37e4865a4..2622aba832cc 100644
--- a/sfx2/source/view/lokcharthelper.cxx
+++ b/sfx2/source/view/lokcharthelper.cxx
@@ -23,6 +23,7 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/embed/XEmbeddedObject.hpp>
#include <com/sun/star/frame/XModel.hpp>
+#include <com/sun/star/frame/XDispatch.hpp>
#include <com/sun/star/chart2/XChartDocument.hpp>
#define TWIPS_PER_PIXEL 15
diff --git a/sfx2/source/view/lokhelper.cxx b/sfx2/source/view/lokhelper.cxx
index 768cedd9da44..581b78f87c5b 100644
--- a/sfx2/source/view/lokhelper.cxx
+++ b/sfx2/source/view/lokhelper.cxx
@@ -13,6 +13,7 @@
#include <comphelper/processfactory.hxx>
#include <vcl/svapp.hxx>
+#include <sfx2/app.hxx>
#include <sfx2/viewsh.hxx>
#include <sfx2/request.hxx>
#include <sfx2/viewfrm.hxx>
diff --git a/sfx2/source/view/viewfrm.cxx b/sfx2/source/view/viewfrm.cxx
index 1d8273bffb97..91092303671b 100644
--- a/sfx2/source/view/viewfrm.cxx
+++ b/sfx2/source/view/viewfrm.cxx
@@ -19,6 +19,7 @@
#include <config_features.h>
#include <osl/file.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/infobar.hxx>
#include <sfx2/viewfrm.hxx>
#include <sfx2/classificationhelper.hxx>
diff --git a/starmath/IwyuFilter_starmath.yaml b/starmath/IwyuFilter_starmath.yaml
index 9df24573b6e2..d3072282fdae 100644
--- a/starmath/IwyuFilter_starmath.yaml
+++ b/starmath/IwyuFilter_starmath.yaml
@@ -1,6 +1,9 @@
---
assumeFilename: starmath/source/document.cxx
blacklist:
+ starmath/inc/smmod.hxx:
+ # Needed for define
+ - sfx2/app.hxx
starmath/source/accessibility.hxx:
# Base class needs complete type
- com/sun/star/accessibility/XAccessible.hpp
diff --git a/starmath/inc/smmod.hxx b/starmath/inc/smmod.hxx
index b225b654a8e5..fc97d5392912 100644
--- a/starmath/inc/smmod.hxx
+++ b/starmath/inc/smmod.hxx
@@ -21,6 +21,7 @@
#define INCLUDED_STARMATH_INC_SMMOD_HXX
#include <sfx2/module.hxx>
+#include <sfx2/app.hxx>
#include <unotools/options.hxx>
#include <memory>
diff --git a/svx/source/form/filtnav.cxx b/svx/source/form/filtnav.cxx
index a99b6e215613..a05e6a56b9f9 100644
--- a/svx/source/form/filtnav.cxx
+++ b/svx/source/form/filtnav.cxx
@@ -49,9 +49,11 @@
#include <vcl/wrkwin.hxx>
#include <vcl/settings.hxx>
#include <tools/diagnose_ex.h>
+#include <vcl/commandevent.hxx>
#include <vcl/svlbitm.hxx>
#include <vcl/treelistentry.hxx>
#include <vcl/viewdataentry.hxx>
+#include <vcl/svapp.hxx>
#include <bitmaps.hlst>
diff --git a/svx/source/form/fmtextcontrolshell.cxx b/svx/source/form/fmtextcontrolshell.cxx
index 7d1d35c50f19..f5eddefd23d5 100644
--- a/svx/source/form/fmtextcontrolshell.cxx
+++ b/svx/source/form/fmtextcontrolshell.cxx
@@ -45,6 +45,7 @@
#include <sfx2/bindings.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
#include <sfx2/objsh.hxx>
#include <sfx2/request.hxx>
#include <sfx2/sfxuno.hxx>
diff --git a/svx/source/form/fmvwimp.cxx b/svx/source/form/fmvwimp.cxx
index a2ae47c50013..9441bf32fc7d 100644
--- a/svx/source/form/fmvwimp.cxx
+++ b/svx/source/form/fmvwimp.cxx
@@ -79,6 +79,7 @@
#include <unotools/moduleoptions.hxx>
#include <tools/diagnose_ex.h>
#include <sal/log.hxx>
+#include <vcl/svapp.hxx>
#include <vcl/stdtext.hxx>
#include <connectivity/dbtools.hxx>
diff --git a/svx/source/form/tabwin.cxx b/svx/source/form/tabwin.cxx
index de3ee78e37fe..0b26759311eb 100644
--- a/svx/source/form/tabwin.cxx
+++ b/svx/source/form/tabwin.cxx
@@ -52,6 +52,7 @@
#include <svx/dataaccessdescriptor.hxx>
#include <vcl/treelistentry.hxx>
#include <vcl/settings.hxx>
+#include <vcl/svapp.hxx>
#include <tabwin.hrc>
const long STD_WIN_SIZE_X = 120;
diff --git a/svx/source/gallery2/galctrl.cxx b/svx/source/gallery2/galctrl.cxx
index 73d15e089512..b01e292402bb 100644
--- a/svx/source/gallery2/galctrl.cxx
+++ b/svx/source/gallery2/galctrl.cxx
@@ -34,6 +34,8 @@
#include <galobj.hxx>
#include <avmedia/mediawindow.hxx>
#include <svx/strings.hrc>
+#include <vcl/event.hxx>
+#include <vcl/commandevent.hxx>
#include <vcl/graphicfilter.hxx>
#include <vcl/settings.hxx>
#include <vcl/builderfactory.hxx>
diff --git a/svx/source/sidebar/text/TextCharacterSpacingControl.cxx b/svx/source/sidebar/text/TextCharacterSpacingControl.cxx
index 5182b6edb219..7ad11da8922b 100644
--- a/svx/source/sidebar/text/TextCharacterSpacingControl.cxx
+++ b/svx/source/sidebar/text/TextCharacterSpacingControl.cxx
@@ -22,6 +22,7 @@
#include <editeng/editids.hrc>
#include <editeng/kernitem.hxx>
#include <editeng/fhgtitem.hxx>
+#include <sfx2/app.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/viewfrm.hxx>
#include <sfx2/sidebar/Theme.hxx>
diff --git a/svx/source/stbctrls/pszctrl.cxx b/svx/source/stbctrls/pszctrl.cxx
index 8f4cae9a0cb0..80a94a589730 100644
--- a/svx/source/stbctrls/pszctrl.cxx
+++ b/svx/source/stbctrls/pszctrl.cxx
@@ -19,11 +19,14 @@
#include <limits.h>
#include <vcl/builder.hxx>
+#include <vcl/commandevent.hxx>
+#include <vcl/event.hxx>
#include <vcl/field.hxx>
#include <vcl/status.hxx>
#include <vcl/menu.hxx>
#include <vcl/image.hxx>
#include <vcl/settings.hxx>
+#include <vcl/svapp.hxx>
#include <svl/stritem.hxx>
#include <svl/ptitem.hxx>
#include <svl/itempool.hxx>
diff --git a/svx/source/stbctrls/xmlsecctrl.cxx b/svx/source/stbctrls/xmlsecctrl.cxx
index 1f9ea639444d..deb717dacaf9 100644
--- a/svx/source/stbctrls/xmlsecctrl.cxx
+++ b/svx/source/stbctrls/xmlsecctrl.cxx
@@ -22,6 +22,8 @@
#include <vcl/builder.hxx>
#include <vcl/menu.hxx>
#include <vcl/image.hxx>
+#include <vcl/commandevent.hxx>
+#include <vcl/event.hxx>
#include <sfx2/signaturestate.hxx>
#include <sfx2/app.hxx>
#include <sfx2/module.hxx>
diff --git a/svx/source/svdraw/svdograf.cxx b/svx/source/svdraw/svdograf.cxx
index b98fa5efa4f6..c8eb04b37d3a 100644
--- a/svx/source/svdraw/svdograf.cxx
+++ b/svx/source/svdraw/svdograf.cxx
@@ -22,6 +22,7 @@
#include <sfx2/lnkbase.hxx>
#include <math.h>
#include <tools/helpers.hxx>
+#include <sot/exchange.hxx>
#include <sot/formats.hxx>
#include <sot/storage.hxx>
#include <unotools/ucbstreamhelper.hxx>
diff --git a/svx/source/svdraw/svdoole2.cxx b/svx/source/svdraw/svdoole2.cxx
index 68c972bc42a1..75a36a4af429 100644
--- a/svx/source/svdraw/svdoole2.cxx
+++ b/svx/source/svdraw/svdoole2.cxx
@@ -27,6 +27,7 @@
#include <com/sun/star/embed/EmbedMisc.hpp>
#include <com/sun/star/embed/Aspects.hpp>
#include <com/sun/star/embed/ObjectSaveVetoException.hpp>
+#include <com/sun/star/embed/XEmbeddedObject.hpp>
#include <com/sun/star/embed/XEmbedPersist2.hpp>
#include <com/sun/star/embed/XInplaceClient.hpp>
#include <com/sun/star/embed/XInplaceObject.hpp>
diff --git a/sw/inc/swmodule.hxx b/sw/inc/swmodule.hxx
index 4e4577f3fc10..52decb788a9e 100644
--- a/sw/inc/swmodule.hxx
+++ b/sw/inc/swmodule.hxx
@@ -27,6 +27,7 @@
#include <svl/lstner.hxx>
#include <unotools/options.hxx>
#include <sfx2/module.hxx>
+#include <sfx2/app.hxx>
#include "swdllapi.h"
#include "shellid.hxx"
diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx b/sw/qa/extras/uiwriter/uiwriter.cxx
index ea1091a93907..c283aa5a755a 100644
--- a/sw/qa/extras/uiwriter/uiwriter.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter.cxx
@@ -105,6 +105,7 @@
#include <comphelper/propertysequence.hxx>
#include <sfx2/classificationhelper.hxx>
#include <LibreOfficeKit/LibreOfficeKitEnums.h>
+#include <sfx2/docfilt.hxx>
#include <sfx2/viewfrm.hxx>
#include <sfx2/dispatch.hxx>
#include <comphelper/configurationhelper.hxx>
diff --git a/sw/source/core/doc/DocumentContentOperationsManager.cxx b/sw/source/core/doc/DocumentContentOperationsManager.cxx
index eb7df745682f..c6ff7c163462 100644
--- a/sw/source/core/doc/DocumentContentOperationsManager.cxx
+++ b/sw/source/core/doc/DocumentContentOperationsManager.cxx
@@ -72,6 +72,7 @@
#include <unotools/charclass.hxx>
#include <unotools/configmgr.hxx>
#include <sfx2/Metadatable.hxx>
+#include <sot/exchange.hxx>
#include <svl/stritem.hxx>
#include <svl/itemiter.hxx>
#include <svx/svdobj.hxx>
diff --git a/sw/source/core/doc/doclay.cxx b/sw/source/core/doc/doclay.cxx
index 396fbc042f40..200b46592426 100644
--- a/sw/source/core/doc/doclay.cxx
+++ b/sw/source/core/doc/doclay.cxx
@@ -20,6 +20,7 @@
#include <unotools/linguprops.hxx>
#include <unotools/lingucfg.hxx>
#include <hintids.hxx>
+#include <sot/exchange.hxx>
#include <sfx2/progress.hxx>
#include <svx/svdmodel.hxx>
#include <svx/svdpage.hxx>
diff --git a/sw/source/core/doc/swserv.cxx b/sw/source/core/doc/swserv.cxx
index 6bf133cbf352..5dfe6d92b36b 100644
--- a/sw/source/core/doc/swserv.cxx
+++ b/sw/source/core/doc/swserv.cxx
@@ -18,6 +18,7 @@
*/
#include <sot/storage.hxx>
+#include <sot/exchange.hxx>
#include <sfx2/linkmgr.hxx>
#include <com/sun/star/uno/Sequence.h>
#include <doc.hxx>
diff --git a/sw/source/core/docnode/section.cxx b/sw/source/core/docnode/section.cxx
index e0ca1175f1c7..d2474855d4ad 100644
--- a/sw/source/core/docnode/section.cxx
+++ b/sw/source/core/docnode/section.cxx
@@ -21,6 +21,7 @@
#include <libxml/xmlwriter.h>
#include <stdlib.h>
#include <hintids.hxx>
+#include <sot/exchange.hxx>
#include <svl/intitem.hxx>
#include <svl/stritem.hxx>
#include <sfx2/docfile.hxx>
diff --git a/sw/source/core/docnode/swbaslnk.cxx b/sw/source/core/docnode/swbaslnk.cxx
index bce6076aa523..7d0edf5fedf0 100644
--- a/sw/source/core/docnode/swbaslnk.cxx
+++ b/sw/source/core/docnode/swbaslnk.cxx
@@ -31,6 +31,7 @@
#include <sfx2/linkmgr.hxx>
#include <sfx2/event.hxx>
#include <svtools/soerr.hxx>
+#include <sot/exchange.hxx>
#include <fmtfsize.hxx>
#include <fmtanchr.hxx>
#include <frmatr.hxx>
diff --git a/sw/source/core/fields/ddefld.cxx b/sw/source/core/fields/ddefld.cxx
index 4211f3fcb770..4aaeadb7274e 100644
--- a/sw/source/core/fields/ddefld.cxx
+++ b/sw/source/core/fields/ddefld.cxx
@@ -23,6 +23,7 @@
#include <osl/diagnose.h>
#include <osl/thread.h>
#include <sfx2/linkmgr.hxx>
+#include <sot/exchange.hxx>
#include <doc.hxx>
#include <IDocumentLinksAdministration.hxx>
#include <IDocumentState.hxx>
diff --git a/sw/source/core/frmedt/fefly1.cxx b/sw/source/core/frmedt/fefly1.cxx
index 7d63fdfdca95..363f1056583a 100644
--- a/sw/source/core/frmedt/fefly1.cxx
+++ b/sw/source/core/frmedt/fefly1.cxx
@@ -27,6 +27,7 @@
#include <svx/svdouno.hxx>
#include <svx/fmglob.hxx>
#include <tools/globname.hxx>
+#include <sot/exchange.hxx>
#include <com/sun/star/form/FormButtonType.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/embed/XEmbeddedObject.hpp>
diff --git a/sw/source/core/frmedt/feshview.cxx b/sw/source/core/frmedt/feshview.cxx
index 83b2a5c5ede8..c570d094fe3a 100644
--- a/sw/source/core/frmedt/feshview.cxx
+++ b/sw/source/core/frmedt/feshview.cxx
@@ -45,6 +45,7 @@
#include <svx/svdpagv.hxx>
#include <svx/dialmgr.hxx>
#include <tools/globname.hxx>
+#include <sot/exchange.hxx>
#include <IDocumentDrawModelAccess.hxx>
#include <IDocumentSettingAccess.hxx>
#include <DocumentSettingManager.hxx>
diff --git a/sw/source/core/ole/ndole.cxx b/sw/source/core/ole/ndole.cxx
index 9cad7b17a68b..1990919993e3 100644
--- a/sw/source/core/ole/ndole.cxx
+++ b/sw/source/core/ole/ndole.cxx
@@ -27,6 +27,7 @@
#include <com/sun/star/chart2/XChartDocument.hpp>
#include <cppuhelper/implbase.hxx>
+#include <sot/exchange.hxx>
#include <tools/globname.hxx>
#include <hintids.hxx>
#include <sfx2/docfile.hxx>
diff --git a/sw/source/core/swg/SwXMLTextBlocks.cxx b/sw/source/core/swg/SwXMLTextBlocks.cxx
index 4828ab1afcf6..af17beb63f07 100644
--- a/sw/source/core/swg/SwXMLTextBlocks.cxx
+++ b/sw/source/core/swg/SwXMLTextBlocks.cxx
@@ -22,6 +22,7 @@
#include <osl/file.hxx>
#include <rtl/ustring.hxx>
#include <sal/log.hxx>
+#include <sot/exchange.hxx>
#include <sot/stg.hxx>
#include <sfx2/docfile.hxx>
#include <tools/urlobj.hxx>
diff --git a/sw/source/core/text/EnhancedPDFExportHelper.cxx b/sw/source/core/text/EnhancedPDFExportHelper.cxx
index cbfbac447f06..79de6f34239e 100644
--- a/sw/source/core/text/EnhancedPDFExportHelper.cxx
+++ b/sw/source/core/text/EnhancedPDFExportHelper.cxx
@@ -23,6 +23,7 @@
#include <EnhancedPDFExportHelper.hxx>
#include <hintids.hxx>
+#include <sot/exchange.hxx>
#include <vcl/outdev.hxx>
#include <vcl/pdfextoutdevdata.hxx>
#include <tools/multisel.hxx>
diff --git a/sw/source/filter/html/htmlplug.cxx b/sw/source/filter/html/htmlplug.cxx
index f71e81b9a8cc..ca1eeb9b9ce5 100644
--- a/sw/source/filter/html/htmlplug.cxx
+++ b/sw/source/filter/html/htmlplug.cxx
@@ -26,11 +26,13 @@
#include <vcl/svapp.hxx>
#include <sfx2/frmhtml.hxx>
#include <sfx2/frmhtmlw.hxx>
+#include <sfx2/frmdescr.hxx>
#include <vcl/wrkwin.hxx>
#include <sot/storage.hxx>
#include <svx/xoutbmp.hxx>
#include <editeng/ulspitem.hxx>
#include <editeng/lrspitem.hxx>
+#include <svtools/htmlout.hxx>
#include <svtools/htmlkywd.hxx>
#include <svtools/htmltokn.h>
#include <SwAppletImpl.hxx>
diff --git a/sw/source/filter/html/wrthtml.cxx b/sw/source/filter/html/wrthtml.cxx
index 1e3afd632211..3f72b20f696b 100644
--- a/sw/source/filter/html/wrthtml.cxx
+++ b/sw/source/filter/html/wrthtml.cxx
@@ -28,6 +28,7 @@
#include <svtools/htmlcfg.hxx>
#include <svtools/htmltokn.h>
+#include <svtools/htmlkywd.hxx>
#include <vcl/svapp.hxx>
#include <i18nlangtag/languagetag.hxx>
#include <sfx2/frmhtmlw.hxx>
diff --git a/sw/source/filter/html/wrthtml.hxx b/sw/source/filter/html/wrthtml.hxx
index b92b95f70e27..c90c784e7abc 100644
--- a/sw/source/filter/html/wrthtml.hxx
+++ b/sw/source/filter/html/wrthtml.hxx
@@ -32,6 +32,7 @@
#include <o3tl/sorted_vector.hxx>
#include <o3tl/typed_flags_set.hxx>
#include <rtl/ref.hxx>
+#include <svtools/htmlout.hxx>
#include <shellio.hxx>
#include <wrt_fn.hxx>
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index ed388364a1ba..2c058f07fd48 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -99,6 +99,7 @@
#include <svl/whiter.hxx>
#include <rtl/tencinfo.h>
#include <sal/log.hxx>
+#include <sot/exchange.hxx>
#include <docufld.hxx>
#include <authfld.hxx>
diff --git a/sw/source/filter/ww8/rtfattributeoutput.cxx b/sw/source/filter/ww8/rtfattributeoutput.cxx
index da67362138c9..b5462838ec55 100644
--- a/sw/source/filter/ww8/rtfattributeoutput.cxx
+++ b/sw/source/filter/ww8/rtfattributeoutput.cxx
@@ -26,6 +26,7 @@
#include <fmtcntnt.hxx>
#include <rtl/tencinfo.h>
#include <sal/log.hxx>
+#include <sot/exchange.hxx>
#include <svtools/rtfkeywd.hxx>
#include <editeng/fontitem.hxx>
#include <editeng/tstpitem.hxx>
diff --git a/sw/source/filter/xml/xmltexte.cxx b/sw/source/filter/xml/xmltexte.cxx
index 168f9a8b3406..b2ae6f5ff08c 100644
--- a/sw/source/filter/xml/xmltexte.cxx
+++ b/sw/source/filter/xml/xmltexte.cxx
@@ -44,6 +44,7 @@
#include <SwAppletImpl.hxx>
#include <ndindex.hxx>
+#include <sot/exchange.hxx>
#include <svl/urihelper.hxx>
#include <sfx2/frmdescr.hxx>
#include <SwStyleNameMapper.hxx>
diff --git a/sw/source/ui/chrdlg/chardlg.cxx b/sw/source/ui/chrdlg/chardlg.cxx
index 15576805856c..06b3cedd074b 100644
--- a/sw/source/ui/chrdlg/chardlg.cxx
+++ b/sw/source/ui/chrdlg/chardlg.cxx
@@ -26,6 +26,7 @@
#include <editeng/flstitem.hxx>
#include <sfx2/htmlmode.hxx>
#include <svl/cjkoptions.hxx>
+#include <svl/macitem.hxx>
#include <cmdid.h>
#include <swtypes.hxx>
diff --git a/sw/source/ui/dbui/mmresultdialogs.cxx b/sw/source/ui/dbui/mmresultdialogs.cxx
index 318229fa3104..230d26c98cb7 100644
--- a/sw/source/ui/dbui/mmresultdialogs.cxx
+++ b/sw/source/ui/dbui/mmresultdialogs.cxx
@@ -48,6 +48,7 @@
#include <sfx2/viewfrm.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <tools/urlobj.hxx>
#include <svl/urihelper.hxx>
#include <vcl/print.hxx>
diff --git a/sw/source/ui/dialog/macassgn.cxx b/sw/source/ui/dialog/macassgn.cxx
index a8ae8c16f73a..77235ec72f67 100644
--- a/sw/source/ui/dialog/macassgn.cxx
+++ b/sw/source/ui/dialog/macassgn.cxx
@@ -22,6 +22,7 @@
#include <sfx2/htmlmode.hxx>
#include <svx/svxids.hrc>
#include <sfx2/app.hxx>
+#include <svl/macitem.hxx>
#include <swtypes.hxx>
#include <wrtsh.hxx>
diff --git a/sw/source/ui/misc/glossary.cxx b/sw/source/ui/misc/glossary.cxx
index a29266b9de16..cd3853f38f64 100644
--- a/sw/source/ui/misc/glossary.cxx
+++ b/sw/source/ui/misc/glossary.cxx
@@ -25,10 +25,12 @@
#include <vcl/help.hxx>
#include <vcl/builderfactory.hxx>
#include <svl/stritem.hxx>
+#include <svl/macitem.hxx>
#include <unotools/pathoptions.hxx>
#include <unotools/lingucfg.hxx>
#include <sfx2/request.hxx>
#include <sfx2/fcontnr.hxx>
+#include <sfx2/docfilt.hxx>
#include <svx/svxdlg.hxx>
#include <svx/dialogs.hrc>
diff --git a/sw/source/ui/vba/vbaapplication.cxx b/sw/source/ui/vba/vbaapplication.cxx
index 962029e793ff..9dbe23c66289 100644
--- a/sw/source/ui/vba/vbaapplication.cxx
+++ b/sw/source/ui/vba/vbaapplication.cxx
@@ -24,6 +24,7 @@
#include "vbadocument.hxx"
#include <sal/log.hxx>
#include <osl/file.hxx>
+#include <vcl/svapp.hxx>
#include <vbahelper/vbahelper.hxx>
#include "vbawindow.hxx"
#include "vbasystem.hxx"
diff --git a/sw/source/uibase/app/docsh2.cxx b/sw/source/uibase/app/docsh2.cxx
index 32e337393ac3..e140f6cad49f 100644
--- a/sw/source/uibase/app/docsh2.cxx
+++ b/sw/source/uibase/app/docsh2.cxx
@@ -37,6 +37,7 @@
#include <vcl/wrkwin.hxx>
#include <svl/lckbitem.hxx>
#include <svl/eitem.hxx>
+#include <svl/macitem.hxx>
#include <svl/zforlist.hxx>
#include <svl/zformat.hxx>
#include <unotools/pathoptions.hxx>
diff --git a/sw/source/uibase/dbui/dbmgr.cxx b/sw/source/uibase/dbui/dbmgr.cxx
index 6b09746db85f..508c2760807d 100644
--- a/sw/source/uibase/dbui/dbmgr.cxx
+++ b/sw/source/uibase/dbui/dbmgr.cxx
@@ -60,6 +60,7 @@
#include <svl/eitem.hxx>
#include <vcl/oldprintadaptor.hxx>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <sfx2/progress.hxx>
#include <sfx2/dispatch.hxx>
#include <cmdid.h>
diff --git a/sw/source/uibase/dochdl/gloshdl.cxx b/sw/source/uibase/dochdl/gloshdl.cxx
index b486c3b3041a..fc1f13dae296 100644
--- a/sw/source/uibase/dochdl/gloshdl.cxx
+++ b/sw/source/uibase/dochdl/gloshdl.cxx
@@ -25,6 +25,7 @@
#include <svl/macitem.hxx>
#include <sfx2/fcontnr.hxx>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <svl/urihelper.hxx>
#include <unotools/transliterationwrapper.hxx>
#include <poolfmt.hxx>
diff --git a/sw/source/uibase/sidebar/PageMarginControl.cxx b/sw/source/uibase/sidebar/PageMarginControl.cxx
index 337e665a62e8..2083966a01d2 100644
--- a/sw/source/uibase/sidebar/PageMarginControl.cxx
+++ b/sw/source/uibase/sidebar/PageMarginControl.cxx
@@ -26,6 +26,7 @@
#include <strings.hrc>
#include <editeng/sizeitem.hxx>
+#include <sfx2/app.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/viewfrm.hxx>
#include <svx/svxids.hrc>
diff --git a/sw/source/uibase/sidebar/PageSizeControl.cxx b/sw/source/uibase/sidebar/PageSizeControl.cxx
index fe9e78e2ddb3..7afe30a4d859 100644
--- a/sw/source/uibase/sidebar/PageSizeControl.cxx
+++ b/sw/source/uibase/sidebar/PageSizeControl.cxx
@@ -29,6 +29,7 @@
#include <unotools/localedatawrapper.hxx>
#include <rtl/character.hxx>
#include <editeng/paperinf.hxx>
+#include <sfx2/app.hxx>
#include <sfx2/bindings.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/viewfrm.hxx>
diff --git a/sw/source/uibase/utlui/bookctrl.cxx b/sw/source/uibase/utlui/bookctrl.cxx
index 747f8fb77e9b..72f7316fd899 100644
--- a/sw/source/uibase/utlui/bookctrl.cxx
+++ b/sw/source/uibase/utlui/bookctrl.cxx
@@ -26,6 +26,7 @@
#include <svl/eitem.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/viewfrm.hxx>
+#include <vcl/commandevent.hxx>
#include <vcl/event.hxx>
#include <vcl/status.hxx>
#include <vcl/menu.hxx>
diff --git a/sw/source/uibase/utlui/glbltree.cxx b/sw/source/uibase/utlui/glbltree.cxx
index 19105d4f1156..232501b05455 100644
--- a/sw/source/uibase/utlui/glbltree.cxx
+++ b/sw/source/uibase/utlui/glbltree.cxx
@@ -24,6 +24,7 @@
#include <sfx2/viewfrm.hxx>
#include <svl/urihelper.hxx>
#include <sfx2/docfile.hxx>
+#include <sfx2/docfilt.hxx>
#include <vcl/help.hxx>
#include <sot/filelist.hxx>
#include <svl/eitem.hxx>
diff --git a/sw/source/uibase/wrtsh/wrtsh1.cxx b/sw/source/uibase/wrtsh/wrtsh1.cxx
index 5d5745bb85fa..1e721a638f9a 100644
--- a/sw/source/uibase/wrtsh/wrtsh1.cxx
+++ b/sw/source/uibase/wrtsh/wrtsh1.cxx
@@ -103,6 +103,7 @@
#include <FrameControlsManager.hxx>
#include <sfx2/msgpool.hxx>
+#include <sfx2/msg.hxx>
#include <svtools/embedhlp.hxx>
#include <memory>