sw/source/core/docnode/section.cxx | 59 +++++++++++++++++++------------------ 1 file changed, 31 insertions(+), 28 deletions(-)
New commits: commit 6b367107d7c51fc868ab0a116019ee26408a0395 Author: Bjoern Michaelsen <bjoern.michael...@libreoffice.org> AuthorDate: Wed Oct 28 23:16:21 2020 +0100 Commit: Bjoern Michaelsen <bjoern.michael...@libreoffice.org> CommitDate: Thu Oct 29 22:16:57 2020 +0100 Section: dont call obsolete ModifyNotification directly Change-Id: Iefc502d5bd7cd3650a4abf3e79794d06fadd894e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104982 Tested-by: Jenkins Reviewed-by: Bjoern Michaelsen <bjoern.michael...@libreoffice.org> diff --git a/sw/source/core/docnode/section.cxx b/sw/source/core/docnode/section.cxx index 04050ccdbb24..55bc3aee8fe7 100644 --- a/sw/source/core/docnode/section.cxx +++ b/sw/source/core/docnode/section.cxx @@ -67,30 +67,35 @@ using namespace ::com::sun::star; namespace { -class SwIntrnlSectRefLink : public SwBaseLink -{ - SwSectionFormat& m_rSectFormat; + void lcl_SwClientNotify(SwModify& rModify, const SfxPoolItem* pOldNew) + { + const sw::LegacyModifyHint aHint(pOldNew, pOldNew); + rModify.SwClientNotify(rModify, aHint); + } -public: - SwIntrnlSectRefLink(SwSectionFormat& rFormat, SfxLinkUpdateMode nUpdateType) - : SwBaseLink(nUpdateType, SotClipboardFormatId::RTF) - , m_rSectFormat(rFormat) - {} + class SwIntrnlSectRefLink : public SwBaseLink + { + SwSectionFormat& m_rSectFormat; - virtual void Closed() override; - virtual ::sfx2::SvBaseLink::UpdateResult DataChanged( - const OUString& rMimeType, const css::uno::Any & rValue ) override; + public: + SwIntrnlSectRefLink(SwSectionFormat& rFormat, SfxLinkUpdateMode nUpdateType) + : SwBaseLink(nUpdateType, SotClipboardFormatId::RTF) + , m_rSectFormat(rFormat) + {} - virtual const SwNode* GetAnchor() const override; - virtual bool IsInRange( sal_uLong nSttNd, sal_uLong nEndNd ) const override; + virtual void Closed() override; + virtual ::sfx2::SvBaseLink::UpdateResult DataChanged( + const OUString& rMimeType, const css::uno::Any & rValue ) override; - SwSectionNode* GetSectNode() - { - const SwNode* pSectNd( GetAnchor() ); - return const_cast<SwSectionNode*>( dynamic_cast<const SwSectionNode*>( pSectNd ) ); - } -}; + virtual const SwNode* GetAnchor() const override; + virtual bool IsInRange( sal_uLong nSttNd, sal_uLong nEndNd ) const override; + SwSectionNode* GetSectNode() + { + const SwNode* pSectNd( GetAnchor() ); + return const_cast<SwSectionNode*>( dynamic_cast<const SwSectionNode*>( pSectNd ) ); + } + }; } SwSectionData::SwSectionData(SectionType const eType, OUString const& rName) @@ -254,7 +259,7 @@ SwSection::~SwSection() // If the Section is the last Client in the Format we can delete it SwPtrMsgPoolItem aMsgHint( RES_REMOVE_UNO_OBJECT, pFormat ); - pFormat->ModifyNotification( &aMsgHint, &aMsgHint ); + lcl_SwClientNotify(*pFormat, &aMsgHint); if( !pFormat->HasWriterListeners() ) { // Do not add to the Undo. This should've happened earlier. @@ -315,7 +320,7 @@ void SwSection::ImplSetHiddenFlag(bool const bTmpHidden, bool const bCondition) // Tell all Children that they are hidden SwMsgPoolItem aMsgItem( RES_SECTION_HIDDEN ); - pFormat->ModifyNotification( &aMsgItem, &aMsgItem ); + lcl_SwClientNotify(*pFormat, &aMsgItem); // Delete all Frames pFormat->DelFrames(); @@ -330,7 +335,7 @@ void SwSection::ImplSetHiddenFlag(bool const bTmpHidden, bool const bCondition) { // Tell all Children that the Parent is not hidden anymore SwMsgPoolItem aMsgItem( RES_SECTION_NOT_HIDDEN ); - pFormat->ModifyNotification( &aMsgItem, &aMsgItem ); + lcl_SwClientNotify(*pFormat, &aMsgItem); pFormat->MakeFrames(); } @@ -716,7 +721,7 @@ void SwSectionFormat::DelFrames() if( pCNd ) { const SfxPoolItem& rItem = pCNd->GetSwAttrSet().Get( RES_PAGEDESC ); - pCNd->ModifyNotification( &rItem, &rItem ); + lcl_SwClientNotify(*pCNd, &rItem); } } @@ -968,16 +973,14 @@ void SwSectionFormat::UpdateParent() if (!pProtect->IsContentProtected() != !pSection->IsProtectFlag()) { - pLast->ModifyNotification( static_cast<SfxPoolItem const *>(pProtect), - static_cast<SfxPoolItem const *>(pProtect) ); + lcl_SwClientNotify(*static_cast<SwModify*>(pLast), static_cast<SfxPoolItem const *>(pProtect)); } // edit in readonly sections if (!pEditInReadonly->GetValue() != !pSection->IsEditInReadonlyFlag()) { - pLast->ModifyNotification( static_cast<SfxPoolItem const *>(pEditInReadonly), - static_cast<SfxPoolItem const *>(pEditInReadonly) ); + lcl_SwClientNotify(*static_cast<SwModify*>(pLast), static_cast<SfxPoolItem const *>(pEditInReadonly)); } if( bIsHidden == pSection->IsHiddenFlag() ) @@ -985,7 +988,7 @@ void SwSectionFormat::UpdateParent() SwMsgPoolItem aMsgItem( static_cast<sal_uInt16>(bIsHidden ? RES_SECTION_HIDDEN : RES_SECTION_NOT_HIDDEN ) ); - pLast->ModifyNotification( &aMsgItem, &aMsgItem ); + lcl_SwClientNotify(*static_cast<SwModify*>(pLast), &aMsgItem); } } else if( !pSection && _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits