fix other insert() overloads to work when inserting at the end of the list, continuation of r56299 (see #10103)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58742 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1019,13 +1019,13 @@ private:
|
|||||||
void insert(const iterator& it, size_type n, const_reference v) \
|
void insert(const iterator& it, size_type n, const_reference v) \
|
||||||
{ \
|
{ \
|
||||||
for(size_type i = 0; i < n; ++i) \
|
for(size_type i = 0; i < n; ++i) \
|
||||||
Insert(it.m_node, (const_base_reference)v); \
|
insert(it, v); \
|
||||||
} \
|
} \
|
||||||
void insert(const iterator& it, \
|
void insert(const iterator& it, \
|
||||||
const_iterator first, const const_iterator& last) \
|
const_iterator first, const const_iterator& last) \
|
||||||
{ \
|
{ \
|
||||||
for(; first != last; ++first) \
|
for(; first != last; ++first) \
|
||||||
Insert(it.m_node, (const_base_reference)*first); \
|
insert(it, *first); \
|
||||||
} \
|
} \
|
||||||
iterator erase(const iterator& it) \
|
iterator erase(const iterator& it) \
|
||||||
{ \
|
{ \
|
||||||
|
@@ -161,6 +161,17 @@ void ListsTestCase::wxStdListTest()
|
|||||||
it = list1.erase(++it, list1.end());
|
it = list1.erase(++it, list1.end());
|
||||||
CPPUNIT_ASSERT_EQUAL( 1, list1.size() );
|
CPPUNIT_ASSERT_EQUAL( 1, list1.size() );
|
||||||
CPPUNIT_ASSERT( it == list1.end() );
|
CPPUNIT_ASSERT( it == list1.end() );
|
||||||
|
|
||||||
|
wxListInt list2;
|
||||||
|
list2.push_back((int *)3);
|
||||||
|
list2.push_back((int *)4);
|
||||||
|
list1.insert(list1.begin(), list2.begin(), list2.end());
|
||||||
|
CPPUNIT_ASSERT_EQUAL( 3, list1.size() );
|
||||||
|
CPPUNIT_ASSERT_EQUAL( (int *)3, list1.front() );
|
||||||
|
|
||||||
|
list1.insert(list1.end(), list2.begin(), list2.end());
|
||||||
|
CPPUNIT_ASSERT_EQUAL( 5, list1.size() );
|
||||||
|
CPPUNIT_ASSERT_EQUAL( (int *)4, list1.back() );
|
||||||
}
|
}
|
||||||
|
|
||||||
void ListsTestCase::wxListCtorTest()
|
void ListsTestCase::wxListCtorTest()
|
||||||
|
Reference in New Issue
Block a user