X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2ff86a86a7f3f5778e3358758c087b8c3507bdc7..ab67e8874db324fab5223cc8d5dff8a8de3e2b77:/include/wx/vector.h diff --git a/include/wx/vector.h b/include/wx/vector.h index d558e774e6..b56b42e52d 100644 --- a/include/wx/vector.h +++ b/include/wx/vector.h @@ -28,7 +28,6 @@ inline void wxVectorSort(wxVector& v) #else // !wxUSE_STD_CONTAINERS -#include "wx/utils.h" #include "wx/scopeguard.h" #include "wx/meta/movable.h" #include "wx/meta/if.h" @@ -37,6 +36,15 @@ inline void wxVectorSort(wxVector& v) #include // for placement new #include "wx/afterstd.h" +// wxQsort is declared in wx/utils.h, but can't include that file here, +// it indirectly includes this file. Just lovely... +typedef int (*wxSortCallback)(const void* pItem1, + const void* pItem2, + const void* user_data); +WXDLLIMPEXP_BASE void wxQsort(void* pbase, size_t total_elems, + size_t size, wxSortCallback cmp, + const void* user_data); + namespace wxPrivate { @@ -242,10 +250,12 @@ public: // increase the size twice, unless we're already too big or unless // more is requested // - // NB: casts to size_type are needed to suppress mingw32 warnings about - // mixing enums and ints in the same expression + // NB: casts to size_type are needed to suppress warnings about + // mixing enumeral and non-enumeral type in conditional expression const size_type increment = m_size > 0 - ? wxMin(m_size, (size_type)ALLOC_MAX_SIZE) + ? m_size < ALLOC_MAX_SIZE + ? m_size + : (size_type)ALLOC_MAX_SIZE : (size_type)ALLOC_INITIAL_SIZE; if ( m_capacity + increment > n ) n = m_capacity + increment;