/// empties the list and releases memory
void Clear();
/// preallocates memory for given number of items
- void Alloc(uint uiSize);
+ void Alloc(size_t uiSize);
//@}
/** @name simple accessors */
//@{
/// number of elements in the array
- uint Count() const { return m_uiCount; }
+ size_t Count() const { return m_uiCount; }
/// is it empty?
bool IsEmpty() const { return m_uiCount == 0; }
//@}
/** @name items access */
//@{
/// get item at position uiIndex (range checking is done in debug version)
- long& Item(uint uiIndex) const
+ long& Item(size_t uiIndex) const
{ wxASSERT( uiIndex < m_uiCount ); return m_pItems[uiIndex]; }
/// same as Item()
- long& operator[](uint uiIndex) const { return Item(uiIndex); }
+ long& operator[](size_t uiIndex) const { return Item(uiIndex); }
//@}
/** @name item management */
*/
int Index(long lItem, bool bFromEnd = FALSE) const;
/// search for an item using binary search in a sorted array
- int Index(long lItem, CMPFUNC fnCompare);
+ int Index(long lItem, CMPFUNC fnCompare) const;
/// add new element at the end
void Add(long lItem);
/// add item assuming the array is sorted with fnCompare function
void Add(long lItem, CMPFUNC fnCompare);
/// add new element at given position (it becomes Item[uiIndex])
- void Insert(long lItem, uint uiIndex);
+ void Insert(long lItem, size_t uiIndex);
/// remove first item matching this value
void Remove(long lItem);
/// remove item by index
- void Remove(uint uiIndex);
+ void Remove(size_t uiIndex);
//@}
/// sort array elements using given compare function
private:
void Grow(); // makes array bigger if needed
- uint m_uiSize, // current size of the array
+ size_t m_uiSize, // current size of the array
m_uiCount; // current number of elements
long *m_pItems; // pointer to data
{ ((wxBaseArray *)this)->operator=((const wxBaseArray&)src); \
return *this; } \
\
- T& operator[](uint uiIndex) const \
+ T& operator[](size_t uiIndex) const \
{ return (T&)(wxBaseArray::Item(uiIndex)); } \
- T& Item(uint uiIndex) const \
+ T& Item(size_t uiIndex) const \
{ return (T&)(wxBaseArray::Item(uiIndex)); } \
T& Last() const \
{ return (T&)(wxBaseArray::Item(Count() - 1)); } \
\
void Add(T Item) \
{ wxBaseArray::Add((long)Item); } \
- void Insert(T Item, uint uiIndex) \
+ void Insert(T Item, size_t uiIndex) \
{ wxBaseArray::Insert((long)Item, uiIndex) ; } \
\
- void Remove(uint uiIndex) { wxBaseArray::Remove(uiIndex); } \
+ void Remove(size_t uiIndex) { wxBaseArray::Remove(uiIndex); } \
void Remove(T Item) \
{ int iIndex = Index(Item); \
wxCHECK2_MSG( iIndex != NOT_FOUND, return, \
"removing inexisting element in wxArray::Remove" ); \
- wxBaseArray::Remove((uint)iIndex); } \
+ wxBaseArray::Remove((size_t)iIndex); } \
\
void Sort(CMPFUNC##T fCmp) { wxBaseArray::Sort((CMPFUNC)fCmp); } \
}
m_fnCompare = src.m_fnCompare; \
return *this; } \
\
- T& operator[](uint uiIndex) const \
+ T& operator[](size_t uiIndex) const \
{ return (T&)(wxBaseArray::Item(uiIndex)); } \
- T& Item(uint uiIndex) const \
+ T& Item(size_t uiIndex) const \
{ return (T&)(wxBaseArray::Item(uiIndex)); } \
T& Last() const \
{ return (T&)(wxBaseArray::Item(Count() - 1)); } \
void Add(T Item) \
{ wxBaseArray::Add((long)Item, (CMPFUNC)m_fnCompare); } \
\
- void Remove(uint uiIndex) { wxBaseArray::Remove(uiIndex); } \
+ void Remove(size_t uiIndex) { wxBaseArray::Remove(uiIndex); } \
void Remove(T Item) \
{ int iIndex = Index(Item); \
wxCHECK2_MSG( iIndex != NOT_FOUND, return, \
"removing inexisting element in wxArray::Remove" ); \
- wxBaseArray::Remove((uint)iIndex); } \
+ wxBaseArray::Remove((size_t)iIndex); } \
\
private: \
SCMPFUNC##T m_fnCompare; \
\
~name(); \
\
- T& operator[](uint uiIndex) const \
+ T& operator[](size_t uiIndex) const \
{ return *(T*)wxBaseArray::Item(uiIndex); } \
- T& Item(uint uiIndex) const \
+ T& Item(size_t uiIndex) const \
{ return *(T*)wxBaseArray::Item(uiIndex); } \
T& Last() const \
{ return *(T*)(wxBaseArray::Item(Count() - 1)); } \
void Add(const T* pItem) \
{ wxBaseArray::Add((long)pItem); } \
\
- void Insert(const T& Item, uint uiIndex); \
- void Insert(const T* pItem, uint uiIndex) \
+ void Insert(const T& Item, size_t uiIndex); \
+ void Insert(const T* pItem, size_t uiIndex) \
{ wxBaseArray::Insert((long)pItem, uiIndex); } \
\
void Empty(); \
\
- T* Detach(uint uiIndex) \
+ T* Detach(size_t uiIndex) \
{ T* p = (T*)wxBaseArray::Item(uiIndex); \
wxBaseArray::Remove(uiIndex); return p; } \
- void Remove(uint uiIndex); \
+ void Remove(size_t uiIndex); \
\
void Sort(CMPFUNC##T fCmp) { wxBaseArray::Sort((CMPFUNC)fCmp); } \
\