Added --use-stl to cnfigure, wxUSE_STL to setup0.h
Moved wx/datetime.inl contents to wx/datetime.h and removed inline redefinition hack. Implemented STL-like interface on top of wxList/wxArray, when wxUSE_STL=0. Implemented wxList-like and wxArray interfaces on top of std::list and std::vector, when wxUSE_STL=1. Added arrstr.h, moved wxArrayString declaration there; string.h #includes arrstr.h only if WXWIN_COMPATIBILITY_2_4 is enabled. Added WX_CLEAR_HASH_MAP, WX_CLEAR_HASH_TABLE, WX_CLEAR_LIST macros, to clear a wxHashMap, wxHashTable, wxList containing pointers: deletes pointers and makes container zero-sized. When wxUSE_STL=1, wxStringList works like a std::list<wxString>. Made wxBase compile when wxUSE_STL=1. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -383,7 +383,14 @@ static wxFontEncoding
|
||||
};
|
||||
|
||||
|
||||
|
||||
static bool FindEncoding(const wxFontEncodingArray& arr, wxFontEncoding f)
|
||||
{
|
||||
for (wxFontEncodingArray::const_iterator it = arr.begin(), en = arr.end();
|
||||
it != en; ++it)
|
||||
if (*it == f)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
wxFontEncodingArray wxEncodingConverter::GetPlatformEquivalents(wxFontEncoding enc, int platform)
|
||||
{
|
||||
@@ -412,9 +419,9 @@ wxFontEncodingArray wxEncodingConverter::GetPlatformEquivalents(wxFontEncoding e
|
||||
if (EquivalentEncodings[clas][i][e] == enc)
|
||||
{
|
||||
for (f = EquivalentEncodings[clas][platform]; *f != STOP; f++)
|
||||
if (*f == enc) arr.Add(enc);
|
||||
if (*f == enc) arr.push_back(enc);
|
||||
for (f = EquivalentEncodings[clas][platform]; *f != STOP; f++)
|
||||
if (arr.Index(*f) == wxNOT_FOUND) arr.Add(*f);
|
||||
if (!FindEncoding(arr, *f)) arr.push_back(*f);
|
||||
i = NUM_OF_PLATFORMS/*hack*/; break;
|
||||
}
|
||||
clas++;
|
||||
@@ -442,7 +449,7 @@ wxFontEncodingArray wxEncodingConverter::GetAllEquivalents(wxFontEncoding enc)
|
||||
{
|
||||
for (j = 0; j < NUM_OF_PLATFORMS; j++)
|
||||
for (f = EquivalentEncodings[clas][j]; *f != STOP; f++)
|
||||
if (arr.Index(*f) == wxNOT_FOUND) arr.Add(*f);
|
||||
if (!FindEncoding(arr, *f)) arr.push_back(*f);
|
||||
i = NUM_OF_PLATFORMS/*hack*/; break;
|
||||
}
|
||||
clas++;
|
||||
|
Reference in New Issue
Block a user