[Libreoffice-commits] core.git: Branch 'feature/item_refactor2' - 2 commits - avmedia/source basctl/source cui/source include/avmedia include/item include/sfx2 include/svx item/Library_item.mk item/source item/test reportdesign/source sc/inc sc/source sd/source sfx2/inc sfx2/source starmath/inc starmath/source svl/source svx/source sw/CppunitTest_sw_uwriter.mk sw/source

Armin Le Grand (via logerrit) logerrit at kemper.freedesktop.org
Sun May 5 15:11:22 UTC 2019


 avmedia/source/framework/mediatoolbox.cxx           |    2 
 basctl/source/basicide/IDEComboBox.cxx              |    4 
 basctl/source/basicide/basides1.cxx                 |   92 -
 basctl/source/basicide/bastype2.cxx                 |   26 
 basctl/source/basicide/moduldl2.cxx                 |   26 
 basctl/source/basicide/moduldlg.cxx                 |  104 -
 basctl/source/basicide/sbxitem.cxx                  |   72 
 basctl/source/inc/IDEComboBox.hxx                   |    4 
 basctl/source/inc/sbxitem.hxx                       |   64 
 cui/source/dialogs/cuihyperdlg.cxx                  |    2 
 cui/source/inc/cuihyperdlg.hxx                      |    2 
 cui/source/tabpages/swpossizetabpage.cxx            |    8 
 include/avmedia/mediatoolbox.hxx                    |    2 
 include/item/base/ItemAdministrator.hxx             |  171 --
 include/item/base/ItemBase.hxx                      |  147 -
 include/item/base/ItemBuffered.hxx                  |  101 +
 include/item/base/ItemControlBlock.hxx              |   38 
 include/item/base/ItemSet.hxx                       |   83 -
 include/item/base/ModelSpecificItemValues.hxx       |   10 
 include/item/simple/CntInt16.hxx                    |   19 
 include/item/simple/CntOUString.hxx                 |   18 
 include/sfx2/ctrlitem.hxx                           |    4 
 include/sfx2/dispatch.hxx                           |    4 
 include/sfx2/msg.hxx                                |   14 
 include/sfx2/sfxstatuslistener.hxx                  |    6 
 include/sfx2/sidebar/ControllerItem.hxx             |    2 
 include/sfx2/stbitem.hxx                            |    2 
 include/sfx2/tbxctrl.hxx                            |    2 
 include/sfx2/unoctitm.hxx                           |    2 
 include/svx/ParaSpacingControl.hxx                  |    4 
 include/svx/bmpmask.hxx                             |    2 
 include/svx/clipboardctl.hxx                        |    2 
 include/svx/fillctrl.hxx                            |    2 
 include/svx/float3d.hxx                             |    4 
 include/svx/fontwork.hxx                            |    2 
 include/svx/formatpaintbrushctrl.hxx                |    2 
 include/svx/grafctrl.hxx                            |    4 
 include/svx/imapdlg.hxx                             |    2 
 include/svx/insctrl.hxx                             |    2 
 include/svx/item/TransformAnchor.hxx                |   12 
 include/svx/layctrl.hxx                             |    4 
 include/svx/lboxctrl.hxx                            |    2 
 include/svx/linectrl.hxx                            |    4 
 include/svx/modctrl.hxx                             |    2 
 include/svx/pszctrl.hxx                             |    2 
 include/svx/selctrl.hxx                             |    2 
 include/svx/tbcontrl.hxx                            |    4 
 include/svx/tbxctl.hxx                              |    2 
 include/svx/verttexttbxctrl.hxx                     |    2 
 include/svx/xmlsecctrl.hxx                          |    2 
 include/svx/zoomctrl.hxx                            |    2 
 include/svx/zoomsliderctrl.hxx                      |    2 
 item/Library_item.mk                                |    1 
 item/source/base/ItemAdministrator.cxx              |  183 --
 item/source/base/ItemBase.cxx                       |  188 --
 item/source/base/ItemBuffered.cxx                   |  166 ++
 item/source/base/ItemControlBlock.cxx               |   42 
 item/source/base/ItemSet.cxx                        |  138 +
 item/source/base/ModelSpecificItemValues.cxx        |   38 
 item/source/simple/CntInt16.cxx                     |   54 
 item/source/simple/CntOUString.cxx                  |   54 
 item/test/ItemTest.cxx                              | 1595 ++++++++++++++------
 reportdesign/source/ui/misc/statusbarcontroller.cxx |    6 
 sc/inc/NumberFormatControl.hxx                      |    2 
 sc/source/ui/cctrl/tbzoomsliderctrl.cxx             |    2 
 sc/source/ui/inc/navcitem.hxx                       |    2 
 sc/source/ui/inc/tbzoomsliderctrl.hxx               |    2 
 sc/source/ui/navipi/navcitem.cxx                    |    2 
 sc/source/ui/sidebar/NumberFormatControl.cxx        |    2 
 sd/source/ui/app/tmplctrl.cxx                       |    2 
 sd/source/ui/dlg/animobjs.cxx                       |    2 
 sd/source/ui/dlg/diactrl.cxx                        |    2 
 sd/source/ui/dlg/gluectrl.cxx                       |    4 
 sd/source/ui/dlg/navigatr.cxx                       |    4 
 sd/source/ui/inc/animobjs.hxx                       |    2 
 sd/source/ui/inc/diactrl.hxx                        |    2 
 sd/source/ui/inc/gluectrl.hxx                       |    2 
 sd/source/ui/inc/navigatr.hxx                       |    4 
 sd/source/ui/inc/tmplctrl.hxx                       |    2 
 sd/source/ui/view/sdruler.cxx                       |    4 
 sfx2/inc/inettbc.hxx                                |    2 
 sfx2/source/appl/appuno.cxx                         |    8 
 sfx2/source/control/bindings.cxx                    |    2 
 sfx2/source/control/ctrlitem.cxx                    |    6 
 sfx2/source/control/dispatch.cxx                    |   12 
 sfx2/source/control/sfxstatuslistener.cxx           |    6 
 sfx2/source/control/statcach.cxx                    |   16 
 sfx2/source/control/unoctitm.cxx                    |    8 
 sfx2/source/dialog/tplcitem.cxx                     |    2 
 sfx2/source/inc/tplcitem.hxx                        |    2 
 sfx2/source/inet/inettbc.cxx                        |    2 
 sfx2/source/sidebar/ControllerItem.cxx              |    2 
 sfx2/source/statbar/stbitem.cxx                     |    6 
 sfx2/source/toolbox/tbxitem.cxx                     |    6 
 sfx2/source/view/viewfrm2.cxx                       |    3 
 starmath/inc/view.hxx                               |    4 
 starmath/source/view.cxx                            |    8 
 svl/source/items/itempool.cxx                       |    2 
 svl/source/items/itemset.cxx                        |    4 
 svx/source/dialog/_bmpmask.cxx                      |    2 
 svx/source/dialog/_contdlg.cxx                      |    2 
 svx/source/dialog/contimp.hxx                       |    2 
 svx/source/dialog/fontwork.cxx                      |    2 
 svx/source/dialog/imapdlg.cxx                       |    2 
 svx/source/dialog/rlrcitem.cxx                      |    2 
 svx/source/dialog/rlrcitem.hxx                      |    2 
 svx/source/dialog/srchctrl.cxx                      |    2 
 svx/source/dialog/srchctrl.hxx                      |    2 
 svx/source/engine3d/float3d.cxx                     |    4 
 svx/source/form/datanavi.cxx                        |    2 
 svx/source/form/filtnav.cxx                         |    2 
 svx/source/form/fmPropBrw.cxx                       |    2 
 svx/source/form/fmexpl.cxx                          |    2 
 svx/source/form/tabwin.cxx                          |    2 
 svx/source/form/tbxform.cxx                         |    8 
 svx/source/inc/datanavi.hxx                         |    2 
 svx/source/inc/filtnav.hxx                          |    2 
 svx/source/inc/fmPropBrw.hxx                        |    2 
 svx/source/inc/fmexpl.hxx                           |    2 
 svx/source/inc/tabwin.hxx                           |    2 
 svx/source/inc/tbxform.hxx                          |    4 
 svx/source/items/TransformAnchor.cxx                |   23 
 svx/source/mnuctrls/clipboardctl.cxx                |    2 
 svx/source/sidebar/paragraph/ParaSpacingControl.cxx |    4 
 svx/source/stbctrls/insctrl.cxx                     |    2 
 svx/source/stbctrls/modctrl.cxx                     |    2 
 svx/source/stbctrls/pszctrl.cxx                     |    2 
 svx/source/stbctrls/selctrl.cxx                     |    2 
 svx/source/stbctrls/xmlsecctrl.cxx                  |    2 
 svx/source/stbctrls/zoomctrl.cxx                    |    2 
 svx/source/stbctrls/zoomsliderctrl.cxx              |    2 
 svx/source/tbxctrls/fillctrl.cxx                    |    2 
 svx/source/tbxctrls/formatpaintbrushctrl.cxx        |    4 
 svx/source/tbxctrls/grafctrl.cxx                    |    4 
 svx/source/tbxctrls/layctrl.cxx                     |    6 
 svx/source/tbxctrls/lboxctrl.cxx                    |    2 
 svx/source/tbxctrls/linectrl.cxx                    |    4 
 svx/source/tbxctrls/tbcontrl.cxx                    |    8 
 svx/source/tbxctrls/tbxdrctl.cxx                    |    4 
 svx/source/tbxctrls/verttexttbxctrl.cxx             |    4 
 sw/CppunitTest_sw_uwriter.mk                        |    1 
 sw/source/uibase/inc/bookctrl.hxx                   |    2 
 sw/source/uibase/inc/navipi.hxx                     |    2 
 sw/source/uibase/inc/tmplctrl.hxx                   |    2 
 sw/source/uibase/inc/viewlayoutctrl.hxx             |    2 
 sw/source/uibase/inc/wordcountctrl.hxx              |    2 
 sw/source/uibase/inc/workctrl.hxx                   |    4 
 sw/source/uibase/inc/zoomctrl.hxx                   |    2 
 sw/source/uibase/ribbar/workctrl.cxx                |    4 
 sw/source/uibase/shells/drwbassh.cxx                |    9 
 sw/source/uibase/utlui/bookctrl.cxx                 |    2 
 sw/source/uibase/utlui/navipi.cxx                   |    2 
 sw/source/uibase/utlui/tmplctrl.cxx                 |    2 
 sw/source/uibase/utlui/viewlayoutctrl.cxx           |    2 
 sw/source/uibase/utlui/wordcountctrl.cxx            |    2 
 sw/source/uibase/utlui/zoomctrl.cxx                 |    4 
 156 files changed, 2255 insertions(+), 1631 deletions(-)

New commits:
commit ce90a2a9523e618baf750a64fa47a0416ccaad77
Author:     Armin Le Grand <Armin.Le.Grand at me.com>
AuthorDate: Sun May 5 17:09:42 2019 +0200
Commit:     Armin Le Grand <Armin.Le.Grand at me.com>
CommitDate: Sun May 5 17:09:42 2019 +0200

    WIP: Re-simplified StateChanged interface
    
    Change-Id: Ib0aa5e964fe1bb9365cd1f9d4fffe448134663cb

diff --git a/avmedia/source/framework/mediatoolbox.cxx b/avmedia/source/framework/mediatoolbox.cxx
index 5ea08e096ffa..8ab74c28b02e 100644
--- a/avmedia/source/framework/mediatoolbox.cxx
+++ b/avmedia/source/framework/mediatoolbox.cxx
@@ -83,7 +83,7 @@ MediaToolBoxControl::~MediaToolBoxControl()
 }
 
 
-void MediaToolBoxControl::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+void MediaToolBoxControl::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     MediaToolBoxControl_Impl* pCtrl = static_cast< MediaToolBoxControl_Impl* >( GetToolBox().GetItemWindow( GetId() ) );
 
diff --git a/basctl/source/basicide/IDEComboBox.cxx b/basctl/source/basicide/IDEComboBox.cxx
index d90c5d395b74..805ea2e47d0a 100644
--- a/basctl/source/basicide/IDEComboBox.cxx
+++ b/basctl/source/basicide/IDEComboBox.cxx
@@ -58,7 +58,7 @@ LibBoxControl::LibBoxControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx)
 {
 }
 
