Commit Graph

23 Commits

Author SHA1 Message Date
Vadim Zeitlin
01871bf642 Add wxUSE_STD_CONTAINERS and turn it on by default.
Previously, wxUSE_STL enabled both implicit conversion of wxString to
std::[w]string and use of standard containers for the implementation of their
wx equivalents. Split up the two roles now by allowing to enable the use of
the standard containers independently of (backwards incompatible) implicit
conversion in wxString and actually enable wxUSE_STD_CONTAINERS by default.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-03-30 14:16:04 +00:00
Vadim Zeitlin
9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
5dd0965333 remove more occurrences of MSVC #pragma warning(default) (closes #10885)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-16 21:50:23 +00:00
Vadim Zeitlin
88eb6b7c8b make wxSTRING_BASE_HASNT_CLEAR check more readable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-25 13:19:27 +00:00
Vadim Zeitlin
b808834950 eVC4 version of std::string doesn't have clear() neither (see #10718)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60338 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-25 13:04:22 +00:00
Vadim Zeitlin
87c7fc6733 add operator[] to our wxStringImpl (blind fix for wxMac buildbot build)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-30 22:11:06 +00:00
Vadim Zeitlin
4f29051b4e use std::[w]string for wxString implementation unless wxUSE_STD_STRING==0 but even if wxUSE_STL==1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-05-07 00:46:45 +00:00
Vadim Zeitlin
fb25206791 compilation fix for MSVC: remove implicit wxStringImpl::iterator conversion to pointer as otherwise built-in operator+(void *, size_t) conflicts with our operator taking ptrdiff_t
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-07 01:46:42 +00:00
Vadim Zeitlin
b5343e065a only provide ptrdiff_t versions of verious operator+/- working with iterators instead of overloads for both int and size_t: this seems to be enough and the existing overloads were not enough for 64 bit builds where expressions such as iter+(ptr2-ptr1) didn't compile without extra casts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-06 22:27:01 +00:00
Vadim Zeitlin
d545bdede6 Fix bug with assigning a part of the string to the same string
The fix has several parts:

1. don't free the old string data in ConcatSelf() if we use it as
   source
2. implement assign() using replace() rather than clear() + append()
3. fix replace() to work with replacement strings containing embedded
   NULs and optimize it by using memcpy() instead of byte-wise copy


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48302 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-21 16:45:41 +00:00
Václav Slavík
b5dbe15d0b added WXDLLIMPEXP_FWD_FOO macros in addition to WXDLLIMPEXP_FOO for use with forward declarations (in preparation for GCC visibility support)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-09 10:09:52 +00:00
Václav Slavík
39c20230ba 1. added default constructors for wxString iterators
2. fixed assignment of iterator to iterator that points to a different string

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-28 12:49:58 +00:00
Václav Slavík
541aa82180 fixed VC6 warnings about non-dllexported members in dllexported classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-11 19:59:11 +00:00
Václav Slavík
52de37c78f 1. made CRT wrappers definitions indepenent of wxUSE_UNICODE: both ANSI and Unicode variants are now defined
2. split wxcrt.h into wxcrtbase.h with lowlevel compiler-specific definitions and wxcrt.h with ANSI- and Unicode-compatible wx wrappers


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-10 17:14:14 +00:00
Václav Slavík
2523e9b700 use UTF8-encoded char* strings in UTF8 build instead of wchar_t* if the current locale uses UTF8;
fall back to widechar CRT functions in the locale is not UTF8


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-26 11:40:04 +00:00
Václav Slavík
59953bf4ba added conversion to and from std::string and std::wstring (if wxUSE_STD_STRING)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-17 15:32:05 +00:00
Václav Slavík
817270659e initial version of UTF-8 strings representation (still converting to wchar_t* a lot); it has to be explicitly enabled with --enable-utf8 for now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45433 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-12 21:15:07 +00:00
Václav Slavík
89360a8c87 string iterator's operator- should return difference_type, not size_t or unsigned
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-09 08:18:33 +00:00
Vadim Zeitlin
15c1210982 compilation fix for VC7.1: add size_t overloads for arithmetic operators on wxStringImpl::iterator
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45273 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-06 19:08:21 +00:00
Vadim Zeitlin
7c2b62db91 compilation fix for g++ 3 (and probably others) after the last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45269 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-05 22:33:16 +00:00
Vadim Zeitlin
f2a1b1bd23 added overloads taking pairs of const char/wchar_t pointers for wxString methods working with const_iterators for backwards compatibility with old wxString::const_iterator which used to be convertible to/from const wxChar *
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45265 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-05 21:55:29 +00:00
Václav Slavík
745817ffbc (OS/2) compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-01 07:52:14 +00:00
Václav Slavík
a7ea63e21f split string.{h,cpp} into {string,stringimpl,arrstr}.{h,cpp} to make the files more managable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45098 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-28 11:35:07 +00:00