whoa, slow down please ...
I id this like as a personal experiment first. like to ponder the amount of work it would suppose and if it even was possible.
well, it is working right now. I didn't have any crashes so far. but there are some strange behaviours in gui elements.
for patches I would do things more serious.
for instance, I would think these changes should be made so, that they don't affect the wx native containers build. in order to have only one code base for both wx native and wx STL. maybe even, if this would require using the auto keyword.
for other patches I would need to help from you devs. for instance many compiler errors come from the function signature
inline wxString F(const wxChar* msg, ...)
in logmanagers.h because of the use of const wxChar* which does not go along with wx STL wxString. I changed that functions signature to
inline wxString F(const wxString& msg, ...)
because as far as I could see, this change doesn't affect the way this function works or any of its callers.
Then again, that same function seems a bit messy all together, so I changed it to:
inline wxString F(wxString msg, ...)
{
va_list arg_list;
va_start(arg_list, msg);
#if wxCHECK_VERSION(2,9,0) && wxUSE_UNICODE
// in wx >= 2.9 unicode-build (default) we need the %ls here, or the strings get cut after the first character
msg.Replace(_T("%s"), _T("%ls"));
#endif
::temp_string = wxString::FormatV(msg, arg_list);
va_end(arg_list);
return ::temp_string;
}
to save all this needless copying of strings. but then: what happens to wxCHECK_VERSION(3,0,0) etc...?
short: I am too insecure