-void LibBoxControl::StateChanged(sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const ::std::unique_ptr<const ::Item::ItemBase>& /*rSlotItem*/)
+void LibBoxControl::StateChanged(sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const ::Item::ItemBase* /*pSlotItem*/)
 {
     LibBox* pBox = static_cast<LibBox*>(GetToolBox().GetItemWindow(GetId()));
 
@@ -335,7 +335,7 @@ LanguageBoxControl::LanguageBoxControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolB
 {
 }
 
-void LanguageBoxControl::StateChanged(sal_uInt16, SfxItemState eState, const SfxPoolItem* pItem, const ::std::unique_ptr<const ::Item::ItemBase>& /*rSlotItem*/)
+void LanguageBoxControl::StateChanged(sal_uInt16, SfxItemState eState, const SfxPoolItem* pItem, const ::Item::ItemBase* /*pSlotItem*/)
 {
     if (LanguageBox* pBox = static_cast<LanguageBox*>(GetToolBox().GetItemWindow(GetId())))
     {
diff --git a/basctl/source/inc/IDEComboBox.hxx b/basctl/source/inc/IDEComboBox.hxx
index aa67d1d7576e..8b05ecf15ce9 100644
--- a/basctl/source/inc/IDEComboBox.hxx
+++ b/basctl/source/inc/IDEComboBox.hxx
@@ -60,7 +60,7 @@ public:
      * @param pState --
      */
     virtual void StateChanged(sal_uInt16 nSlotID, SfxItemState eState,
-                              const SfxPoolItem* pState, const ::std::unique_ptr<const ::Item::ItemBase>& rSlotItem) override;
+                              const SfxPoolItem* pState, const ::Item::ItemBase* pSlotItem) override;
     /*!
      * Create combobox of Macro and Dialog Library
      *
@@ -189,7 +189,7 @@ public:
      * @param pState --
      */
     virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
-                              const SfxPoolItem* pState, const ::std::unique_ptr<const ::Item::ItemBase>& rSlotItem) override;
+                              const SfxPoolItem* pState, const ::Item::ItemBase* pSlotItem) override;
     /*!
      * Create ComboBox of Language
      *
diff --git a/cui/source/dialogs/cuihyperdlg.cxx b/cui/source/dialogs/cuihyperdlg.cxx
index 53c07d4e9115..0bfbe9025d48 100644
--- a/cui/source/dialogs/cuihyperdlg.cxx
+++ b/cui/source/dialogs/cuihyperdlg.cxx
@@ -57,7 +57,7 @@ void SvxHlinkCtrl::dispose()
 }
 
 void SvxHlinkCtrl::StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                 const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                 const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     if ( eState == SfxItemState::DEFAULT && !pParent->IsDisposed() )
     {
diff --git a/cui/source/inc/cuihyperdlg.hxx b/cui/source/inc/cuihyperdlg.hxx
index bb7dc8ee05b2..62e9a3f3f6f4 100644
--- a/cui/source/inc/cuihyperdlg.hxx
+++ b/cui/source/inc/cuihyperdlg.hxx
@@ -61,7 +61,7 @@ public:
     virtual void dispose() override;
 
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 };
 
 
diff --git a/include/avmedia/mediatoolbox.hxx b/include/avmedia/mediatoolbox.hxx
index fb1350a5e34e..49ee3da80140 100644
--- a/include/avmedia/mediatoolbox.hxx
+++ b/include/avmedia/mediatoolbox.hxx
@@ -40,7 +40,7 @@ public:
                                 MediaToolBoxControl( sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbX );
                                 virtual ~MediaToolBoxControl() override;
 
-    virtual void                StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void                StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window* pParent ) override;
 
 private:
diff --git a/include/sfx2/ctrlitem.hxx b/include/sfx2/ctrlitem.hxx
index 6d6e5cec95a1..aa0f1a2dd89d 100644
--- a/include/sfx2/ctrlitem.hxx
+++ b/include/sfx2/ctrlitem.hxx
@@ -63,7 +63,7 @@ public:
     sal_uInt16          GetId() const { return nId; }
 
     virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                      const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem );
+                                      const SfxPoolItem* pState, const Item::ItemBase* pSlotItem );
 
     MapUnit             GetCoreMetric() const;
 
@@ -79,7 +79,7 @@ class SFX2_DLLPUBLIC SfxStatusForwarder: public SfxControllerItem
 
 protected:
     virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                      const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                      const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
 public:
                             SfxStatusForwarder( sal_uInt16 nSlotId,
diff --git a/include/sfx2/sfxstatuslistener.hxx b/include/sfx2/sfxstatuslistener.hxx
index afef59f953a1..1b333608adf6 100644
--- a/include/sfx2/sfxstatuslistener.hxx
+++ b/include/sfx2/sfxstatuslistener.hxx
@@ -51,7 +51,7 @@ class SFX2_DLLPUBLIC SfxStatusListener : public cppu::WeakImplHelper<
             sal_uInt16 nSID,
             SfxItemState eState,
             const SfxPoolItem* pState,
-            const std::unique_ptr<const Item::ItemBase>& rSlotItem );
+            const Item::ItemBase* pSlotItem );
 
         // XComponent
         virtual void SAL_CALL dispose() override;
diff --git a/include/sfx2/sidebar/ControllerItem.hxx b/include/sfx2/sidebar/ControllerItem.hxx
index 4c6159cdabe2..173e20a0def8 100644
--- a/include/sfx2/sidebar/ControllerItem.hxx
+++ b/include/sfx2/sidebar/ControllerItem.hxx
@@ -76,7 +76,7 @@ public:
 
 protected:
 
-    virtual void StateChanged (sal_uInt16 nSId, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+    virtual void StateChanged (sal_uInt16 nSId, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
 
 private:
     ItemUpdateReceiverInterface& mrItemUpdateReceiver;
diff --git a/include/sfx2/stbitem.hxx b/include/sfx2/stbitem.hxx
index 0279295cb143..a153b54bfd5a 100644
--- a/include/sfx2/stbitem.hxx
+++ b/include/sfx2/stbitem.hxx
@@ -94,7 +94,7 @@ protected:
 
     // Old sfx2 interface
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem );
+                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem );
     virtual void    Click();
     virtual void    Command( const CommandEvent& rCEvt );
     virtual bool    MouseButtonDown( const MouseEvent & );
diff --git a/include/sfx2/tbxctrl.hxx b/include/sfx2/tbxctrl.hxx
index cbb7a537007f..2bf0cdd4d414 100644
--- a/include/sfx2/tbxctrl.hxx
+++ b/include/sfx2/tbxctrl.hxx
@@ -137,7 +137,7 @@ protected:
     DECL_LINK( ClosePopupWindow, SfxPopupWindow *, void );
 
     // old SfxToolBoxControl methods
-    virtual void               StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem );
+    virtual void               StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem );
     virtual void               Select( sal_uInt16 nSelectModifier );
 
     virtual void               DoubleClick();
diff --git a/include/sfx2/unoctitm.hxx b/include/sfx2/unoctitm.hxx
index 8e56f94da7c8..65f9f13687b9 100644
--- a/include/sfx2/unoctitm.hxx
+++ b/include/sfx2/unoctitm.hxx
@@ -130,7 +130,7 @@ public:
     static OUString getSlaveCommand( const css::util::URL& rURL );
 
     void                StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, SfxSlotServer const * pServ );
-    virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     void                setMasterSlaveCommand( bool bSet );
     /// @throws css::uno::RuntimeException
     void       dispatch( const css::util::URL& aURL,
diff --git a/include/svx/ParaSpacingControl.hxx b/include/svx/ParaSpacingControl.hxx
index 3a89b2436aec..f75d0a4deb57 100644
--- a/include/svx/ParaSpacingControl.hxx
+++ b/include/svx/ParaSpacingControl.hxx
@@ -37,7 +37,7 @@ public:
     virtual ~ParaULSpacingControl() override;
 
     virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
-                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
     virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override = 0;
 };
 
@@ -71,7 +71,7 @@ public:
     virtual void SAL_CALL dispose() override;
 
     virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
-                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
     virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override = 0;
 
     // XContextChangeEventListener
diff --git a/include/svx/bmpmask.hxx b/include/svx/bmpmask.hxx
index bf4573aad50b..34f7832377a1 100644
--- a/include/svx/bmpmask.hxx
+++ b/include/svx/bmpmask.hxx
@@ -59,7 +59,7 @@ private:
 
 protected:
     virtual void StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                               const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                               const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
 public:
     SvxBmpMaskSelectItem( SvxBmpMask& rMask,
diff --git a/include/svx/clipboardctl.hxx b/include/svx/clipboardctl.hxx
index 858f841bfd36..1d8ca3374afe 100644
--- a/include/svx/clipboardctl.hxx
+++ b/include/svx/clipboardctl.hxx
@@ -49,7 +49,7 @@ public:
     virtual VclPtr<SfxPopupWindow> CreatePopupWindow() override;
     virtual void                StateChanged( sal_uInt16 nSID,
                                               SfxItemState eState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 };
 
 #endif
diff --git a/include/svx/fillctrl.hxx b/include/svx/fillctrl.hxx
index 64233ea8db50..ef1ae5de7d61 100644
--- a/include/svx/fillctrl.hxx
+++ b/include/svx/fillctrl.hxx
@@ -70,7 +70,7 @@ public:
     SvxFillToolBoxControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx);
     virtual ~SvxFillToolBoxControl() override;
 
-    virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+    virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
     void Update();
     virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override;
 };
diff --git a/include/svx/float3d.hxx b/include/svx/float3d.hxx
index 6c928483caf5..c70bece5e18c 100644
--- a/include/svx/float3d.hxx
+++ b/include/svx/float3d.hxx
@@ -236,7 +236,7 @@ class Svx3DCtrlItem : public SfxControllerItem
 {
  protected:
     virtual void StateChanged( sal_uInt16 nSId, SfxItemState eState,
-                                const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
  public:
     Svx3DCtrlItem( sal_uInt16, SfxBindings* );
@@ -254,7 +254,7 @@ class SvxConvertTo3DItem : public SfxControllerItem
     bool                        bState;
 
 protected:
-    virtual void StateChanged(sal_uInt16 nSId, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+    virtual void StateChanged(sal_uInt16 nSId, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
 
 public:
     SvxConvertTo3DItem(sal_uInt16 nId, SfxBindings* pBindings);
diff --git a/include/svx/fontwork.hxx b/include/svx/fontwork.hxx
index 508edf47d734..660b3ac84e43 100644
--- a/include/svx/fontwork.hxx
+++ b/include/svx/fontwork.hxx
@@ -58,7 +58,7 @@ class SvxFontWorkControllerItem : public SfxControllerItem
 
 protected:
     virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
-                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
 
 public:
     SvxFontWorkControllerItem(sal_uInt16 nId, SvxFontWorkDialog&, SfxBindings&);
diff --git a/include/svx/formatpaintbrushctrl.hxx b/include/svx/formatpaintbrushctrl.hxx
index 6ff4ac22226c..f651f232938a 100644
--- a/include/svx/formatpaintbrushctrl.hxx
+++ b/include/svx/formatpaintbrushctrl.hxx
@@ -41,7 +41,7 @@ public:
     virtual void    Select(sal_uInt16 nSelectModifier) override;
 
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 private:
     DECL_LINK( WaitDoubleClickHdl, Timer*, void );
     void impl_executePaintBrush();
diff --git a/include/svx/grafctrl.hxx b/include/svx/grafctrl.hxx
index 376c4bc71d5d..d54f77762b8b 100644
--- a/include/svx/grafctrl.hxx
+++ b/include/svx/grafctrl.hxx
@@ -32,7 +32,7 @@ public:
     SvxGrafToolBoxControl( sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx );
     virtual ~SvxGrafToolBoxControl() override;
 
-    virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window *pParent ) override;
 };
 
@@ -100,7 +100,7 @@ public:
                         SvxGrafModeToolBoxControl( sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx );
                         virtual ~SvxGrafModeToolBoxControl() override;
 
-    virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window *pParent ) override;
 };
 
diff --git a/include/svx/imapdlg.hxx b/include/svx/imapdlg.hxx
index 6c4c26b22623..c3d2e6f1b6d1 100644
--- a/include/svx/imapdlg.hxx
+++ b/include/svx/imapdlg.hxx
@@ -67,7 +67,7 @@ class SvxIMapDlgItem : public SfxControllerItem
 protected:
 
     virtual void StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                               const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                               const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
 
 public:
diff --git a/include/svx/insctrl.hxx b/include/svx/insctrl.hxx
index 539ff2a409b8..fb20e3cdacdf 100644
--- a/include/svx/insctrl.hxx
+++ b/include/svx/insctrl.hxx
@@ -27,7 +27,7 @@ class SVX_DLLPUBLIC SvxInsertStatusBarControl : public SfxStatusBarControl
 {
 public:
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void    Paint( const UserDrawEvent& rEvt ) override;
 
     SFX_DECL_STATUSBAR_CONTROL();
diff --git a/include/svx/layctrl.hxx b/include/svx/layctrl.hxx
index bf3afec5d14b..47ba821b14fe 100644
--- a/include/svx/layctrl.hxx
+++ b/include/svx/layctrl.hxx
@@ -31,7 +31,7 @@ public:
     virtual VclPtr<SfxPopupWindow> CreatePopupWindow() override;
     virtual void                StateChanged( sal_uInt16 nSID,
                                               SfxItemState eState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
     SFX_DECL_TOOLBOX_CONTROL();
 
@@ -52,7 +52,7 @@ public:
 
     virtual void                StateChanged( sal_uInt16 nSID,
                                               SfxItemState eState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 };
 
 #endif
diff --git a/include/svx/lboxctrl.hxx b/include/svx/lboxctrl.hxx
index 4e7ef45f155e..683aee14a15b 100644
--- a/include/svx/lboxctrl.hxx
+++ b/include/svx/lboxctrl.hxx
@@ -49,7 +49,7 @@ public:
 
     virtual void StateChanged( sal_uInt16 nSID,
                                SfxItemState eState,
-                               const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                               const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
     virtual VclPtr<SfxPopupWindow> CreatePopupWindow() override;
 };
diff --git a/include/svx/linectrl.hxx b/include/svx/linectrl.hxx
index 77fba627ed03..cc68463b2d75 100644
--- a/include/svx/linectrl.hxx
+++ b/include/svx/linectrl.hxx
@@ -51,7 +51,7 @@ public:
     virtual ~SvxLineStyleToolBoxControl() override;
 
     virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                      const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                      const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     void                Update( const SfxPoolItem* pState );
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window *pParent ) override;
 };
@@ -69,7 +69,7 @@ public:
     virtual ~SvxLineWidthToolBoxControl() override;
 
     virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                      const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                      const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window *pParent ) override;
 };
 
diff --git a/include/svx/modctrl.hxx b/include/svx/modctrl.hxx
index 20b5543d94da..3410f3fa9b17 100644
--- a/include/svx/modctrl.hxx
+++ b/include/svx/modctrl.hxx
@@ -31,7 +31,7 @@ class SVX_DLLPUBLIC SvxModifyControl : public SfxStatusBarControl
 {
 public:
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void    Paint( const UserDrawEvent& rUsrEvt ) override;
     virtual void    Click() override;
 
diff --git a/include/svx/pszctrl.hxx b/include/svx/pszctrl.hxx
index b68d75e490a9..c464349416ed 100644
--- a/include/svx/pszctrl.hxx
+++ b/include/svx/pszctrl.hxx
@@ -37,7 +37,7 @@ public:
     SvxPosSizeStatusBarControl( sal_uInt16 nSlotId, sal_uInt16 nId, StatusBar& rStb );
     virtual ~SvxPosSizeStatusBarControl() override;
 
-    virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void    Paint( const UserDrawEvent& rEvt ) override;
     virtual void    Command( const CommandEvent& rCEvt ) override;
 };
diff --git a/include/svx/selctrl.hxx b/include/svx/selctrl.hxx
index a062ec0ce009..f153b8447c6d 100644
--- a/include/svx/selctrl.hxx
+++ b/include/svx/selctrl.hxx
@@ -32,7 +32,7 @@ public:
     SvxSelectionModeControl( sal_uInt16 nSlotId, sal_uInt16 nId, StatusBar& rStb );
 
     virtual void     StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                   const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                   const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual bool     MouseButtonDown( const MouseEvent& rEvt ) override;
     virtual void     Paint( const UserDrawEvent& rEvt ) override;
 
diff --git a/include/svx/tbcontrl.hxx b/include/svx/tbcontrl.hxx
index 8d335964b4e6..c2cef8bc7560 100644
--- a/include/svx/tbcontrl.hxx
+++ b/include/svx/tbcontrl.hxx
@@ -170,7 +170,7 @@ public:
     virtual VclPtr<vcl::Window> CreateItemWindow(vcl::Window* pParent) override;
 
     virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
-                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
 
     DECL_LINK( VisibilityNotification, SvxStyleBox_Impl&, void );
 protected:
@@ -259,7 +259,7 @@ public:
     virtual ~SvxSimpleUndoRedoController() override;
 
     virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
-                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
 };
 
 class SVX_DLLPUBLIC SvxCurrencyToolBoxControl : public svt::PopupWindowController
diff --git a/include/svx/tbxctl.hxx b/include/svx/tbxctl.hxx
index fc74a94c9f7d..97153a413579 100644
--- a/include/svx/tbxctl.hxx
+++ b/include/svx/tbxctl.hxx
@@ -46,7 +46,7 @@ public:
 
     virtual void                Select(sal_uInt16 nSelectModifier) override;
     virtual void                StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 };
 
 #endif
diff --git a/include/svx/verttexttbxctrl.hxx b/include/svx/verttexttbxctrl.hxx
index 2af62c30eafc..e4858dc6acf1 100644
--- a/include/svx/verttexttbxctrl.hxx
+++ b/include/svx/verttexttbxctrl.hxx
@@ -35,7 +35,7 @@ public:
     virtual void SAL_CALL initialize(const css::uno::Sequence<css::uno::Any>& rArguments) override;
 
     virtual void                StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 };
 
 class SVX_DLLPUBLIC SvxCTLTextTbxCtrl : public SvxVertCTLTextTbxCtrl
diff --git a/include/svx/xmlsecctrl.hxx b/include/svx/xmlsecctrl.hxx
index b691784f6cd3..ec8987e3e173 100644
--- a/include/svx/xmlsecctrl.hxx
+++ b/include/svx/xmlsecctrl.hxx
@@ -39,7 +39,7 @@ public:
     XmlSecStatusBarControl( sal_uInt16 _nSlotId, sal_uInt16 _nId, StatusBar& _rStb );
     virtual ~XmlSecStatusBarControl() override;
 
-    virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void    Paint( const UserDrawEvent& rEvt ) override;
     virtual void    Command( const CommandEvent& rCEvt ) override;
 };
diff --git a/include/svx/zoomctrl.hxx b/include/svx/zoomctrl.hxx
index 8fa1a044306e..f40ef55f535d 100644
--- a/include/svx/zoomctrl.hxx
+++ b/include/svx/zoomctrl.hxx
@@ -32,7 +32,7 @@ private:
 
 public:
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void    Paint( const UserDrawEvent& rEvt ) override;
     virtual void    Command( const CommandEvent& rCEvt ) override;
 
diff --git a/include/svx/zoomsliderctrl.hxx b/include/svx/zoomsliderctrl.hxx
index d112c118c4dc..719ae5dc9c6c 100644
--- a/include/svx/zoomsliderctrl.hxx
+++ b/include/svx/zoomsliderctrl.hxx
@@ -44,7 +44,7 @@ public:
     SvxZoomSliderControl( sal_uInt16 _nSlotId, sal_uInt16 _nId, StatusBar& _rStb );
     virtual ~SvxZoomSliderControl() override;
 
-    virtual void  StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void  StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void  Paint( const UserDrawEvent& rEvt ) override;
     virtual bool  MouseButtonDown( const MouseEvent & ) override;
     virtual bool  MouseButtonUp( const MouseEvent & ) override;
diff --git a/reportdesign/source/ui/misc/statusbarcontroller.cxx b/reportdesign/source/ui/misc/statusbarcontroller.cxx
index c05f961ae033..a3e1427a8c68 100644
--- a/reportdesign/source/ui/misc/statusbarcontroller.cxx
+++ b/reportdesign/source/ui/misc/statusbarcontroller.cxx
@@ -140,10 +140,9 @@ void SAL_CALL OStatusbarController::statusChanged( const FeatureStateEvent& _aEv
             Sequence< PropertyValue > aSeq;
             if ( (_aEvent.State >>= aSeq) && aSeq.getLength() == 2 )
             {
-                const std::unique_ptr<const Item::ItemBase> aSlotItem;
                 SvxZoomSliderItem aZoomSlider(100,20,400);
                 aZoomSlider.PutValue(_aEvent.State, 0);
-                static_cast<SvxZoomSliderControl*>(m_rController.get())->StateChanged(m_nSlotId,SfxItemState::DEFAULT,&aZoomSlider,aSlotItem);
+                static_cast<SvxZoomSliderControl*>(m_rController.get())->StateChanged(m_nSlotId,SfxItemState::DEFAULT,&aZoomSlider,nullptr);
             }
         }
         else if ( m_aCommandURL == ".uno:Zoom" )
@@ -151,10 +150,9 @@ void SAL_CALL OStatusbarController::statusChanged( const FeatureStateEvent& _aEv
             Sequence< PropertyValue > aSeq;
             if ( (_aEvent.State >>= aSeq) && aSeq.getLength() == 3 )
             {
-                const std::unique_ptr<const Item::ItemBase> aSlotItem;
                 SvxZoomItem aZoom;
                 aZoom.PutValue(_aEvent.State, 0 );
-                static_cast<SvxZoomStatusBarControl*>(m_rController.get())->StateChanged(m_nSlotId,SfxItemState::DEFAULT,&aZoom,aSlotItem);
+                static_cast<SvxZoomStatusBarControl*>(m_rController.get())->StateChanged(m_nSlotId,SfxItemState::DEFAULT,&aZoom,nullptr);
             }
         }
     }
diff --git a/sc/inc/NumberFormatControl.hxx b/sc/inc/NumberFormatControl.hxx
index eb8ae901960b..9f9637c4ff10 100644
--- a/sc/inc/NumberFormatControl.hxx
+++ b/sc/inc/NumberFormatControl.hxx
@@ -34,7 +34,7 @@ public:
     virtual ~ScNumberFormatControl() override;
 
     virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
-                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window *pParent ) override;
 };
 
diff --git a/sc/source/ui/cctrl/tbzoomsliderctrl.cxx b/sc/source/ui/cctrl/tbzoomsliderctrl.cxx
index 85f93efca26d..329a91f09609 100644
--- a/sc/source/ui/cctrl/tbzoomsliderctrl.cxx
+++ b/sc/source/ui/cctrl/tbzoomsliderctrl.cxx
@@ -46,7 +46,7 @@ ScZoomSliderControl::~ScZoomSliderControl()
 }
 
 void ScZoomSliderControl::StateChanged( sal_uInt16 /*nSID*/, SfxItemState eState,
