X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b619c109e6bc85fe2f9e5824c378d6135bc3a510..85b1997c095b18cd5e9e54e9d39feaa71c5ffa06:/interface/wx/dynarray.h diff --git a/interface/wx/dynarray.h b/interface/wx/dynarray.h index 4046bc5230..43779dc95c 100644 --- a/interface/wx/dynarray.h +++ b/interface/wx/dynarray.h @@ -200,11 +200,11 @@ @section array_predef Predefined array types wxWidgets defines the following dynamic array types: - - wxArrayShort - - wxArrayInt - - wxArrayDouble - - wxArrayLong - - wxArrayPtrVoid + - ::wxArrayShort + - ::wxArrayInt + - ::wxArrayDouble + - ::wxArrayLong + - ::wxArrayPtrVoid To use them you don't need any macro; you just need to include @c dynarray.h. @@ -214,6 +214,7 @@ @see @ref overview_container, wxList, wxVector */ +template class wxArray { public: @@ -545,14 +546,20 @@ public: @code T *item = array[n]; + array.Remove(item); delete item; - array.Remove(n); @endcode See also WX_CLEAR_ARRAY() macro which deletes all elements of a wxArray (supposed to contain pointers). + + Notice that for sorted arrays this method uses binary search to find + the item so it doesn't necessarily remove the first matching item, but + the first one found by the binary search. + + @see RemoveAt() */ - Remove(T item); + void Remove(T item); /** Removes @a count elements starting at @a index from the array. When an @@ -570,7 +577,7 @@ public: See also WX_CLEAR_ARRAY() macro which deletes all elements of a wxArray (supposed to contain pointers). */ - RemoveAt(size_t index, size_t count = 1); + void RemoveAt(size_t index, size_t count = 1); //@} @@ -595,15 +602,16 @@ public: another, identical, element is in the array. */ int Index(T& item, bool searchFromEnd = false) const; + /** This version of Index() is for wxSortedArray only. - Searches the element in the array, starting from either beginning or - the end depending on the value of @a searchFromEnd parameter. + Searches for the element in the array, using binary search. + @c wxNOT_FOUND is returned if the element is not found, otherwise the index of the element is returned. */ - const int Index(T& item) const; + int Index(T& item) const; /** Search for a place to insert @a item into the sorted array (binary @@ -794,3 +802,13 @@ public: */ #define WX_PREPEND_ARRAY(wxArray_arrayToModify, wxArray_arrayToBePrepended) +//@{ +/** + Predefined specialization of wxArray for standard types. +*/ +typedef wxArray wxArrayInt; +typedef wxArray wxArrayLong; +typedef wxArray wxArrayShort; +typedef wxArray wxArrayDouble; +typedef wxArray wxArrayPtrVoid; +//@}