It used to return a pointer in wxUSE_STL==0 build and an object in
wxUSE_STL==1 one making checking its return value difficult without provoking
warnings from either MSVC or g++ (see #11038).
Also, all the other occurrences of Member() already returned bool, including
the one in wxStringList so changing it to return bool in wxList itself is more
consistent.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61966
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
without enclosing parentheses results in warnings from g++ with -Wparentheses,
add parentheses around the if statement body to work around it.
+- wxList::Member() now returns book and not a pointer/iterator. This shouldn't
+ require any changes as it was always meant to be used for checking for the
+ presence of an element in the list only. If you used it as Find(), simple do
+ use Find() instead.
+
Deprecated methods and their replacements
-----------------------------------------
iterator i = const_cast< liT* >(this)->end(); \
return compatibility_iterator( this, !empty() ? --i : i ); \
} \
- compatibility_iterator Member( elT e ) const \
+ bool Member( elT e ) const \
{ return Find( e ); } \
compatibility_iterator Nth( int n ) const \
{ return Item( n ); } \
// compatibility methods
void Sort(wxSortCompareFunction compfunc) { wxListBase::Sort(compfunc); }
-#endif
-
-#if wxUSE_STL
-#else
- wxNode *Member(wxObject *object) const { return (wxNode *)Find(object); }
-#endif
+ bool Member(wxObject *object) const { return Find(object) != NULL; }
+#endif // !wxUSE_STL
};
#if !wxUSE_STL
wxList<T>::compatibility_iterator Item(size_t index) const;
/**
- @deprecated This function is deprecated, use Find() instead.
+ Check if the object is present in the list.
+
+ @see Find()
*/
- wxList<T>::compatibility_iterator Member(T* object) const;
+ bool Member(T* object) const;
/**
@deprecated This function is deprecated, use Item() instead.
bool wxAppConsoleBase::IsScheduledForDestruction(wxObject *object) const
{
- return wxPendingDelete.Member(object) != NULL;
+ return wxPendingDelete.Member(object);
}
void wxAppConsoleBase::ScheduleForDestruction(wxObject *object)