-                                       const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                       const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     sal_uInt16                  nId  = GetId();
     ToolBox&                rTbx = GetToolBox();
diff --git a/sc/source/ui/inc/navcitem.hxx b/sc/source/ui/inc/navcitem.hxx
index ae7c35775b46..63bcf293114f 100644
--- a/sc/source/ui/inc/navcitem.hxx
+++ b/sc/source/ui/inc/navcitem.hxx
@@ -32,7 +32,7 @@ public:
                                SfxBindings& rBindings );
 protected:
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                      const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                      const SfxPoolItem* pItem, const Item::ItemBase* pSlotItem ) override;
 
 private:
     ScNavigatorDlg& rNavigatorDlg;
diff --git a/sc/source/ui/inc/tbzoomsliderctrl.hxx b/sc/source/ui/inc/tbzoomsliderctrl.hxx
index d9fb1f26bf03..5cc49909de3c 100644
--- a/sc/source/ui/inc/tbzoomsliderctrl.hxx
+++ b/sc/source/ui/inc/tbzoomsliderctrl.hxx
@@ -34,7 +34,7 @@ public:
     ScZoomSliderControl( sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx );
     virtual ~ScZoomSliderControl() override;
 
-    virtual void StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window *pParent ) override;
 };
 
diff --git a/sc/source/ui/navipi/navcitem.cxx b/sc/source/ui/navipi/navcitem.cxx
index 660ec1079892..b3ca207a2679 100644
--- a/sc/source/ui/navipi/navcitem.cxx
+++ b/sc/source/ui/navipi/navcitem.cxx
@@ -34,7 +34,7 @@ ScNavigatorControllerItem::ScNavigatorControllerItem( sal_uInt16          nIdP,
 }
 
 void ScNavigatorControllerItem::StateChanged( sal_uInt16 /* nSID */, SfxItemState /* eState */,
-                                                          const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                                          const SfxPoolItem* pItem, const Item::ItemBase* /*pSlotItem*/ )
 {
     switch( GetId() )
     {
diff --git a/sc/source/ui/sidebar/NumberFormatControl.cxx b/sc/source/ui/sidebar/NumberFormatControl.cxx
index b6548b496a77..3c33c7de6aa6 100644
--- a/sc/source/ui/sidebar/NumberFormatControl.cxx
+++ b/sc/source/ui/sidebar/NumberFormatControl.cxx
@@ -36,7 +36,7 @@ ScNumberFormatControl::~ScNumberFormatControl()
 }
 
 void ScNumberFormatControl::StateChanged(sal_uInt16, SfxItemState eState,
-                                         const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+                                         const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     sal_uInt16 nId = GetId();
     ToolBox& rTbx = GetToolBox();
diff --git a/sd/source/ui/app/tmplctrl.cxx b/sd/source/ui/app/tmplctrl.cxx
index 3adf706c4167..36f82c007577 100644
--- a/sd/source/ui/app/tmplctrl.cxx
+++ b/sd/source/ui/app/tmplctrl.cxx
@@ -75,7 +75,7 @@ SdTemplateControl::~SdTemplateControl()
 }
 
 void SdTemplateControl::StateChanged(
-    sal_uInt16 /*nSID*/, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+    sal_uInt16 /*nSID*/, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     if( eState != SfxItemState::DEFAULT || pState->IsVoidItem() )
         GetStatusBar().SetItemText( GetId(), OUString() );
diff --git a/sd/source/ui/dlg/animobjs.cxx b/sd/source/ui/dlg/animobjs.cxx
index e2c0d94f71ff..5c354567ab49 100644
--- a/sd/source/ui/dlg/animobjs.cxx
+++ b/sd/source/ui/dlg/animobjs.cxx
@@ -1112,7 +1112,7 @@ AnimationControllerItem::AnimationControllerItem(
 }
 
 void AnimationControllerItem::StateChanged( sal_uInt16 nSId,
-                        SfxItemState eState, const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                        SfxItemState eState, const SfxPoolItem* pItem, const Item::ItemBase* /*pSlotItem*/ )
 {
     if( eState >= SfxItemState::DEFAULT && nSId == SID_ANIMATOR_STATE )
     {
diff --git a/sd/source/ui/dlg/diactrl.cxx b/sd/source/ui/dlg/diactrl.cxx
index 574d9ccba882..ffd533ce6f8a 100644
--- a/sd/source/ui/dlg/diactrl.cxx
+++ b/sd/source/ui/dlg/diactrl.cxx
@@ -99,7 +99,7 @@ SdTbxCtlDiaPages::~SdTbxCtlDiaPages()
 }
 
 void SdTbxCtlDiaPages::StateChanged( sal_uInt16,
-                SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     SdPagesField* pFld = static_cast<SdPagesField*>( GetToolBox().GetItemWindow( GetId() ) );
     DBG_ASSERT( pFld, "Window not found" );
diff --git a/sd/source/ui/dlg/gluectrl.cxx b/sd/source/ui/dlg/gluectrl.cxx
index ed4ad0b06c80..ecbc83521f14 100644
--- a/sd/source/ui/dlg/gluectrl.cxx
+++ b/sd/source/ui/dlg/gluectrl.cxx
@@ -115,7 +115,7 @@ SdTbxCtlGlueEscDir::SdTbxCtlGlueEscDir(
  * Represents state in the listbox of the controller
  */
 void SdTbxCtlGlueEscDir::StateChanged( sal_uInt16 nSId,
-                        SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem )
+                        SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem )
 {
     if( eState == SfxItemState::DEFAULT )
     {
@@ -144,7 +144,7 @@ void SdTbxCtlGlueEscDir::StateChanged( sal_uInt16 nSId,
         }
     }
 
-    SfxToolBoxControl::StateChanged( nSId, eState, pState, rSlotItem );
+    SfxToolBoxControl::StateChanged( nSId, eState, pState, pSlotItem );
 }
 
 VclPtr<vcl::Window> SdTbxCtlGlueEscDir::CreateItemWindow( vcl::Window *pParent )
diff --git a/sd/source/ui/dlg/navigatr.cxx b/sd/source/ui/dlg/navigatr.cxx
index 9a0e2afa1919..58c0e694ffe4 100644
--- a/sd/source/ui/dlg/navigatr.cxx
+++ b/sd/source/ui/dlg/navigatr.cxx
@@ -780,7 +780,7 @@ SdNavigatorControllerItem::SdNavigatorControllerItem(
 }
 
 void SdNavigatorControllerItem::StateChanged( sal_uInt16 nSId,
-                        SfxItemState eState, const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                        SfxItemState eState, const SfxPoolItem* pItem, const Item::ItemBase* /*pSlotItem*/ )
 {
     if( !(eState >= SfxItemState::DEFAULT && nSId == SID_NAVIGATOR_STATE) )
         return;
@@ -851,7 +851,7 @@ SdPageNameControllerItem::SdPageNameControllerItem(
 }
 
 void SdPageNameControllerItem::StateChanged( sal_uInt16 nSId,
-                        SfxItemState eState, const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                        SfxItemState eState, const SfxPoolItem* pItem, const Item::ItemBase* /*pSlotItem*/ )
 {
     if( !(eState >= SfxItemState::DEFAULT && nSId == SID_NAVIGATOR_PAGENAME) )
         return;
diff --git a/sd/source/ui/inc/animobjs.hxx b/sd/source/ui/inc/animobjs.hxx
index 28eef0418a75..d5714f09f96b 100644
--- a/sd/source/ui/inc/animobjs.hxx
+++ b/sd/source/ui/inc/animobjs.hxx
@@ -154,7 +154,7 @@ public:
 
 protected:
     virtual void StateChanged( sal_uInt16 nSId, SfxItemState eState,
-        const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+        const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 private:
     VclPtr<AnimationWindow> pAnimationWin;
 };
diff --git a/sd/source/ui/inc/diactrl.hxx b/sd/source/ui/inc/diactrl.hxx
index 602f15e1dc7d..703fed9df6d4 100644
--- a/sd/source/ui/inc/diactrl.hxx
+++ b/sd/source/ui/inc/diactrl.hxx
@@ -49,7 +49,7 @@ class SdTbxCtlDiaPages : public SfxToolBoxControl
 {
 public:
     virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                      const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                      const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window *pParent ) override;
 
     SFX_DECL_TOOLBOX_CONTROL();
diff --git a/sd/source/ui/inc/gluectrl.hxx b/sd/source/ui/inc/gluectrl.hxx
index d40e2bbe485e..52408d155bf3 100644
--- a/sd/source/ui/inc/gluectrl.hxx
+++ b/sd/source/ui/inc/gluectrl.hxx
@@ -52,7 +52,7 @@ private:
 
 public:
     virtual void StateChanged( sal_uInt16 nSId, SfxItemState eState,
-                                const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window *pParent ) override;
 
             SFX_DECL_TOOLBOX_CONTROL();
diff --git a/sd/source/ui/inc/navigatr.hxx b/sd/source/ui/inc/navigatr.hxx
index 557d9398961d..034ba08edbe0 100644
--- a/sd/source/ui/inc/navigatr.hxx
+++ b/sd/source/ui/inc/navigatr.hxx
@@ -159,7 +159,7 @@ public:
 
 protected:
     virtual void StateChanged( sal_uInt16 nSId, SfxItemState eState,
-                                const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
 private:
     VclPtr<SdNavigatorWin> pNavigatorWin;
@@ -176,7 +176,7 @@ public:
 
 protected:
     virtual void StateChanged( sal_uInt16 nSId, SfxItemState eState,
-                                const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
 private:
     VclPtr<SdNavigatorWin> pNavigatorWin;
diff --git a/sd/source/ui/inc/tmplctrl.hxx b/sd/source/ui/inc/tmplctrl.hxx
index 7416adafb265..05c82969b724 100644
--- a/sd/source/ui/inc/tmplctrl.hxx
+++ b/sd/source/ui/inc/tmplctrl.hxx
@@ -27,7 +27,7 @@ public:
     SdTemplateControl( sal_uInt16 nSlotId, sal_uInt16 nId, StatusBar& rStb );
     virtual ~SdTemplateControl() override;
 
-    virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void    Paint( const UserDrawEvent& rEvt ) override;
 
     SFX_DECL_STATUSBAR_CONTROL();
diff --git a/sd/source/ui/view/sdruler.cxx b/sd/source/ui/view/sdruler.cxx
index 1a091c4800a7..81a6a3bed478 100644
--- a/sd/source/ui/view/sdruler.cxx
+++ b/sd/source/ui/view/sdruler.cxx
@@ -41,7 +41,7 @@ class RulerCtrlItem : public SfxControllerItem
 
  protected:
     virtual void StateChanged( sal_uInt16 nSId, SfxItemState eState,
-                                const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                const SfxPoolItem* pItem, const Item::ItemBase* pSlotItem ) override;
 
  public:
     RulerCtrlItem(Ruler& rRlr, SfxBindings& rBind);
@@ -53,7 +53,7 @@ RulerCtrlItem::RulerCtrlItem(Ruler& rRlr, SfxBindings& rBind)
 {
 }
 
-void RulerCtrlItem::StateChanged( sal_uInt16 nSId, SfxItemState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void RulerCtrlItem::StateChanged( sal_uInt16 nSId, SfxItemState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     switch( nSId )
     {
diff --git a/sfx2/inc/inettbc.hxx b/sfx2/inc/inettbc.hxx
index ba896256c103..9d8dbdfb5497 100644
--- a/sfx2/inc/inettbc.hxx
+++ b/sfx2/inc/inettbc.hxx
@@ -54,7 +54,7 @@ public:
     virtual                 ~SfxURLToolBoxControl_Impl() override;
 
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window* pParent ) override;
-    virtual void            StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void            StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 };
 
 #endif
diff --git a/sfx2/source/control/ctrlitem.cxx b/sfx2/source/control/ctrlitem.cxx
index bb0775758027..28480e962211 100644
--- a/sfx2/source/control/ctrlitem.cxx
+++ b/sfx2/source/control/ctrlitem.cxx
@@ -212,7 +212,7 @@ void SfxControllerItem::StateChanged
     sal_uInt16,          // <SID> of the triggering slot
     SfxItemState,       // <SfxItemState> of 'pState'
     const SfxPoolItem*,  // Slot-Status, NULL or IsInvalidItem()
-    const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/
+    const Item::ItemBase* /*pSlotItem*/
 )
 
 /*  [Description]
@@ -241,11 +241,11 @@ void SfxStatusForwarder::StateChanged
     sal_uInt16          nSID,    // <SID> of the triggering slot
     SfxItemState        eState,  // <SfxItemState> of 'pState'
     const SfxPoolItem*  pState,   // Slot-Status, NULL or IsInvalidItem()
-    const std::unique_ptr<const Item::ItemBase>& rSlotItem
+    const Item::ItemBase* pSlotItem
 )
 
 {
-    pMaster->StateChanged( nSID, eState, pState, rSlotItem );
+    pMaster->StateChanged( nSID, eState, pState, pSlotItem );
 }
 
 
diff --git a/sfx2/source/control/sfxstatuslistener.cxx b/sfx2/source/control/sfxstatuslistener.cxx
index f1b9fedd0b89..44455d37a3f0 100644
--- a/sfx2/source/control/sfxstatuslistener.cxx
+++ b/sfx2/source/control/sfxstatuslistener.cxx
@@ -64,7 +64,7 @@ SfxStatusListener::~SfxStatusListener()
 }
 
 // old sfx controller item C++ API
-void SfxStatusListener::StateChanged( sal_uInt16, SfxItemState, const SfxPoolItem*, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void SfxStatusListener::StateChanged( sal_uInt16, SfxItemState, const SfxPoolItem*, const Item::ItemBase* /*pSlotItem*/)
 {
     // must be implemented by sub class
 }
@@ -240,7 +240,7 @@ void SAL_CALL SfxStatusListener::statusChanged( const FeatureStateEvent& rEvent)
         }
     }
 
-    StateChanged( m_nSlotID, eState, pItem.get(), aSlotItem );
+    StateChanged( m_nSlotID, eState, pItem.get(), aSlotItem.get() );
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/source/control/statcach.cxx b/sfx2/source/control/statcach.cxx
index da0c210cb18f..59750ae7df01 100644
--- a/sfx2/source/control/statcach.cxx
+++ b/sfx2/source/control/statcach.cxx
@@ -155,7 +155,7 @@ void SAL_CALL  BindDispatch_Impl::statusChanged( const css::frame::FeatureStateE
         for ( SfxControllerItem *pCtrl = pCache->GetItemLink();
             pCtrl;
             pCtrl = pCtrl->GetItemLink() )
-            pCtrl->StateChanged( nId, eState, pItem.get(), aSlotItem );
+            pCtrl->StateChanged( nId, eState, pItem.get(), aSlotItem.get() );
     }
 }
 
@@ -375,17 +375,15 @@ void SfxStateCache::SetVisibleState( bool bShow )
     // Update Controller
     if ( !mxDispatch.is() && pController )
     {
-        const std::unique_ptr<const Item::ItemBase> aSlotItem;
         for ( SfxControllerItem *pCtrl = pController;
                 pCtrl;
                 pCtrl = pCtrl->GetItemLink() )
-            pCtrl->StateChanged( nId, eState, pState, aSlotItem );
+            pCtrl->StateChanged( nId, eState, pState, nullptr );
     }
 
     if ( pInternalController )
     {
-        const std::unique_ptr<const Item::ItemBase> aSlotItem;
-        pInternalController->StateChanged( nId, eState, pState, aSlotItem );
+        pInternalController->StateChanged( nId, eState, pState, nullptr );
     }
 
     if ( bDeleteItem )
@@ -427,11 +425,10 @@ void SfxStateCache::SetState_Impl
         // Update Controller
         if ( !mxDispatch.is() && pController )
         {
-            const std::unique_ptr<const Item::ItemBase> aSlotItem;
             for ( SfxControllerItem *pCtrl = pController;
                 pCtrl;
                 pCtrl = pCtrl->GetItemLink() )
-                pCtrl->StateChanged( nId, eState, pState, aSlotItem );
+                pCtrl->StateChanged( nId, eState, pState, nullptr );
         }
 
         if ( pInternalController )
@@ -467,11 +464,10 @@ void SfxStateCache::SetCachedState( bool bAlways )
     // Update Controller
     if ( !mxDispatch.is() && pController )
     {
-        const std::unique_ptr<const Item::ItemBase> aSlotItem;
         for ( SfxControllerItem *pCtrl = pController;
             pCtrl;
             pCtrl = pCtrl->GetItemLink() )
-            pCtrl->StateChanged( nId, eLastState, pLastItem, aSlotItem );
+            pCtrl->StateChanged( nId, eLastState, pLastItem, nullptr );
     }
 
     if ( pInternalController )
diff --git a/sfx2/source/control/unoctitm.cxx b/sfx2/source/control/unoctitm.cxx
index 94ff8351e017..88254fd5bd99 100644
--- a/sfx2/source/control/unoctitm.cxx
+++ b/sfx2/source/control/unoctitm.cxx
@@ -780,9 +780,9 @@ void SfxDispatchController_Impl::dispatch( const css::util::URL& aURL,
                 if ( pAppDispat )
                 {
                     const SfxPoolItem* pState=nullptr;
-                    const std::unique_ptr<const Item::ItemBase> aSlotItem;
+                    const Item::ItemBase* pSlotItem=nullptr;
                     SfxItemState eState = pDispatcher->QueryState( GetId(), pState );
-                    StateChanged( GetId(), eState, pState, aSlotItem );
+                    StateChanged( GetId(), eState, pState, pSlotItem );
                 }
             }
 
@@ -965,9 +965,9 @@ void SfxDispatchController_Impl::StateChanged( sal_uInt16 nSID, SfxItemState eSt
     }
 }
 
-void SfxDispatchController_Impl::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void SfxDispatchController_Impl::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem)
 {
-    StateChanged( nSID, eState, pState, nullptr );
+    StateChanged( nSID, eState, pState, pSlotItem );
 }
 
 static void InterceptLOKStateChangeEvent(const SfxViewFrame* pViewFrame, const css::frame::FeatureStateEvent& aEvent, const SfxPoolItem* pState)
diff --git a/sfx2/source/dialog/tplcitem.cxx b/sfx2/source/dialog/tplcitem.cxx
index 44a520f46c57..c027de0f2ff8 100644
--- a/sfx2/source/dialog/tplcitem.cxx
+++ b/sfx2/source/dialog/tplcitem.cxx
@@ -53,7 +53,7 @@ SfxTemplateControllerItem::~SfxTemplateControllerItem()
 // passed on by the constructor
 
 void SfxTemplateControllerItem::StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                              const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                              const SfxPoolItem* pItem, const Item::ItemBase* /*pSlotItem*/ )
 {
     switch(nSID)
     {
diff --git a/sfx2/source/inc/tplcitem.hxx b/sfx2/source/inc/tplcitem.hxx
index c628b23d84a5..324412cf58bb 100644
--- a/sfx2/source/inc/tplcitem.hxx
+++ b/sfx2/source/inc/tplcitem.hxx
@@ -32,7 +32,7 @@ class SfxTemplateControllerItem : public SfxControllerItem {
     DECL_LINK(SetWaterCanStateHdl_Impl, void*, void);
 
 protected:
-    virtual void StateChanged(sal_uInt16, SfxItemState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+    virtual void StateChanged(sal_uInt16, SfxItemState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
 
 public:
     SfxTemplateControllerItem(sal_uInt16 nId, SfxCommonTemplateDialog_Impl& rDialog, SfxBindings& rBindings);
diff --git a/sfx2/source/inet/inettbc.cxx b/sfx2/source/inet/inettbc.cxx
index 525c3c572745..0e3b1ace4467 100644
--- a/sfx2/source/inet/inettbc.cxx
+++ b/sfx2/source/inet/inettbc.cxx
@@ -182,7 +182,7 @@ void SfxURLToolBoxControl_Impl::StateChanged
 (
     sal_uInt16              nSID,
     SfxItemState        eState,
-    const SfxPoolItem*  pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/
+    const SfxPoolItem*  pState, const Item::ItemBase* /*pSlotItem*/
 )
 {
     if ( nSID == SID_OPENURL )
diff --git a/sfx2/source/sidebar/ControllerItem.cxx b/sfx2/source/sidebar/ControllerItem.cxx
index 1ded3bfdc2b3..34713204d4cb 100644
--- a/sfx2/source/sidebar/ControllerItem.cxx
+++ b/sfx2/source/sidebar/ControllerItem.cxx
@@ -62,7 +62,7 @@ void ControllerItem::dispose()
 void ControllerItem::StateChanged (
     sal_uInt16 nSID,
     SfxItemState eState,
-    const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+    const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     mrItemUpdateReceiver.NotifyItemUpdate(nSID, eState, pState, IsEnabled(eState));
 }
diff --git a/sfx2/source/statbar/stbitem.cxx b/sfx2/source/statbar/stbitem.cxx
index 2397fae0b607..d34b7f9ee7a2 100644
--- a/sfx2/source/statbar/stbitem.cxx
+++ b/sfx2/source/statbar/stbitem.cxx
@@ -300,7 +300,7 @@ void SAL_CALL SfxStatusBarControl::statusChanged( const frame::FeatureStateEvent
             }
         }
 
-        StateChanged( nSlotID, eState, pItem.get(), aSlotItem );
+        StateChanged( nSlotID, eState, pItem.get(), aSlotItem.get() );
     }
 }
 
@@ -403,7 +403,7 @@ void SfxStatusBarControl::StateChanged
 (
     sal_uInt16              nSID,
     SfxItemState        eState,
-    const SfxPoolItem*  pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/  /* Pointer to SfxPoolItem, is only valid
+    const SfxPoolItem*  pState, const Item::ItemBase* /*pSlotItem*/  /* Pointer to SfxPoolItem, is only valid
                                    within this Method call. This can be a
                                    Null-Pointer, a Pointer to SfxVoidItem
                                    or of this Type found registered by the
diff --git a/sfx2/source/toolbox/tbxitem.cxx b/sfx2/source/toolbox/tbxitem.cxx
index bae604eb1d2d..da6990839950 100644
--- a/sfx2/source/toolbox/tbxitem.cxx
+++ b/sfx2/source/toolbox/tbxitem.cxx
@@ -536,7 +536,7 @@ void SAL_CALL SfxToolBoxControl::statusChanged( const FeatureStateEvent& rEvent
             }
         }
 
-        StateChanged( nSlotId, eState, pItem.get(), aSlotItem );
+        StateChanged( nSlotId, eState, pItem.get(), aSlotItem.get() );
     }
 }
 
@@ -618,7 +618,7 @@ void SfxToolBoxControl::StateChanged
 (
     sal_uInt16              nId,
     SfxItemState        eState,
-    const SfxPoolItem*  pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/
+    const SfxPoolItem*  pState, const Item::ItemBase* /*pSlotItem*/
 )
 {
     DBG_ASSERT( pImpl->pBox != nullptr, "setting state to dangling ToolBox" );
diff --git a/sfx2/source/view/viewfrm2.cxx b/sfx2/source/view/viewfrm2.cxx
index 279f832c52df..0cc450dc9a02 100644
--- a/sfx2/source/view/viewfrm2.cxx
+++ b/sfx2/source/view/viewfrm2.cxx
@@ -343,8 +343,7 @@ void SfxViewFrame::INetExecute_Impl( SfxRequest &rRequest )
                 SfxControllerItem* pCtrl = pCache->GetItemLink();
                 while( pCtrl )
                 {
-                    const std::unique_ptr<const Item::ItemBase> aSlotItem;
-                    pCtrl->StateChanged( SID_FOCUSURLBOX, SfxItemState::UNKNOWN, nullptr, aSlotItem );
+                    pCtrl->StateChanged( SID_FOCUSURLBOX, SfxItemState::UNKNOWN, nullptr, nullptr );
                     pCtrl = pCtrl->GetItemLink();
                 }
             }
diff --git a/starmath/inc/view.hxx b/starmath/inc/view.hxx
index 3a9c8c3ebd28..365d68b17849 100644
--- a/starmath/inc/view.hxx
+++ b/starmath/inc/view.hxx
@@ -138,7 +138,7 @@ public:
     SmGraphicController(SmGraphicWindow &, sal_uInt16, SfxBindings & );
     virtual void StateChanged(sal_uInt16             nSID,
                               SfxItemState       eState,
-                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
 };
 
 class SmEditController final : public SfxControllerItem
@@ -148,7 +148,7 @@ class SmEditController final : public SfxControllerItem
 public:
     SmEditController(SmEditWindow &, sal_uInt16, SfxBindings  & );
 
-    virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+    virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
 };
 
 class SmCmdBoxWindow : public SfxDockingWindow
diff --git a/starmath/source/view.cxx b/starmath/source/view.cxx
index 15e8892dfcc5..0d751790fb64 100644
--- a/starmath/source/view.cxx
+++ b/starmath/source/view.cxx
@@ -628,11 +628,11 @@ SmGraphicController::SmGraphicController(SmGraphicWindow &rSmGraphic,
 }
 
 
-void SmGraphicController::StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem)
+void SmGraphicController::StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem)
 {
     rGraphic.SetTotalSize();
     rGraphic.Invalidate();
-    SfxControllerItem::StateChanged (nSID, eState, pState, rSlotItem);
+    SfxControllerItem::StateChanged (nSID, eState, pState, pSlotItem);
 }
 
 
@@ -649,13 +649,13 @@ SmEditController::SmEditController(SmEditWindow &rSmEdit,
 
 
 
-void SmEditController::StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem)
+void SmEditController::StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem)
 {
     const SfxStringItem *pItem =  dynamic_cast<const SfxStringItem*>( pState);
 
     if ((pItem != nullptr) && (rEdit.GetText() != pItem->GetValue()))
         rEdit.SetText(pItem->GetValue());
-    SfxControllerItem::StateChanged (nSID, eState, pState, rSlotItem);
+    SfxControllerItem::StateChanged (nSID, eState, pState, pSlotItem);
 }
 
 /**************************************************************************/
