changed wxArrayString::m_pItems from wxChar* to const wxChar*, the strings are not modified by the class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -328,7 +328,7 @@ private:
|
|||||||
size_t m_nSize, // current size of the array
|
size_t m_nSize, // current size of the array
|
||||||
m_nCount; // current number of elements
|
m_nCount; // current number of elements
|
||||||
|
|
||||||
wxChar **m_pItems; // pointer to data
|
const wxChar **m_pItems; // pointer to data
|
||||||
|
|
||||||
bool m_autoSort; // if true, keep the array always sorted
|
bool m_autoSort; // if true, keep the array always sorted
|
||||||
};
|
};
|
||||||
|
@@ -2084,7 +2084,7 @@ void wxArrayString::Init(bool autoSort)
|
|||||||
{
|
{
|
||||||
m_nSize =
|
m_nSize =
|
||||||
m_nCount = 0;
|
m_nCount = 0;
|
||||||
m_pItems = (wxChar **) NULL;
|
m_pItems = (const wxChar **) NULL;
|
||||||
m_autoSort = autoSort;
|
m_autoSort = autoSort;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2134,7 +2134,7 @@ void wxArrayString::Grow(size_t nIncrement)
|
|||||||
m_nSize = ARRAY_DEFAULT_INITIAL_SIZE;
|
m_nSize = ARRAY_DEFAULT_INITIAL_SIZE;
|
||||||
if (m_nSize < nIncrement)
|
if (m_nSize < nIncrement)
|
||||||
m_nSize = nIncrement;
|
m_nSize = nIncrement;
|
||||||
m_pItems = new wxChar *[m_nSize];
|
m_pItems = new const wxChar *[m_nSize];
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
// otherwise when it's called for the first time, nIncrement would be 0
|
// otherwise when it's called for the first time, nIncrement would be 0
|
||||||
@@ -2147,7 +2147,7 @@ void wxArrayString::Grow(size_t nIncrement)
|
|||||||
if ( nIncrement < ndefIncrement )
|
if ( nIncrement < ndefIncrement )
|
||||||
nIncrement = ndefIncrement;
|
nIncrement = ndefIncrement;
|
||||||
m_nSize += nIncrement;
|
m_nSize += nIncrement;
|
||||||
wxChar **pNew = new wxChar *[m_nSize];
|
const wxChar **pNew = new const wxChar *[m_nSize];
|
||||||
|
|
||||||
// copy data to new location
|
// copy data to new location
|
||||||
memcpy(pNew, m_pItems, m_nCount*sizeof(wxChar *));
|
memcpy(pNew, m_pItems, m_nCount*sizeof(wxChar *));
|
||||||
@@ -2204,7 +2204,7 @@ void wxArrayString::Alloc(size_t nSize)
|
|||||||
{
|
{
|
||||||
// only if old buffer was not big enough
|
// only if old buffer was not big enough
|
||||||
if ( nSize > m_nSize ) {
|
if ( nSize > m_nSize ) {
|
||||||
wxChar **pNew = new wxChar *[nSize];
|
const wxChar **pNew = new const wxChar *[nSize];
|
||||||
if ( !pNew )
|
if ( !pNew )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@@ -2222,7 +2222,7 @@ void wxArrayString::Shrink()
|
|||||||
// only do it if we have some memory to free
|
// only do it if we have some memory to free
|
||||||
if( m_nCount < m_nSize ) {
|
if( m_nCount < m_nSize ) {
|
||||||
// allocates exactly as much memory as we need
|
// allocates exactly as much memory as we need
|
||||||
wxChar **pNew = new wxChar *[m_nCount];
|
const wxChar **pNew = new const wxChar *[m_nCount];
|
||||||
|
|
||||||
// copy data to new location
|
// copy data to new location
|
||||||
memcpy(pNew, m_pItems, m_nCount*sizeof(wxChar *));
|
memcpy(pNew, m_pItems, m_nCount*sizeof(wxChar *));
|
||||||
@@ -2344,7 +2344,7 @@ size_t wxArrayString::Add(const wxString& str, size_t nInsert)
|
|||||||
str.GetStringData()->Lock();
|
str.GetStringData()->Lock();
|
||||||
|
|
||||||
// just append
|
// just append
|
||||||
m_pItems[m_nCount + i] = (wxChar *)str.c_str(); // const_cast
|
m_pItems[m_nCount + i] = str.c_str();
|
||||||
}
|
}
|
||||||
size_t ret = m_nCount;
|
size_t ret = m_nCount;
|
||||||
m_nCount += nInsert;
|
m_nCount += nInsert;
|
||||||
@@ -2369,7 +2369,7 @@ void wxArrayString::Insert(const wxString& str, size_t nIndex, size_t nInsert)
|
|||||||
for (size_t i = 0; i < nInsert; i++)
|
for (size_t i = 0; i < nInsert; i++)
|
||||||
{
|
{
|
||||||
str.GetStringData()->Lock();
|
str.GetStringData()->Lock();
|
||||||
m_pItems[nIndex + i] = (wxChar *)str.c_str();
|
m_pItems[nIndex + i] = str.c_str();
|
||||||
}
|
}
|
||||||
m_nCount += nInsert;
|
m_nCount += nInsert;
|
||||||
}
|
}
|
||||||
@@ -2405,7 +2405,7 @@ void wxArrayString::SetCount(size_t count)
|
|||||||
|
|
||||||
wxString s;
|
wxString s;
|
||||||
while ( m_nCount < count )
|
while ( m_nCount < count )
|
||||||
m_pItems[m_nCount++] = (wxChar *)s.c_str();
|
m_pItems[m_nCount++] = s.c_str();
|
||||||
}
|
}
|
||||||
|
|
||||||
// removes item from array (by index)
|
// removes item from array (by index)
|
||||||
|
Reference in New Issue
Block a user