diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-09-17 15:58:34 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-09-25 14:28:26 +0200 |
commit | add7d506b9ef9b799aefbbae1270642991b15668 (patch) | |
tree | 59bec8482d832a8bbcf8abd13c8529161b904cb3 | |
parent | 191dda3eca5518aa866ddada48bc8465c8aba1ba (diff) |
loplugin:useuniqueptr in SvImpLBox
Change-Id: I59aa026217ed250fab68afc4aa0086d4d1300eac
Reviewed-on: https://gerrit.libreoffice.org/60627
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r-- | basctl/source/basicide/baside2b.cxx | 2 | ||||
-rw-r--r-- | cui/source/options/fontsubs.cxx | 4 | ||||
-rw-r--r-- | cui/source/options/optfltr.cxx | 4 | ||||
-rw-r--r-- | cui/source/tabpages/autocdlg.cxx | 4 | ||||
-rw-r--r-- | include/svtools/treelistbox.hxx | 2 | ||||
-rw-r--r-- | svtools/source/contnr/svimpbox.cxx | 6 | ||||
-rw-r--r-- | svtools/source/contnr/treelistbox.cxx | 39 |
7 files changed, 28 insertions, 33 deletions
diff --git a/basctl/source/basicide/baside2b.cxx b/basctl/source/basicide/baside2b.cxx index f2ccbc6e3812..4cbd2fe8c6b0 100644 --- a/basctl/source/basicide/baside2b.cxx +++ b/basctl/source/basicide/baside2b.cxx @@ -2096,7 +2096,7 @@ void WatchTreeListBox::SetTabs() sal_uInt16 nTabCount_ = aTabs.size(); for( sal_uInt16 i = 0 ; i < nTabCount_ ; i++ ) { - SvLBoxTab* pTab = aTabs[i]; + SvLBoxTab* pTab = aTabs[i].get(); if( i == 2 ) pTab->nFlags |= SvLBoxTabFlags::EDITABLE; else diff --git a/cui/source/options/fontsubs.cxx b/cui/source/options/fontsubs.cxx index ce5dd9668c30..228632262dfa 100644 --- a/cui/source/options/fontsubs.cxx +++ b/cui/source/options/fontsubs.cxx @@ -435,11 +435,11 @@ void SvxFontSubstCheckListBox::SetTabs() SvSimpleTable::SetTabs(); SvLBoxTabFlags nAdjust = SvLBoxTabFlags::ADJUST_RIGHT|SvLBoxTabFlags::ADJUST_LEFT|SvLBoxTabFlags::ADJUST_CENTER|SvLBoxTabFlags::ADJUST_NUMERIC|SvLBoxTabFlags::FORCE; - SvLBoxTab* pTab = aTabs[1]; + SvLBoxTab* pTab = aTabs[1].get(); pTab->nFlags &= ~nAdjust; pTab->nFlags |= SvLBoxTabFlags::PUSHABLE|SvLBoxTabFlags::ADJUST_CENTER|SvLBoxTabFlags::FORCE; - pTab = aTabs[2]; + pTab = aTabs[2].get(); pTab->nFlags &= ~nAdjust; pTab->nFlags |= SvLBoxTabFlags::PUSHABLE|SvLBoxTabFlags::ADJUST_CENTER|SvLBoxTabFlags::FORCE; } diff --git a/cui/source/options/optfltr.cxx b/cui/source/options/optfltr.cxx index 9ec7a56ed481..2e917cf10b4c 100644 --- a/cui/source/options/optfltr.cxx +++ b/cui/source/options/optfltr.cxx @@ -368,13 +368,13 @@ void OfaMSFilterTabPage2::MSFltrSimpleTable::SetTabs() if( aTabs.size() > 1 ) { - SvLBoxTab* pTab = aTabs[1]; + SvLBoxTab* pTab = aTabs[1].get(); pTab->nFlags &= ~nAdjust; pTab->nFlags |= SvLBoxTabFlags::PUSHABLE|SvLBoxTabFlags::ADJUST_CENTER|SvLBoxTabFlags::FORCE; } if( aTabs.size() > 2 ) { - SvLBoxTab* pTab = aTabs[2]; + SvLBoxTab* pTab = aTabs[2].get(); pTab->nFlags &= ~nAdjust; pTab->nFlags |= SvLBoxTabFlags::PUSHABLE|SvLBoxTabFlags::ADJUST_CENTER|SvLBoxTabFlags::FORCE; } diff --git a/cui/source/tabpages/autocdlg.cxx b/cui/source/tabpages/autocdlg.cxx index f221bb9da9e7..2fdb140df21c 100644 --- a/cui/source/tabpages/autocdlg.cxx +++ b/cui/source/tabpages/autocdlg.cxx @@ -761,13 +761,13 @@ void OfaACorrCheckListBox::SetTabs() if( aTabs.size() > 1 ) { - SvLBoxTab* pTab = aTabs[1]; + SvLBoxTab* pTab = aTabs[1].get(); pTab->nFlags &= ~nAdjust; pTab->nFlags |= SvLBoxTabFlags::PUSHABLE|SvLBoxTabFlags::ADJUST_CENTER|SvLBoxTabFlags::FORCE; } if( aTabs.size() > 2 ) { - SvLBoxTab* pTab = aTabs[2]; + SvLBoxTab* pTab = aTabs[2].get(); pTab->nFlags &= ~nAdjust; pTab->nFlags |= SvLBoxTabFlags::PUSHABLE|SvLBoxTabFlags::ADJUST_CENTER|SvLBoxTabFlags::FORCE; } diff --git a/include/svtools/treelistbox.hxx b/include/svtools/treelistbox.hxx index ee6fff1a7d91..abaf5adb3e75 100644 --- a/include/svtools/treelistbox.hxx +++ b/include/svtools/treelistbox.hxx @@ -251,7 +251,7 @@ protected: Link<SvTreeListBox*,bool> aDoubleClickHdl; SvTreeListEntry* pTargetEntry; SvLBoxButtonData* pCheckButtonData; - std::vector<SvLBoxTab*> aTabs; + std::vector<std::unique_ptr<SvLBoxTab>> aTabs; SvTreeFlags nTreeFlags; SvTreeListBoxFlags nImpFlags; // Move/CopySelection: Position of the current Entry in SelectionList diff --git a/svtools/source/contnr/svimpbox.cxx b/svtools/source/contnr/svimpbox.cxx index 0ae2d0caf635..551122ad913d 100644 --- a/svtools/source/contnr/svimpbox.cxx +++ b/svtools/source/contnr/svimpbox.cxx @@ -3161,8 +3161,8 @@ SvLBoxTab* SvImpLBox::NextTab( SvLBoxTab const * pTab ) return nullptr; for( int nTab=0; nTab < (nTabCount-1); nTab++) { - if( pView->aTabs[nTab]==pTab ) - return pView->aTabs[nTab+1]; + if( pView->aTabs[nTab].get() == pTab ) + return pView->aTabs[nTab+1].get(); } return nullptr; } @@ -3199,7 +3199,7 @@ bool SvImpLBox::SetMostRight( SvTreeListEntry* pEntry ) if( nLastItem < nLastTab ) nLastTab = nLastItem; - SvLBoxTab* pTab = pView->aTabs[ nLastTab ]; + SvLBoxTab* pTab = pView->aTabs[ nLastTab ].get(); SvLBoxItem& rItem = pEntry->GetItem( nLastTab ); long nTabPos = pView->GetTabPos( pEntry, pTab ); diff --git a/svtools/source/contnr/treelistbox.cxx b/svtools/source/contnr/treelistbox.cxx index bbc4e4c71024..d3a667d5abb4 100644 --- a/svtools/source/contnr/treelistbox.cxx +++ b/svtools/source/contnr/treelistbox.cxx @@ -2460,10 +2460,12 @@ void SvTreeListBox::EditItemText(SvTreeListEntry* pEntry, SvLBoxString* pItem, c aPos.setX( GetTabPos( pEntry, pTab ) ); long nOutputWidth = pImpl->GetOutputSize().Width(); Size aSize( nOutputWidth - aPos.X(), aItemSize.Height() ); - sal_uInt16 nPos = std::find( aTabs.begin(), aTabs.end(), pTab ) - aTabs.begin(); + sal_uInt16 nPos = std::find_if( aTabs.begin(), aTabs.end(), + [pTab](const std::unique_ptr<SvLBoxTab>& p) { return p.get() == pTab; }) + - aTabs.begin(); if( nPos+1 < static_cast<sal_uInt16>(aTabs.size()) ) { - SvLBoxTab* pRightTab = aTabs[ nPos + 1 ]; + SvLBoxTab* pRightTab = aTabs[ nPos + 1 ].get(); long nRight = GetTabPos( pEntry, pRightTab ); if( nRight <= nOutputWidth ) aSize.setWidth( nRight - aPos.X() ); @@ -2685,9 +2687,9 @@ void SvTreeListBox::PaintEntry1(SvTreeListEntry& rEntry, long nLine, vcl::Render while (nCurTab < nTabCount && nCurItem < nItemCount) { - SvLBoxTab* pTab = aTabs[nCurTab]; + SvLBoxTab* pTab = aTabs[nCurTab].get(); sal_uInt16 nNextTab = nCurTab + 1; - SvLBoxTab* pNextTab = nNextTab < nTabCount ? aTabs[nNextTab] : nullptr; + SvLBoxTab* pNextTab = nNextTab < nTabCount ? aTabs[nNextTab].get() : nullptr; SvLBoxItem* pItem = nCurItem < nItemCount ? &rEntry.GetItem(nCurItem) : nullptr; SvLBoxTabFlags nFlags = pTab->nFlags; @@ -2854,7 +2856,7 @@ void SvTreeListBox::PaintEntry1(SvTreeListEntry& rEntry, long nLine, vcl::Render do { nNextTab++; - pNextTab = nNextTab < nTabCount ? aTabs[nNextTab] : nullptr; + pNextTab = nNextTab < nTabCount ? aTabs[nNextTab].get() : nullptr; } while (pNextTab && pNextTab->IsDynamic()); if (!(!pNextTab || (GetTabPos( &rEntry, pNextTab ) > nDynTabPos))) @@ -2949,7 +2951,7 @@ tools::Rectangle SvTreeListBox::GetFocusRect( SvTreeListEntry* pEntry, long nLin long nNextTabPos; if( pTab && nCurTab < aTabs.size() - 1 ) { - SvLBoxTab* pNextTab = aTabs[ nCurTab + 1 ]; + SvLBoxTab* pNextTab = aTabs[ nCurTab + 1 ].get(); nNextTabPos = GetTabPos( pEntry, pNextTab ); } else @@ -2990,7 +2992,7 @@ tools::Rectangle SvTreeListBox::GetFocusRect( SvTreeListEntry* pEntry, long nLin GetLastTab(SvLBoxTabFlags::SHOW_SELECTION,nLastTab); nLastTab++; if( nLastTab < aTabs.size() ) // is there another one? - pLastTab = aTabs[ nLastTab ]; + pLastTab = aTabs[ nLastTab ].get(); aSize.setWidth( pLastTab ? pLastTab->GetPos() : 0x0fffffff ); nFocusWidth = static_cast<short>(aSize.Width()); @@ -3045,7 +3047,7 @@ SvLBoxItem* SvTreeListBox::GetItem_Impl( SvTreeListEntry* pEntry, long nX, SvLBoxItem* pItemClicked = nullptr; sal_uInt16 nTabCount = aTabs.size(); sal_uInt16 nItemCount = pEntry->ItemCount(); - SvLBoxTab* pTab = aTabs.front(); + SvLBoxTab* pTab = aTabs.front().get(); SvLBoxItem* pItem = &pEntry->GetItem(0); sal_uInt16 nNextItem = 1; nX -= GetMapMode().GetOrigin().X(); @@ -3054,7 +3056,7 @@ SvLBoxItem* SvTreeListBox::GetItem_Impl( SvTreeListEntry* pEntry, long nX, while( true ) { - SvLBoxTab* pNextTab=nNextItem<nTabCount ? aTabs[nNextItem] : nullptr; + SvLBoxTab* pNextTab=nNextItem<nTabCount ? aTabs[nNextItem].get() : nullptr; long nStart = GetTabPos( pEntry, pTab ); long nNextTabPos; @@ -3088,7 +3090,7 @@ SvLBoxItem* SvTreeListBox::GetItem_Impl( SvTreeListEntry* pEntry, long nX, } if( nNextItem >= nItemCount || nNextItem >= nTabCount) break; - pTab = aTabs[ nNextItem ]; + pTab = aTabs[ nNextItem ].get(); pItem = &pEntry->GetItem( nNextItem ); nNextItem++; } @@ -3195,7 +3197,7 @@ void SvTreeListBox::AddTab(long nTabPos, SvLBoxTabFlags nFlags ) { nFocusWidth = -1; SvLBoxTab* pTab = new SvLBoxTab( nTabPos, nFlags ); - aTabs.push_back( pTab ); + aTabs.emplace_back( pTab ); if( nTreeFlags & SvTreeFlags::USESEL ) { sal_uInt16 nPos = aTabs.size() - 1; @@ -3215,7 +3217,7 @@ SvLBoxTab* SvTreeListBox::GetFirstDynamicTab( sal_uInt16& rPos ) const sal_uInt16 nTabCount = aTabs.size(); while( nCurTab < nTabCount ) { - SvLBoxTab* pTab = aTabs[nCurTab]; + SvLBoxTab* pTab = aTabs[nCurTab].get(); if( pTab->nFlags & SvLBoxTabFlags::DYNAMIC ) { rPos = nCurTab; @@ -3235,18 +3237,11 @@ SvLBoxTab* SvTreeListBox::GetFirstDynamicTab() const SvLBoxTab* SvTreeListBox::GetTab( SvTreeListEntry const * pEntry, SvLBoxItem const * pItem) const { sal_uInt16 nPos = pEntry->GetPos( pItem ); - return aTabs[ nPos ]; + return aTabs[ nPos ].get(); } void SvTreeListBox::ClearTabList() { - sal_uInt16 nTabCount = aTabs.size(); - while( nTabCount ) - { - nTabCount--; - SvLBoxTab* pDelTab = aTabs[ nTabCount ]; - delete pDelTab; - } aTabs.clear(); } @@ -3335,7 +3330,7 @@ SvLBoxTab* SvTreeListBox::GetFirstTab( SvLBoxTabFlags nFlagMask, sal_uInt16& rPo sal_uInt16 nTabCount = aTabs.size(); for( sal_uInt16 nPos = 0; nPos < nTabCount; nPos++ ) { - SvLBoxTab* pTab = aTabs[ nPos ]; + SvLBoxTab* pTab = aTabs[ nPos ].get(); if( pTab->nFlags & nFlagMask ) { rPos = nPos; @@ -3352,7 +3347,7 @@ void SvTreeListBox::GetLastTab( SvLBoxTabFlags nFlagMask, sal_uInt16& rTabPos ) while( nPos ) { --nPos; - SvLBoxTab* pTab = aTabs[ nPos ]; + SvLBoxTab* pTab = aTabs[ nPos ].get(); if( pTab->nFlags & nFlagMask ) { rTabPos = nPos; |