Move shared wxVector utilities to one place

This commit is contained in:
Artur Wieczorek
2018-11-10 21:20:06 +01:00
parent 43f7e35c52
commit c86f795914
4 changed files with 61 additions and 96 deletions

View File

@@ -43,44 +43,6 @@
#define wxPG_DEFAULT_SPLITTERX 110
// Utility to remove given item from the vector.
template<typename T>
static void wxPGRemoveItemFromVector(wxVector<T>& vector, const T& item)
{
#if wxUSE_STL
typename wxVector<T>::iterator it = std::find(vector.begin(), vector.end(), item);
if ( it != vector.end() )
{
vector.erase(it);
}
#else
for (typename wxVector<T>::iterator it = vector.begin(); it != vector.end(); ++it)
{
if ( *it == item )
{
vector.erase(it);
return;
}
}
#endif // wxUSE_STL/!wxUSE_STL
}
// Utility to check if specific item is in a vector.
template<typename T>
static bool wxPGItemExistsInVector(const wxVector<T>& vector, const T& item)
{
#if wxUSE_STL
return std::find(vector.begin(), vector.end(), item) != vector.end();
#else
for (typename wxVector<T>::const_iterator it = vector.begin(); it != vector.end(); ++it)
{
if ( *it == item )
return true;
}
return false;
#endif // wxUSE_STL/!wxUSE_STL
}
// -----------------------------------------------------------------------
// wxPropertyGridIterator
// -----------------------------------------------------------------------