sw/inc/view.hxx | 4 +-- sw/source/uibase/uiview/view.cxx | 4 +-- sw/source/uibase/uiview/viewsrch.cxx | 44 +++++++++++++++++------------------ 3 files changed, 26 insertions(+), 26 deletions(-)
New commits: commit bbd598e62fe66352fc366c3e78c0aad753ea2ad7 Author: Noel Grandin <noel.gran...@collabora.co.uk> AuthorDate: Wed Aug 12 11:11:21 2020 +0200 Commit: Noel Grandin <noel.gran...@collabora.co.uk> CommitDate: Thu Aug 13 08:16:22 2020 +0200 use unique_ptr in SwView Change-Id: I0aee92369627b18f8c6eabb756e0f409863e2a58 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100617 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/sw/inc/view.hxx b/sw/inc/view.hxx index 2a7bc89ab7e3..85ab3f1c930f 100644 --- a/sw/inc/view.hxx +++ b/sw/inc/view.hxx @@ -158,8 +158,8 @@ class SW_DLLPUBLIC SwView: public SfxViewShell static bool s_bFound; static bool s_bJustOpened; - static SearchAttrItemList* s_pSearchList; - static SearchAttrItemList* s_pReplaceList; + static std::unique_ptr<SearchAttrItemList> s_xSearchList; + static std::unique_ptr<SearchAttrItemList> s_xReplaceList; Timer m_aTimer; // for delayed ChgLnks during an action OUString m_sSwViewData, diff --git a/sw/source/uibase/uiview/view.cxx b/sw/source/uibase/uiview/view.cxx index 94b400346895..5ee6f15b65a9 100644 --- a/sw/source/uibase/uiview/view.cxx +++ b/sw/source/uibase/uiview/view.cxx @@ -118,8 +118,8 @@ bool SwView::s_bExtra = false; bool SwView::s_bFound = false; bool SwView::s_bJustOpened = false; -SearchAttrItemList* SwView::s_pSearchList = nullptr; -SearchAttrItemList* SwView::s_pReplaceList = nullptr; +std::unique_ptr<SearchAttrItemList> SwView::s_xSearchList; +std::unique_ptr<SearchAttrItemList> SwView::s_xReplaceList; SfxDispatcher &SwView::GetDispatcher() { diff --git a/sw/source/uibase/uiview/viewsrch.cxx b/sw/source/uibase/uiview/viewsrch.cxx index c037f5394a5d..bc4ac9b353ff 100644 --- a/sw/source/uibase/uiview/viewsrch.cxx +++ b/sw/source/uibase/uiview/viewsrch.cxx @@ -164,8 +164,8 @@ void SwView::ExecSearch(SfxRequest& rReq) delete s_pSrchItem; s_pSrchItem = pArgs->Get(SID_SEARCH_ITEM).Clone(); - DELETEZ( s_pSearchList ); - DELETEZ( s_pReplaceList ); + s_xSearchList.reset(); + s_xReplaceList.reset(); SvxSearchDialog *const pSrchDlg(GetSearchDialog()); if (pSrchDlg) @@ -173,11 +173,11 @@ void SwView::ExecSearch(SfxRequest& rReq) // We will remember the search-/replace items. const SearchAttrItemList* pList = pSrchDlg->GetSearchItemList(); if( nullptr != pList && pList->Count() ) - s_pSearchList = new SearchAttrItemList( *pList ); + s_xSearchList.reset(new SearchAttrItemList( *pList )); pList = pSrchDlg->GetReplaceItemList(); if (nullptr != pList && pList->Count()) - s_pReplaceList = new SearchAttrItemList( *pList ); + s_xReplaceList.reset(new SearchAttrItemList( *pList )); } } break; @@ -194,16 +194,16 @@ void SwView::ExecSearch(SfxRequest& rReq) SvxSearchDialog * pSrchDlg(GetSearchDialog()); if (pSrchDlg) { - DELETEZ( s_pSearchList ); - DELETEZ( s_pReplaceList ); + s_xSearchList.reset(); + s_xReplaceList.reset(); const SearchAttrItemList* pList = pSrchDlg->GetSearchItemList(); if( nullptr != pList && pList->Count() ) - s_pSearchList = new SearchAttrItemList( *pList ); + s_xSearchList.reset(new SearchAttrItemList( *pList )); pList = pSrchDlg->GetReplaceItemList(); if (nullptr != pList && pList->Count()) - s_pReplaceList = new SearchAttrItemList( *pList ); + s_xReplaceList.reset(new SearchAttrItemList( *pList )); } if (nSlot == FN_REPEAT_SEARCH) @@ -269,7 +269,7 @@ void SwView::ExecSearch(SfxRequest& rReq) SvxSearchCmd nCmd = SvxSearchCmd::FIND; if( !s_pSrchItem->GetReplaceString().isEmpty() || - !s_pReplaceList ) + !s_xReplaceList ) { // Prevent, that the replaced string will be found again // if the replacement string is containing the search string. @@ -293,7 +293,7 @@ void SwView::ExecSearch(SfxRequest& rReq) m_pWrtShell->SwapPam(); } } - else if( s_pReplaceList ) + else if( s_xReplaceList ) nCmd = SvxSearchCmd::REPLACE; // 2) Search further (without replacing!) @@ -420,16 +420,16 @@ void SwView::ExecSearch(SfxRequest& rReq) { nWhich = SID_SEARCH_REPLACESET; - if ( s_pReplaceList ) + if ( s_xReplaceList ) { - s_pReplaceList->Get( aSet ); - DELETEZ( s_pReplaceList ); + s_xReplaceList->Get( aSet ); + s_xReplaceList.reset(); } } - else if ( s_pSearchList ) + else if ( s_xSearchList ) { - s_pSearchList->Get( aSet ); - DELETEZ( s_pSearchList ); + s_xSearchList->Get( aSet ); + s_xSearchList.reset(); } rReq.SetReturnValue( SvxSetItem( nWhich, aSet ) ); } @@ -685,11 +685,11 @@ void SwView::Replace() bool bReplaced = m_pWrtShell->SwEditShell::Replace( s_pSrchItem->GetReplaceString(), s_pSrchItem->GetRegExp()); - if( bReplaced && s_pReplaceList && s_pReplaceList->Count() && m_pWrtShell->HasSelection() ) + if( bReplaced && s_xReplaceList && s_xReplaceList->Count() && m_pWrtShell->HasSelection() ) { SfxItemSet aReplSet( m_pWrtShell->GetAttrPool(), aTextFormatCollSetRange ); - if( s_pReplaceList->Get( aReplSet ).Count() ) + if( s_xReplaceList->Get( aReplSet ).Count() ) { ::SfxToSwPageDescAttr( *m_pWrtShell, aReplSet ); m_pWrtShell->SwEditShell::SetAttrSet( aReplSet ); @@ -742,20 +742,20 @@ sal_uLong SwView::FUNC_Search( const SwSearchOptions& rOptions ) 0 }; SfxItemSet aSrchSet( m_pWrtShell->GetAttrPool(), aSearchAttrRange); - if( s_pSearchList && s_pSearchList->Count() ) + if( s_xSearchList && s_xSearchList->Count() ) { - s_pSearchList->Get( aSrchSet ); + s_xSearchList->Get( aSrchSet ); // -- Page break with page template ::SfxToSwPageDescAttr( *m_pWrtShell, aSrchSet ); } std::unique_ptr<SfxItemSet> pReplSet; - if( bDoReplace && s_pReplaceList && s_pReplaceList->Count() ) + if( bDoReplace && s_xReplaceList && s_xReplaceList->Count() ) { pReplSet.reset( new SfxItemSet( m_pWrtShell->GetAttrPool(), aSearchAttrRange ) ); - s_pReplaceList->Get( *pReplSet ); + s_xReplaceList->Get( *pReplSet ); // -- Page break with page template ::SfxToSwPageDescAttr( *m_pWrtShell, *pReplSet ); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits