diff options
author | Noel Grandin <noel@peralex.com> | 2015-11-11 14:13:43 +0200 |
---|---|---|
committer | Noel Grandin <noel@peralex.com> | 2015-11-12 08:01:35 +0200 |
commit | 6e1c20b9949eebdb5e52d076d87157ca7f237f64 (patch) | |
tree | 1a36f5b9a8ba4f7d114c6c65e26f6b5d4e2fee9a /vcl | |
parent | c8b2f752ceefaf128579524eb2bd62bc6c79f0ba (diff) |
vcl: boost::ptr_vector->std::vector<std::unique_ptr>
Change-Id: I91d833a541f1d21be66789bba6c983aa741731d8
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/inc/ilstbox.hxx | 9 | ||||
-rw-r--r-- | vcl/source/control/ilstbox.cxx | 26 |
2 files changed, 18 insertions, 17 deletions
diff --git a/vcl/inc/ilstbox.hxx b/vcl/inc/ilstbox.hxx index 7552f00f3205..f6c092cdda3f 100644 --- a/vcl/inc/ilstbox.hxx +++ b/vcl/inc/ilstbox.hxx @@ -20,7 +20,8 @@ #ifndef INCLUDED_VCL_INC_ILSTBOX_HXX #define INCLUDED_VCL_INC_ILSTBOX_HXX -#include <boost/ptr_container/ptr_vector.hpp> +#include <vector> +#include <memory> #include <boost/signals2/signal.hpp> #include <vcl/image.hxx> #include <vcl/ctrl.hxx> @@ -51,7 +52,7 @@ struct ImplEntryType OUString maStr; Image maImage; void* mpUserData; - bool mbIsSelected; + bool mbIsSelected; ListBoxEntryFlags mnFlags; long mnHeight; @@ -97,13 +98,13 @@ private: Link<sal_Int32,void> maSelectionChangedHdl; bool mbCallSelectionChangedHdl; - boost::ptr_vector<ImplEntryType> maEntries; + std::vector<std::unique_ptr<ImplEntryType> > maEntries; ImplEntryType* GetEntry( sal_Int32 nPos ) const { if (nPos < 0 || static_cast<size_t>(nPos) >= maEntries.size()) return nullptr; - return const_cast<ImplEntryType*>(&maEntries[nPos]); + return const_cast<ImplEntryType*>(maEntries[nPos].get()); } public: diff --git a/vcl/source/control/ilstbox.cxx b/vcl/source/control/ilstbox.cxx index caf3099eea05..1cd6e529ecb7 100644 --- a/vcl/source/control/ilstbox.cxx +++ b/vcl/source/control/ilstbox.cxx @@ -87,12 +87,12 @@ void ImplEntryList::SelectEntry( sal_Int32 nPos, bool bSelect ) { if (0 <= nPos && static_cast<size_t>(nPos) < maEntries.size()) { - boost::ptr_vector<ImplEntryType>::iterator iter = maEntries.begin()+nPos; + std::vector<std::unique_ptr<ImplEntryType> >::iterator iter = maEntries.begin()+nPos; - if ( ( iter->mbIsSelected != bSelect ) && - ( (iter->mnFlags & ListBoxEntryFlags::DisableSelection) == ListBoxEntryFlags::NONE ) ) + if ( ( (*iter)->mbIsSelected != bSelect ) && + ( ( (*iter)->mnFlags & ListBoxEntryFlags::DisableSelection) == ListBoxEntryFlags::NONE ) ) { - iter->mbIsSelected = bSelect; + (*iter)->mbIsSelected = bSelect; if ( mbCallSelectionChangedHdl ) maSelectionChangedHdl.Call( nPos ); } @@ -135,12 +135,12 @@ sal_Int32 ImplEntryList::InsertEntry( sal_Int32 nPos, ImplEntryType* pNewEntry, if (0 <= nPos && nPos < nEntriesSize) { insPos = nPos; - maEntries.insert( maEntries.begin() + nPos, pNewEntry ); + maEntries.insert( maEntries.begin() + nPos, std::unique_ptr<ImplEntryType>(pNewEntry) ); } else { insPos = nEntriesSize; - maEntries.push_back(pNewEntry); + maEntries.push_back(std::unique_ptr<ImplEntryType>(pNewEntry)); } } else @@ -159,7 +159,7 @@ sal_Int32 ImplEntryList::InsertEntry( sal_Int32 nPos, ImplEntryType* pNewEntry, if ( nComp >= 0 ) { insPos = nEntriesSize; - maEntries.push_back(pNewEntry); + maEntries.push_back(std::unique_ptr<ImplEntryType>(pNewEntry)); } else { @@ -169,7 +169,7 @@ sal_Int32 ImplEntryList::InsertEntry( sal_Int32 nPos, ImplEntryType* pNewEntry, if ( nComp <= 0 ) { insPos = 0; - maEntries.insert(maEntries.begin(),pNewEntry); + maEntries.insert(maEntries.begin(), std::unique_ptr<ImplEntryType>(pNewEntry)); } else { @@ -201,7 +201,7 @@ sal_Int32 ImplEntryList::InsertEntry( sal_Int32 nPos, ImplEntryType* pNewEntry, nMid++; insPos = nMid; - maEntries.insert(maEntries.begin()+nMid,pNewEntry); + maEntries.insert(maEntries.begin()+nMid, std::unique_ptr<ImplEntryType>(pNewEntry)); } } } @@ -212,7 +212,7 @@ sal_Int32 ImplEntryList::InsertEntry( sal_Int32 nPos, ImplEntryType* pNewEntry, // Collator implementation is garbage then give the user a chance to see // his stuff insPos = 0; - maEntries.insert(maEntries.begin(),pNewEntry); + maEntries.insert(maEntries.begin(), std::unique_ptr<ImplEntryType>(pNewEntry)); } } @@ -224,9 +224,9 @@ void ImplEntryList::RemoveEntry( sal_Int32 nPos ) { if (0 <= nPos && static_cast<size_t>(nPos) < maEntries.size()) { - boost::ptr_vector<ImplEntryType>::iterator iter = maEntries.begin()+ nPos; + std::vector<std::unique_ptr<ImplEntryType> >::iterator iter = maEntries.begin()+ nPos; - if ( !!iter->maImage ) + if ( !!(*iter)->maImage ) mnImages--; maEntries.erase(iter); @@ -238,7 +238,7 @@ sal_Int32 ImplEntryList::FindEntry( const OUString& rString, bool bSearchMRUArea const sal_Int32 nEntries = static_cast<sal_Int32>(maEntries.size()); for ( sal_Int32 n = bSearchMRUArea ? 0 : GetMRUCount(); n < nEntries; n++ ) { - OUString aComp( vcl::I18nHelper::filterFormattingChars( maEntries[n].maStr ) ); + OUString aComp( vcl::I18nHelper::filterFormattingChars( maEntries[n]->maStr ) ); if ( aComp == rString ) return n; } |