diff --git a/svx/source/dialog/_bmpmask.cxx b/svx/source/dialog/_bmpmask.cxx
index cbf7cd6579cc..1a35a39a8c5d 100644
--- a/svx/source/dialog/_bmpmask.cxx
+++ b/svx/source/dialog/_bmpmask.cxx
@@ -326,7 +326,7 @@ SvxBmpMaskSelectItem::SvxBmpMaskSelectItem( SvxBmpMask& rMask,
 }
 
 void SvxBmpMaskSelectItem::StateChanged( sal_uInt16 nSID, SfxItemState /*eState*/,
-                                         const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                         const SfxPoolItem* pItem, const Item::ItemBase* /*pSlotItem*/ )
 {
     if ( ( nSID == SID_BMPMASK_EXEC ) && pItem )
     {
diff --git a/svx/source/dialog/_contdlg.cxx b/svx/source/dialog/_contdlg.cxx
index 0e473588f91c..531a311bb945 100644
--- a/svx/source/dialog/_contdlg.cxx
+++ b/svx/source/dialog/_contdlg.cxx
@@ -50,7 +50,7 @@ SvxContourDlgItem::SvxContourDlgItem( SvxSuperContourDlg& rContourDlg, SfxBindin
 {
 }
 
-void SvxContourDlgItem::StateChanged( sal_uInt16 nSID, SfxItemState /*eState*/, const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void SvxContourDlgItem::StateChanged( sal_uInt16 nSID, SfxItemState /*eState*/, const SfxPoolItem* pItem, const Item::ItemBase* /*pSlotItem*/)
 {
     if ( pItem && ( SID_CONTOUR_EXEC == nSID ) )
     {
diff --git a/svx/source/dialog/contimp.hxx b/svx/source/dialog/contimp.hxx
index f0d095f8dc4e..481f746d109e 100644
--- a/svx/source/dialog/contimp.hxx
+++ b/svx/source/dialog/contimp.hxx
@@ -33,7 +33,7 @@ class SvxContourDlgItem : public SfxControllerItem
 
 protected:
 
-    virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void        StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
 public:
 
diff --git a/svx/source/dialog/fontwork.cxx b/svx/source/dialog/fontwork.cxx
index ef3154eb515b..33d97acdffa9 100644
--- a/svx/source/dialog/fontwork.cxx
+++ b/svx/source/dialog/fontwork.cxx
@@ -57,7 +57,7 @@ SvxFontWorkControllerItem::SvxFontWorkControllerItem
 // StateChanged method for FontWork items
 
 void SvxFontWorkControllerItem::StateChanged( sal_uInt16 /*nSID*/, SfxItemState /*eState*/,
-                                              const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                              const SfxPoolItem* pItem, const Item::ItemBase* /*pSlotItem*/ )
 {
     switch ( GetId() )
     {
diff --git a/svx/source/dialog/imapdlg.cxx b/svx/source/dialog/imapdlg.cxx
index 21cfd9fcdd36..ae3b76739920 100644
--- a/svx/source/dialog/imapdlg.cxx
+++ b/svx/source/dialog/imapdlg.cxx
@@ -73,7 +73,7 @@ SvxIMapDlgItem::SvxIMapDlgItem( SvxIMapDlg& rIMapDlg, SfxBindings& rBindings ) :
 }
 
 void SvxIMapDlgItem::StateChanged( sal_uInt16 nSID, SfxItemState /*eState*/,
-                                   const SfxPoolItem* pItem, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                   const SfxPoolItem* pItem, const Item::ItemBase* /*pSlotItem*/ )
 {
     if ( ( nSID == SID_IMAP_EXEC ) && pItem )
     {
diff --git a/svx/source/dialog/rlrcitem.cxx b/svx/source/dialog/rlrcitem.cxx
index 18862816a5c8..87636655243f 100644
--- a/svx/source/dialog/rlrcitem.cxx
+++ b/svx/source/dialog/rlrcitem.cxx
@@ -40,7 +40,7 @@ SvxRulerItem::SvxRulerItem(sal_uInt16 _nId, SvxRuler &rRul, SfxBindings &rBindin
 
 
 void SvxRulerItem::StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                 const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+                                 const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     // SfxItemState::DONTCARE => pState == -1 => PTR_CAST buff
     if ( eState != SfxItemState::DEFAULT )
diff --git a/svx/source/dialog/rlrcitem.hxx b/svx/source/dialog/rlrcitem.hxx
index ba222f2d82bb..537c91af592a 100644
--- a/svx/source/dialog/rlrcitem.hxx
+++ b/svx/source/dialog/rlrcitem.hxx
@@ -30,7 +30,7 @@ private:
 
 protected:
     virtual void StateChanged( sal_uInt16,
-                               SfxItemState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                               SfxItemState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
 public:
     SvxRulerItem( sal_uInt16 nId, SvxRuler&, SfxBindings& );
diff --git a/svx/source/dialog/srchctrl.cxx b/svx/source/dialog/srchctrl.cxx
index 88e8a320e1ea..dbcba8679725 100644
--- a/svx/source/dialog/srchctrl.cxx
+++ b/svx/source/dialog/srchctrl.cxx
@@ -40,7 +40,7 @@ SvxSearchController::SvxSearchController
 
 
 void SvxSearchController::StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                        const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                        const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     if ( SfxItemState::DEFAULT == eState )
     {
diff --git a/svx/source/dialog/srchctrl.hxx b/svx/source/dialog/srchctrl.hxx
index a4edcbb0cd87..fdc5991f50e8 100644
--- a/svx/source/dialog/srchctrl.hxx
+++ b/svx/source/dialog/srchctrl.hxx
@@ -27,7 +27,7 @@ class SvxSearchController : public SfxControllerItem
     SvxSearchDialog&    rSrchDlg;
 
 protected:
-    virtual void        StateChanged( sal_uInt16, SfxItemState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void        StateChanged( sal_uInt16, SfxItemState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
 public:
     SvxSearchController( sal_uInt16 nId, SfxBindings& rBnd, SvxSearchDialog& rDlg );
diff --git a/svx/source/engine3d/float3d.cxx b/svx/source/engine3d/float3d.cxx
index ae55355de5f6..c42527a54195 100644
--- a/svx/source/engine3d/float3d.cxx
+++ b/svx/source/engine3d/float3d.cxx
@@ -2923,7 +2923,7 @@ Svx3DCtrlItem::Svx3DCtrlItem( sal_uInt16 _nId,
 
 
 void Svx3DCtrlItem::StateChanged( sal_uInt16 /*nSId*/,
-                        SfxItemState /*eState*/, const SfxPoolItem* /*pItem*/, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                        SfxItemState /*eState*/, const SfxPoolItem* /*pItem*/, const Item::ItemBase* /*pSlotItem*/ )
 {
 }
 
@@ -2935,7 +2935,7 @@ SvxConvertTo3DItem::SvxConvertTo3DItem(sal_uInt16 _nId, SfxBindings* _pBindings)
 {
 }
 
-void SvxConvertTo3DItem::StateChanged(sal_uInt16 /*_nId*/, SfxItemState eState, const SfxPoolItem* /*pState*/, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void SvxConvertTo3DItem::StateChanged(sal_uInt16 /*_nId*/, SfxItemState eState, const SfxPoolItem* /*pState*/, const Item::ItemBase* /*pSlotItem*/)
 {
     bool bNewState = (eState != SfxItemState::DISABLED);
     if(bNewState != bState)
diff --git a/svx/source/form/datanavi.cxx b/svx/source/form/datanavi.cxx
index f4ac72812a71..746a6d03db4b 100644
--- a/svx/source/form/datanavi.cxx
+++ b/svx/source/form/datanavi.cxx
@@ -2202,7 +2202,7 @@ namespace svxform
         SfxDockingWindow::dispose();
     }
 
-    void DataNavigator::StateChanged( sal_uInt16 , SfxItemState , const SfxPoolItem*, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+    void DataNavigator::StateChanged( sal_uInt16 , SfxItemState , const SfxPoolItem*, const Item::ItemBase* /*pSlotItem*/)
     {
     }
 
diff --git a/svx/source/form/filtnav.cxx b/svx/source/form/filtnav.cxx
index 80bc5db3ca20..ce9cc558ddfd 100644
--- a/svx/source/form/filtnav.cxx
+++ b/svx/source/form/filtnav.cxx
@@ -1821,7 +1821,7 @@ void FmFilterNavigatorWin::UpdateContent(FmFormShell const * pFormShell)
 }
 
 
-void FmFilterNavigatorWin::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void FmFilterNavigatorWin::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     if( !pState  || SID_FM_FILTER_NAVIGATOR_CONTROL != nSID )
         return;
diff --git a/svx/source/form/fmPropBrw.cxx b/svx/source/form/fmPropBrw.cxx
index 75da1f54fd89..f726646a3324 100644
--- a/svx/source/form/fmPropBrw.cxx
+++ b/svx/source/form/fmPropBrw.cxx
@@ -617,7 +617,7 @@ void FmPropBrw::impl_ensurePropertyBrowser_nothrow( FmFormShell* _pFormShell )
 }
 
 
-void FmPropBrw::StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void FmPropBrw::StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     if (!pState  || SID_FM_PROPERTY_CONTROL != nSID)
         return;
diff --git a/svx/source/form/fmexpl.cxx b/svx/source/form/fmexpl.cxx
index 53db16fa2c12..222f2a7b320c 100644
--- a/svx/source/form/fmexpl.cxx
+++ b/svx/source/form/fmexpl.cxx
@@ -488,7 +488,7 @@ namespace svxform
     }
 
 
-    void NavigatorFrame::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+    void NavigatorFrame::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
     {
         if( !pState  || SID_FM_FMEXPLORER_CONTROL != nSID )
             return;
diff --git a/svx/source/form/tabwin.cxx b/svx/source/form/tabwin.cxx
index 9840e2b84efe..151be2e973ab 100644
--- a/svx/source/form/tabwin.cxx
+++ b/svx/source/form/tabwin.cxx
@@ -265,7 +265,7 @@ void FmFieldWin::_propertyChanged(const css::beans::PropertyChangeEvent& evt)
 }
 
 
-void FmFieldWin::StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void FmFieldWin::StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     if (!pState  || SID_FM_FIELDS_CONTROL != nSID)
         return;
diff --git a/svx/source/form/tbxform.cxx b/svx/source/form/tbxform.cxx
index d458e0f9be24..863c521d28eb 100644
--- a/svx/source/form/tbxform.cxx
+++ b/svx/source/form/tbxform.cxx
@@ -107,7 +107,7 @@ SvxFmTbxCtlAbsRec::~SvxFmTbxCtlAbsRec()
 }
 
 
-void SvxFmTbxCtlAbsRec::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem)
+void SvxFmTbxCtlAbsRec::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem)
 {
     sal_uInt16              nId = GetId();
     ToolBox*            pToolBox = &GetToolBox();
@@ -129,7 +129,7 @@ void SvxFmTbxCtlAbsRec::StateChanged( sal_uInt16 nSID, SfxItemState eState, cons
 
     // enabling/disabling of the window
     pToolBox->EnableItem(nId, bEnable);
-    SfxToolBoxControl::StateChanged( nSID, eState, pState, rSlotItem );
+    SfxToolBoxControl::StateChanged( nSID, eState, pState, pSlotItem );
 }
 
 VclPtr<vcl::Window> SvxFmTbxCtlAbsRec::CreateItemWindow( vcl::Window* pParent )
@@ -214,7 +214,7 @@ VclPtr<vcl::Window> SvxFmTbxCtlRecTotal::CreateItemWindow( vcl::Window* pParent
 }
 
 
-void SvxFmTbxCtlRecTotal::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem)
+void SvxFmTbxCtlRecTotal::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem)
 {
 
     // setting the FixedText
@@ -231,7 +231,7 @@ void SvxFmTbxCtlRecTotal::StateChanged( sal_uInt16 nSID, SfxItemState eState, co
     pFixedText->Update();
     pFixedText->Flush();
 
-    SfxToolBoxControl::StateChanged( nSID, eState, pState, rSlotItem );
+    SfxToolBoxControl::StateChanged( nSID, eState, pState, pSlotItem );
 }
 
 SFX_IMPL_TOOLBOX_CONTROL( SvxFmTbxNextRec, SfxBoolItem );
diff --git a/svx/source/inc/datanavi.hxx b/svx/source/inc/datanavi.hxx
index 2494ee04b5d3..34c006a1bba5 100644
--- a/svx/source/inc/datanavi.hxx
+++ b/svx/source/inc/datanavi.hxx
@@ -370,7 +370,7 @@ namespace svxform
         using                       SfxDockingWindow::StateChanged;
 
         void                        StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     };
 
     class SVX_DLLPUBLIC DataNavigatorManager : public SfxChildWindow
diff --git a/svx/source/inc/filtnav.hxx b/svx/source/inc/filtnav.hxx
index e82604a25f34..3b14e43a0dda 100644
--- a/svx/source/inc/filtnav.hxx
+++ b/svx/source/inc/filtnav.hxx
@@ -315,7 +315,7 @@ public:
     virtual void dispose() override;
 
     void UpdateContent( FmFormShell const * pFormShell );
-    void StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    void StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     void FillInfo( SfxChildWinInfo& rInfo ) const override;
 
     using SfxDockingWindow::StateChanged;
diff --git a/svx/source/inc/fmPropBrw.hxx b/svx/source/inc/fmPropBrw.hxx
index b7feb94c0e96..a10c7c3d82e8 100644
--- a/svx/source/inc/fmPropBrw.hxx
+++ b/svx/source/inc/fmPropBrw.hxx
@@ -61,7 +61,7 @@ class FmPropBrw final : public SfxFloatingWindow, public SfxControllerItem
     css::uno::Reference< css::awt::XWindow >
                     m_xFrameContainerWindow;
 
-    virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+    virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
     virtual void FillInfo( SfxChildWinInfo& rInfo ) const override;
     virtual bool Close() override;
 
diff --git a/svx/source/inc/fmexpl.hxx b/svx/source/inc/fmexpl.hxx
index 474975af4bc5..79a5b7be7ea7 100644
--- a/svx/source/inc/fmexpl.hxx
+++ b/svx/source/inc/fmexpl.hxx
@@ -529,7 +529,7 @@ namespace svxform
         virtual void dispose() override;
 
         void UpdateContent( FmFormShell* pFormShell );
-        void StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+        void StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
         void FillInfo( SfxChildWinInfo& rInfo ) const override;
     };
 
diff --git a/svx/source/inc/tabwin.hxx b/svx/source/inc/tabwin.hxx
index c95fbdc63d71..93c57ec94ef0 100644
--- a/svx/source/inc/tabwin.hxx
+++ b/svx/source/inc/tabwin.hxx
@@ -87,7 +87,7 @@ public:
     virtual void GetFocus() override;
     virtual bool PreNotify( NotifyEvent& _rNEvt ) override;
     virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState,
-                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem) override;
+                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem) override;
 
     void UpdateContent(FmFormShell const *);
     void UpdateContent(const css::uno::Reference< css::form::XForm > &);
diff --git a/svx/source/inc/tbxform.hxx b/svx/source/inc/tbxform.hxx
index 958010fbca46..a8d8a3d8d619 100644
--- a/svx/source/inc/tbxform.hxx
+++ b/svx/source/inc/tbxform.hxx
@@ -50,7 +50,7 @@ public:
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window* pParent ) override;
 
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 };
 
 
@@ -90,7 +90,7 @@ public:
 
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window* pParent ) override;
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 };
 
 
diff --git a/svx/source/mnuctrls/clipboardctl.cxx b/svx/source/mnuctrls/clipboardctl.cxx
index 6b3e6b5b05d8..1fb7ed53fc8d 100644
--- a/svx/source/mnuctrls/clipboardctl.cxx
+++ b/svx/source/mnuctrls/clipboardctl.cxx
@@ -105,7 +105,7 @@ VclPtr<SfxPopupWindow> SvxClipBoardControl::CreatePopupWindow()
 }
 
 
-void SvxClipBoardControl::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void SvxClipBoardControl::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     if ( SID_CLIPBOARD_FORMAT_ITEMS == nSID )
     {
diff --git a/svx/source/sidebar/paragraph/ParaSpacingControl.cxx b/svx/source/sidebar/paragraph/ParaSpacingControl.cxx
index 5b7955f96137..8b4c81dcdde5 100644
--- a/svx/source/sidebar/paragraph/ParaSpacingControl.cxx
+++ b/svx/source/sidebar/paragraph/ParaSpacingControl.cxx
@@ -49,7 +49,7 @@ ParaULSpacingControl::~ParaULSpacingControl()
 }
 
 void ParaULSpacingControl::StateChanged(sal_uInt16 nSID, SfxItemState eState,
-                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+                              const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     sal_uInt16 nId = GetId();
     ToolBox& rTbx = GetToolBox();
@@ -130,7 +130,7 @@ void SAL_CALL ParaLRSpacingControl::dispose()
 }
 
 void ParaLRSpacingControl::StateChanged(sal_uInt16 nSID, SfxItemState eState,
-                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+                              const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     sal_uInt16 nId = GetId();
     ToolBox& rTbx = GetToolBox();
diff --git a/svx/source/stbctrls/insctrl.cxx b/svx/source/stbctrls/insctrl.cxx
index 49f54ad3a8cf..fdf7aaa90f24 100644
--- a/svx/source/stbctrls/insctrl.cxx
+++ b/svx/source/stbctrls/insctrl.cxx
@@ -44,7 +44,7 @@ SvxInsertStatusBarControl::~SvxInsertStatusBarControl()
 }
 
 void SvxInsertStatusBarControl::StateChanged( sal_uInt16 , SfxItemState eState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                              const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     if ( SfxItemState::DEFAULT != eState )
         GetStatusBar().SetItemText( GetId(), "" );
diff --git a/svx/source/stbctrls/modctrl.cxx b/svx/source/stbctrls/modctrl.cxx
index 22233c55ef8b..4547aca0001f 100644
--- a/svx/source/stbctrls/modctrl.cxx
+++ b/svx/source/stbctrls/modctrl.cxx
@@ -75,7 +75,7 @@ SvxModifyControl::SvxModifyControl( sal_uInt16 _nSlotId, sal_uInt16 _nId, Status
 
 
 void SvxModifyControl::StateChanged( sal_uInt16, SfxItemState eState,
-                                     const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                     const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     if ( SfxItemState::DEFAULT != eState )
         return;
diff --git a/svx/source/stbctrls/pszctrl.cxx b/svx/source/stbctrls/pszctrl.cxx
index 4fa011ee0b0b..e791b7fe03e4 100644
--- a/svx/source/stbctrls/pszctrl.cxx
+++ b/svx/source/stbctrls/pszctrl.cxx
@@ -260,7 +260,7 @@ SvxPosSizeStatusBarControl::~SvxPosSizeStatusBarControl()
 */
 
 void SvxPosSizeStatusBarControl::StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                               const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                               const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     // Because the combi-controller, always sets the current Id as HelpId
     // first clean the cached HelpText
diff --git a/svx/source/stbctrls/selctrl.cxx b/svx/source/stbctrls/selctrl.cxx
index 8a76e90e6ce9..d79b9cff8f9f 100644
--- a/svx/source/stbctrls/selctrl.cxx
+++ b/svx/source/stbctrls/selctrl.cxx
@@ -88,7 +88,7 @@ SvxSelectionModeControl::SvxSelectionModeControl( sal_uInt16 _nSlotId,
 }
 
 void SvxSelectionModeControl::StateChanged( sal_uInt16, SfxItemState eState,
-                                            const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                            const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     if ( SfxItemState::DEFAULT == eState )
     {
diff --git a/svx/source/stbctrls/xmlsecctrl.cxx b/svx/source/stbctrls/xmlsecctrl.cxx
index 76868b3bf3c3..7024f1553def 100644
--- a/svx/source/stbctrls/xmlsecctrl.cxx
+++ b/svx/source/stbctrls/xmlsecctrl.cxx
@@ -68,7 +68,7 @@ XmlSecStatusBarControl::~XmlSecStatusBarControl()
 {
 }
 
-void XmlSecStatusBarControl::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void XmlSecStatusBarControl::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     if( SfxItemState::DEFAULT != eState )
     {
diff --git a/svx/source/stbctrls/zoomctrl.cxx b/svx/source/stbctrls/zoomctrl.cxx
index f57451e4e1e8..3699c96528bc 100644
--- a/svx/source/stbctrls/zoomctrl.cxx
+++ b/svx/source/stbctrls/zoomctrl.cxx
@@ -112,7 +112,7 @@ SvxZoomStatusBarControl::SvxZoomStatusBarControl( sal_uInt16 _nSlotId,
 }
 
 void SvxZoomStatusBarControl::StateChanged( sal_uInt16, SfxItemState eState,
-                                            const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                            const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     if( SfxItemState::DEFAULT != eState )
     {
diff --git a/svx/source/stbctrls/zoomsliderctrl.cxx b/svx/source/stbctrls/zoomsliderctrl.cxx
index fb96f2c0459d..71071c70d444 100644
--- a/svx/source/stbctrls/zoomsliderctrl.cxx
+++ b/svx/source/stbctrls/zoomsliderctrl.cxx
@@ -164,7 +164,7 @@ SvxZoomSliderControl::~SvxZoomSliderControl()
 {
 }
 
-void SvxZoomSliderControl::StateChanged( sal_uInt16 /*nSID*/, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void SvxZoomSliderControl::StateChanged( sal_uInt16 /*nSID*/, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     if ( (SfxItemState::DEFAULT != eState) || pState->IsVoidItem() )
     {
diff --git a/svx/source/tbxctrls/fillctrl.cxx b/svx/source/tbxctrls/fillctrl.cxx
index 381b9ef9a203..cd80582755c0 100644
--- a/svx/source/tbxctrls/fillctrl.cxx
+++ b/svx/source/tbxctrls/fillctrl.cxx
@@ -83,7 +83,7 @@ SvxFillToolBoxControl::~SvxFillToolBoxControl()
 void SvxFillToolBoxControl::StateChanged(
     sal_uInt16 nSID,
     SfxItemState eState,
-    const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+    const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     const bool bDisabled(SfxItemState::DISABLED == eState);
 
diff --git a/svx/source/tbxctrls/formatpaintbrushctrl.cxx b/svx/source/tbxctrls/formatpaintbrushctrl.cxx
index 33051bb72e00..f016b999712b 100644
--- a/svx/source/tbxctrls/formatpaintbrushctrl.cxx
+++ b/svx/source/tbxctrls/formatpaintbrushctrl.cxx
@@ -92,11 +92,11 @@ void FormatPaintBrushToolBoxControl::Select(sal_uInt16 /*nSelectModifier*/)
 
 
 void FormatPaintBrushToolBoxControl::StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem )
+                const SfxPoolItem* pState, const Item::ItemBase* pSlotItem )
 {
     if( eState != SfxItemState::DEFAULT && eState != SfxItemState::SET )
         m_bPersistentCopy = false;
-    SfxToolBoxControl::StateChanged( nSID, eState, pState, rSlotItem );
+    SfxToolBoxControl::StateChanged( nSID, eState, pState, pSlotItem );
 }
 
 
diff --git a/svx/source/tbxctrls/grafctrl.cxx b/svx/source/tbxctrls/grafctrl.cxx
index 8a672df1fa77..2ed8e5e9b4ed 100644
--- a/svx/source/tbxctrls/grafctrl.cxx
+++ b/svx/source/tbxctrls/grafctrl.cxx
@@ -430,7 +430,7 @@ SvxGrafToolBoxControl::~SvxGrafToolBoxControl()
 {
 }
 
-void SvxGrafToolBoxControl::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void SvxGrafToolBoxControl::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 
 {
     ImplGrafControl* pCtrl = static_cast<ImplGrafControl*>( GetToolBox().GetItemWindow( GetId() ) );
@@ -517,7 +517,7 @@ SvxGrafModeToolBoxControl::~SvxGrafModeToolBoxControl()
 {
 }
 
-void SvxGrafModeToolBoxControl::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void SvxGrafModeToolBoxControl::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 
 {
     ImplGrafModeControl* pCtrl = static_cast<ImplGrafModeControl*>( GetToolBox().GetItemWindow( GetId() ) );
diff --git a/svx/source/tbxctrls/layctrl.cxx b/svx/source/tbxctrls/layctrl.cxx
index 57c11fd0c898..1fe853ca3cdf 100644
--- a/svx/source/tbxctrls/layctrl.cxx
+++ b/svx/source/tbxctrls/layctrl.cxx
@@ -696,7 +696,7 @@ VclPtr<SfxPopupWindow> SvxTableToolBoxControl::CreatePopupWindow()
     return nullptr;
 }
 
-void SvxTableToolBoxControl::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void SvxTableToolBoxControl::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     if ( auto pUInt16Item = dynamic_cast<const SfxUInt16Item* >(pState) )
     {
@@ -743,10 +743,10 @@ VclPtr<SfxPopupWindow> SvxColumnsToolBoxControl::CreatePopupWindow()
 
 void SvxColumnsToolBoxControl::StateChanged( sal_uInt16 nSID,
                                               SfxItemState eState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem )
+                                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem )
 {
     bEnabled = SfxItemState::DISABLED != eState;
-    SfxToolBoxControl::StateChanged(nSID,   eState, pState, rSlotItem );
+    SfxToolBoxControl::StateChanged(nSID,   eState, pState, pSlotItem );
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/source/tbxctrls/lboxctrl.cxx b/svx/source/tbxctrls/lboxctrl.cxx
index ce3de8873fec..c1f4a6fea5a8 100644
--- a/svx/source/tbxctrls/lboxctrl.cxx
+++ b/svx/source/tbxctrls/lboxctrl.cxx
@@ -188,7 +188,7 @@ SvxUndoRedoControl::~SvxUndoRedoControl()
 }
 
 void SvxUndoRedoControl::StateChanged(
-    sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /* rSlotItem */ )
+    sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /* pSlotItem */ )
 {
     if ( nSID == SID_UNDO || nSID == SID_REDO )
     {
diff --git a/svx/source/tbxctrls/linectrl.cxx b/svx/source/tbxctrls/linectrl.cxx
index f6e671a0ab47..126eea608567 100644
--- a/svx/source/tbxctrls/linectrl.cxx
+++ b/svx/source/tbxctrls/linectrl.cxx
@@ -71,7 +71,7 @@ SvxLineStyleToolBoxControl::~SvxLineStyleToolBoxControl()
 
 void SvxLineStyleToolBoxControl::StateChanged (
 
-    sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /* rSlotItem */ )
+    sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /* pSlotItem */ )
 
 {
     SvxLineBox* pBox = static_cast<SvxLineBox*>( GetToolBox().GetItemWindow( GetId() ) );
@@ -195,7 +195,7 @@ SvxLineWidthToolBoxControl::~SvxLineWidthToolBoxControl()
 
 
 void SvxLineWidthToolBoxControl::StateChanged(
-    sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /* rSlotItem */ )
+    sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /* pSlotItem */ )
 {
     SvxMetricField* pFld = static_cast<SvxMetricField*>(
                            GetToolBox().GetItemWindow( GetId() ));
diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx
index 00f059e68289..d964028f12b1 100644
--- a/svx/source/tbxctrls/tbcontrl.cxx
+++ b/svx/source/tbxctrls/tbcontrl.cxx
@@ -647,7 +647,7 @@ class SfxStyleControllerItem_Impl : public SfxStatusListener
                                      SvxStyleToolBoxControl& rTbxCtl );
 
     protected:
-        virtual void StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+        virtual void StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
     private:
         SvxStyleToolBoxControl& rControl;
@@ -2735,7 +2735,7 @@ SfxStyleControllerItem_Impl::SfxStyleControllerItem_Impl(
 }
 
 void SfxStyleControllerItem_Impl::StateChanged(
-    sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+    sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     switch ( GetId() )
     {
@@ -3172,7 +3172,7 @@ IMPL_LINK_NOARG(SvxStyleToolBoxControl, VisibilityNotification, SvxStyleBox_Impl
 }
 
 void SvxStyleToolBoxControl::StateChanged(
-    sal_uInt16 , SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+    sal_uInt16 , SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     sal_uInt16       nId    = GetId();
     ToolBox&     rTbx   = GetToolBox();
@@ -3627,7 +3627,7 @@ SvxSimpleUndoRedoController::~SvxSimpleUndoRedoController()
 {
 }
 
-void SvxSimpleUndoRedoController::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)
+void SvxSimpleUndoRedoController::StateChanged( sal_uInt16, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/)
 {
     const SfxStringItem* pItem = dynamic_cast<const SfxStringItem*>( pState  );
     ToolBox& rBox = GetToolBox();
diff --git a/svx/source/tbxctrls/tbxdrctl.cxx b/svx/source/tbxctrls/tbxdrctl.cxx
index a23bdf0364f5..72c743e42adb 100644
--- a/svx/source/tbxctrls/tbxdrctl.cxx
+++ b/svx/source/tbxctrls/tbxdrctl.cxx
@@ -61,10 +61,10 @@ void SAL_CALL SvxTbxCtlDraw::initialize( const css::uno::Sequence< css::uno::Any
 
 
 void SvxTbxCtlDraw::StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem )
+                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem )
 {
     GetToolBox().EnableItem( GetId(), ( eState != SfxItemState::DISABLED ) );
-    SfxToolBoxControl::StateChanged( nSID, eState, pState, rSlotItem );
+    SfxToolBoxControl::StateChanged( nSID, eState, pState, pSlotItem );
 
     Reference< XLayoutManager > xLayoutMgr = getLayoutManager();
     if ( xLayoutMgr.is() )
diff --git a/svx/source/tbxctrls/verttexttbxctrl.cxx b/svx/source/tbxctrls/verttexttbxctrl.cxx
index 3392afd30ee1..0ac848796b8e 100644
--- a/svx/source/tbxctrls/verttexttbxctrl.cxx
+++ b/svx/source/tbxctrls/verttexttbxctrl.cxx
@@ -59,7 +59,7 @@ void SvxVertCTLTextTbxCtrl::initialize(const css::uno::Sequence<css::uno::Any>&
 void SvxVertCTLTextTbxCtrl::StateChanged(
     sal_uInt16 nSID,
     SfxItemState eState,
-    const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem )
+    const SfxPoolItem* pState, const Item::ItemBase* pSlotItem )
 {
     SvtLanguageOptions aLangOptions;
     bool bCalc = false;
@@ -70,7 +70,7 @@ void SvxVertCTLTextTbxCtrl::StateChanged(
         bEnabled = aLangOptions.IsCTLFontEnabled();
     else
     {
-        SfxToolBoxControl::StateChanged(nSID, eState, pState, rSlotItem);
+        SfxToolBoxControl::StateChanged(nSID, eState, pState, pSlotItem);
         return;
     }
 
diff --git a/sw/source/uibase/inc/bookctrl.hxx b/sw/source/uibase/inc/bookctrl.hxx
index 1a0ec36f7aec..b55f5847b97f 100644
--- a/sw/source/uibase/inc/bookctrl.hxx
+++ b/sw/source/uibase/inc/bookctrl.hxx
@@ -28,7 +28,7 @@ class SwBookmarkControl : public SfxStatusBarControl
 
 public:
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void    Paint( const UserDrawEvent& rEvt ) override;
 
     SFX_DECL_STATUSBAR_CONTROL();
diff --git a/sw/source/uibase/inc/navipi.hxx b/sw/source/uibase/inc/navipi.hxx
index 752b7a172b28..6fcde5529bd6 100644
--- a/sw/source/uibase/inc/navipi.hxx
+++ b/sw/source/uibase/inc/navipi.hxx
@@ -140,7 +140,7 @@ public:
     void            MoveOutline(SwOutlineNodes::size_type nSource, SwOutlineNodes::size_type nTarget, bool bWithCilds);
 
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                            const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                            const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
     virtual void    StateChanged(StateChangedType nStateChange) override;
 
diff --git a/sw/source/uibase/inc/tmplctrl.hxx b/sw/source/uibase/inc/tmplctrl.hxx
index 0beb0ca6a32e..055a779afbf1 100644
--- a/sw/source/uibase/inc/tmplctrl.hxx
+++ b/sw/source/uibase/inc/tmplctrl.hxx
@@ -27,7 +27,7 @@ protected:
     virtual void    Command( const CommandEvent& rCEvt ) override;
 public:
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void    Paint( const UserDrawEvent& rEvt ) override;
 
     SFX_DECL_STATUSBAR_CONTROL();
diff --git a/sw/source/uibase/inc/viewlayoutctrl.hxx b/sw/source/uibase/inc/viewlayoutctrl.hxx
index b282fe529a94..e52c611ee15d 100644
--- a/sw/source/uibase/inc/viewlayoutctrl.hxx
+++ b/sw/source/uibase/inc/viewlayoutctrl.hxx
@@ -36,7 +36,7 @@ public:
     SwViewLayoutControl( sal_uInt16 nSlotId, sal_uInt16 nId, StatusBar& rStb );
     virtual ~SwViewLayoutControl() override;
 
-    virtual void  StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+    virtual void  StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void  Paint( const UserDrawEvent& rEvt ) override;
     virtual bool  MouseButtonDown( const MouseEvent & ) override;
     virtual bool  MouseMove( const MouseEvent & ) override;
diff --git a/sw/source/uibase/inc/wordcountctrl.hxx b/sw/source/uibase/inc/wordcountctrl.hxx
index b17a208697f9..349702466dc2 100644
--- a/sw/source/uibase/inc/wordcountctrl.hxx
+++ b/sw/source/uibase/inc/wordcountctrl.hxx
@@ -28,7 +28,7 @@ public:
     virtual ~SwWordCountStatusBarControl() override;
 
     virtual void StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                               const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                               const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
 };
 
diff --git a/sw/source/uibase/inc/workctrl.hxx b/sw/source/uibase/inc/workctrl.hxx
index 56d6f51c7c7f..c577685c8d7e 100644
--- a/sw/source/uibase/inc/workctrl.hxx
+++ b/sw/source/uibase/inc/workctrl.hxx
@@ -62,7 +62,7 @@ public:
     virtual VclPtr<SfxPopupWindow> CreatePopupWindow() override;
     virtual void                StateChanged( sal_uInt16 nSID,
                                               SfxItemState eState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
     DECL_STATIC_LINK(SwTbxAutoTextCtrl, PopupHdl, Menu*, bool);
 };
@@ -118,7 +118,7 @@ public:
 
     virtual void            StateChanged( sal_uInt16 nSID,
                                               SfxItemState eState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                              const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
 
     virtual VclPtr<vcl::Window> CreateItemWindow( vcl::Window *pParent ) override;
 };
diff --git a/sw/source/uibase/inc/zoomctrl.hxx b/sw/source/uibase/inc/zoomctrl.hxx
index 301c055fac0a..e99ea80d0357 100644
--- a/sw/source/uibase/inc/zoomctrl.hxx
+++ b/sw/source/uibase/inc/zoomctrl.hxx
@@ -28,7 +28,7 @@ private:
 public:
     virtual void    Command( const CommandEvent& rCEvt ) override;
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
-                                  const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& rSlotItem ) override;
+                                  const SfxPoolItem* pState, const Item::ItemBase* pSlotItem ) override;
     virtual void    Paint( const UserDrawEvent& rEvt ) override;
 
     SFX_DECL_STATUSBAR_CONTROL();
diff --git a/sw/source/uibase/ribbar/workctrl.cxx b/sw/source/uibase/ribbar/workctrl.cxx
index 037bea6a03ae..f55e6ef83768 100644
--- a/sw/source/uibase/ribbar/workctrl.cxx
+++ b/sw/source/uibase/ribbar/workctrl.cxx
@@ -128,7 +128,7 @@ VclPtr<SfxPopupWindow> SwTbxAutoTextCtrl::CreatePopupWindow()
 
 void SwTbxAutoTextCtrl::StateChanged( sal_uInt16,
                                               SfxItemState,
-                                              const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                              const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     GetToolBox().EnableItem( GetId(), (GetItemState(pState) != SfxItemState::DISABLED) );
 }
@@ -576,7 +576,7 @@ SwPreviewZoomControl::~SwPreviewZoomControl()
 
 void SwPreviewZoomControl::StateChanged( sal_uInt16 /*nSID*/,
                                          SfxItemState eState,
-                                         const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                         const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     sal_uInt16 nId = GetId();
     GetToolBox().EnableItem( nId, (GetItemState(pState) != SfxItemState::DISABLED) );
diff --git a/sw/source/uibase/utlui/bookctrl.cxx b/sw/source/uibase/utlui/bookctrl.cxx
index b16aa67f7e9e..62f68f14e425 100644
--- a/sw/source/uibase/utlui/bookctrl.cxx
+++ b/sw/source/uibase/utlui/bookctrl.cxx
@@ -75,7 +75,7 @@ SwBookmarkControl::~SwBookmarkControl()
 }
 
 void SwBookmarkControl::StateChanged(
-    sal_uInt16 /*nSID*/, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+    sal_uInt16 /*nSID*/, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     if( eState != SfxItemState::DEFAULT || pState->IsVoidItem() )
         GetStatusBar().SetItemText( GetId(), OUString() );
diff --git a/sw/source/uibase/utlui/navipi.cxx b/sw/source/uibase/utlui/navipi.cxx
index 2f82f78e4edd..494cd8089f16 100644
--- a/sw/source/uibase/utlui/navipi.cxx
+++ b/sw/source/uibase/utlui/navipi.cxx
@@ -837,7 +837,7 @@ IMPL_LINK( SwNavigationPI, ClosePopupWindow, SfxPopupWindow *, pWindow, void )
 }
 
 void SwNavigationPI::StateChanged( sal_uInt16 nSID, SfxItemState /*eState*/,
-                                            const SfxPoolItem* /*pState*/, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+                                            const SfxPoolItem* /*pState*/, const Item::ItemBase* /*pSlotItem*/ )
 {
     if(nSID == SID_DOCFULLNAME)
     {
diff --git a/sw/source/uibase/utlui/tmplctrl.cxx b/sw/source/uibase/utlui/tmplctrl.cxx
index c374b1033ed2..df0ae9e18636 100644
--- a/sw/source/uibase/utlui/tmplctrl.cxx
+++ b/sw/source/uibase/utlui/tmplctrl.cxx
@@ -73,7 +73,7 @@ SwTemplateControl::~SwTemplateControl()
 }
 
 void SwTemplateControl::StateChanged(
-    sal_uInt16 /*nSID*/, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/ )
+    sal_uInt16 /*nSID*/, SfxItemState eState, const SfxPoolItem* pState, const Item::ItemBase* /*pSlotItem*/ )
 {
     const SfxStringItem* pItem = nullptr;
     if (SfxItemState::DEFAULT == eState && (pItem = dynamic_cast<const SfxStringItem*>(pState)))
diff --git a/sw/source/uibase/utlui/viewlayoutctrl.cxx b/sw/source/uibase/utlui/viewlayoutctrl.cxx
index 2e3fa5a27b7f..cad7547b1b4e 100644
--- a/sw/source/uibase/utlui/viewlayoutctrl.cxx
+++ b/sw/source/uibase/utlui/viewlayoutctrl.cxx
@@ -60,7 +60,7 @@ SwViewLayoutControl::~SwViewLayoutControl()
 {
 }
 
-void SwViewLayoutControl::StateChanged( sal_uInt16 /*nSID*/, SfxItemState eState, const SfxPoolItem* pState, const std::unique_ptr<const Item::ItemBase>& /*rSlotItem*/)

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list