summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorNoel Grandin <noel@peralex.com>2015-11-11 14:13:43 +0200
committerNoel Grandin <noel@peralex.com>2015-11-12 08:01:35 +0200
commit6e1c20b9949eebdb5e52d076d87157ca7f237f64 (patch)
tree1a36f5b9a8ba4f7d114c6c65e26f6b5d4e2fee9a /vcl
parentc8b2f752ceefaf128579524eb2bd62bc6c79f0ba (diff)
vcl: boost::ptr_vector->std::vector<std::unique_ptr>
Change-Id: I91d833a541f1d21be66789bba6c983aa741731d8
Diffstat (limited to 'vcl')
-rw-r--r--vcl/inc/ilstbox.hxx9
-rw-r--r--vcl/source/control/ilstbox.cxx26
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;
}