Vadim Zeitlin
7a906e1a21
fixed operator<<(ostream&, wxString) to output string contents and not wchar_t pointer value in Unicode build
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49099 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-09 00:01:59 +00:00
Paul Cornett
0d8b0f94c0
unused variable, more efficient increment operator
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-22 04:40:21 +00:00
Vadim Zeitlin
2a7431e130
no changes, just added a comment explaining the issues involved in doing the conversion in place in wxCStrData::AsChar()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48614 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-09 19:05:20 +00:00
Vadim Zeitlin
28be59b4ad
return empty string, not NULL, from wxCStrData::AsChar() if conversion to ANSI fails for compatibility with wxWidgets 2 and std::string
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48613 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-09 18:57:41 +00:00
Václav Slavík
c5288c5cfe
fixed wxString::FromAscii signature
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-06 13:31:08 +00:00
Robin Dunn
4f696af8d6
Pass length including the null-terminator to cWC2MB
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48579 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-05 22:53:29 +00:00
Václav Slavík
941a4e6260
replace wxStringToIntType<T> with a macro to make Watcom compile the code
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-22 19:06:31 +00:00
Václav Slavík
7d46f92bb0
compilation fix for UTF8+STL
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-22 11:30:10 +00:00
Václav Slavík
628f87da56
added wxUTF8StringBuffer for writing UTF8 data into wxString efficiently, similarly to existing wxStringBuffer classes
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-20 15:19:15 +00:00
Václav Slavík
6798451bb2
renamed wxImplStringBuffer to wxStringInternalBuffer
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48205 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-19 21:24:50 +00:00
Vadim Zeitlin
4fdfe2f3ae
use wxMBConvStrictUTF8 instead of wxMBConvUTF8 in ConvertStr() and mb/wc_str()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-24 15:10:21 +00:00
Václav Slavík
0081dd7246
fixed FromAscii to work with NULL argument (broken after recent changes)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-28 20:01:11 +00:00
Václav Slavík
602a857b25
fixed FromAscii() changes to correctly handle embedded NULs
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-28 19:07:00 +00:00
Václav Slavík
e6310bbc5a
added wxString::FromAscii(char*,size_t) for consistency with FromUTF8()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-28 12:36:54 +00:00
Václav Slavík
a33c7045d1
don't put invalid UTF-8 data into wxString if Printf() fails in UTF-8 build
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-15 11:26:29 +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
c6255a6eab
removed unneeded wxVaCopy calls
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-04 10:54:16 +00:00
Václav Slavík
5487ff0f50
use const wxMBConv& instead of wxMBConv& in public methods so that it's possible to pass in temporary objects;
...
don't use global wxConvUTF8 object internally, it may be unavailable at static objects destruction time
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-11 20:55:24 +00:00
Václav Slavík
c5e7a7d769
changed wxString::StartsWidth/EndsWidth to take wxString argument instead of wxChar*
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-09 21:07:08 +00:00
Václav Slavík
1528e0b85f
use wxFormatString helper class for 'vararg' functions' format argument; this prepares the code for removal of implicit wxString conversion to char* in STL build and also fixes VC6 compilation
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-04 10:41:08 +00:00
Václav Slavík
111d99489d
added code for optimized handling of UTF-8 locales: some string operations are more efficient under it and it's possible to completely compile-out support for other locales if the target system is known to only use UTF-8 locales
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-03 11:05:04 +00:00
Václav Slavík
d1f6e2cfe2
fixed vararg functions with format argument to not use wxString or reference argument (the latter is invalid C++, the former doesn't work with Watcom and produces at least warnings with GCC 3.3)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-03 10:50:25 +00:00
Václav Slavík
c1eada835a
more efficient implementation of ToAscii/FromAscii in UTF8 build
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45664 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-26 12:00:43 +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
c87a0bc8cb
corrected (Do)GetWriteBuf() return types to use more appropriate type (no real difference)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-24 15:51:51 +00:00
Václav Slavík
467175ab3f
moved primitive string and string iterators operations to stringops.h/cpp files to make wxString code easier to read
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-19 10:05:55 +00:00
Václav Slavík
681e441286
added wxCStrData::As[W]CharBuf() that doesn't keep converted string in memory for longer than needed
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-16 06:59:04 +00:00
Václav Slavík
cf9a878b54
removed implicit conversion from wxString::iterator to wxStringImpl::iterator (fixes VC6 compilation)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-15 19:02:38 +00:00
Václav Slavík
a4a44612a6
implement wxString:IsXXX() methods using iterators
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-15 10:07:40 +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
Vadim Zeitlin
1748289348
added our own implementation of strto[u]ll() if the system doesn't have one (patch 1696533)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-11 00:12:54 +00:00
Václav Slavík
05f32fc39e
don't crash if (char*)c_str() is used twice in a row on the same string and both pointers are used at the same time
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-10 19:13:52 +00:00
Stefan Csomor
8116a0c55e
correcting include style
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-10 12:23:44 +00:00
Václav Slavík
132276cf0d
fix crash in ~wxString with global wxString objects: temporarily move conversion buffers from a hash to wxString
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-08 17:52:00 +00:00
Václav Slavík
6c4ebcda60
STL build compilation fix
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45292 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-07 09:25:07 +00:00
Václav Slavík
11aac4baa6
provide both const char* and const wchar_t* implicit conversion of wxCStrData regardless of the build type
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45262 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-05 21:28:14 +00:00
Václav Slavík
8a540c887c
made wxString::Replace, Matches and Find work with any form of string argument
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-05 08:35:39 +00:00
Václav Slavík
e8f5903971
build fixes after previous commit
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-04 11:40:36 +00:00
Václav Slavík
04abe4bc8f
cleanup of wxString ctors and operator=: made both char* and wchar_t* versions available, regardless of the build
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-03 20:29:42 +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
Václav Slavík
a962cdf410
re-enabled using std::string for wxStringImpl if wxUSE_STL again
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-28 09:37:34 +00:00
Václav Slavík
8f93a29f8e
Preparing wxString for UTF-8 representation:
...
1) split into wxStringImpl class that has std::string-like API and operates on char* or wchar_t* data and wxString class that provides Unicode iterators and indexes
2) added both char* and wchar_t* versions of many wxString methods to avoid having to use _T()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-26 20:28:04 +00:00
Václav Slavík
2233af93b0
remove wxStringBase::AllocCopy(), it wasn't used anywhere
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-25 19:46:05 +00:00
Václav Slavík
76046d7390
compilation fix after STL fixes if 2.8 compatibility is enabled
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-20 08:14:06 +00:00
Václav Slavík
992527a573
fixed compilation if wxUSE_STL=1
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-19 19:23:33 +00:00
Vadim Zeitlin
abbb59e8eb
added wxJoin and wxSplit functions (modified patch 1638950)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-18 14:43:41 +00:00
Václav Slavík
c9f7896861
first phase of transition to unified Unicode build:
...
1. changed c_str() to return wxCStrData (implicitly convertible to wxChar*)
2. added template type-safe wrappers for vararg functions
3. added wxUniChar class representing single Unicode character
4. changed wxString::operator[] and wxString::iterator to return wxUniChar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-17 10:26:10 +00:00
Václav Slavík
b7452b3a0e
removed wxArrayString casting hack, it doesn't work with the new wxString class
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-16 12:57:46 +00:00
Václav Slavík
d8a4b666cf
deprecated wxString::GetWriteBuf() and friends in favour of wxStringBuffer
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44637 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-07 20:01:52 +00:00
Vadim Zeitlin
c1dc9f8394
removed WXWIN_COMPATIBILITY_2_4 from common and wxMSW files (patch 1675546)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-07 11:35:04 +00:00