Vadim Zeitlin
874dbd3a4a
Allow calling wxStrchr() with a narrow string and wide character.
...
Calls to wxStrchr(char-string, wide-char) would previously fail if wide
character couldn't be converted to a single character in the current locale
encoding. Change it to simply return NULL in this case as it's a safe and
useful generalization: a narrow string will never contain a wide character not
representable in the current locale.
Add wxUniChar::GetAsChar() to help with implementing this.
Closes #11487 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-28 14:37:03 +00:00
Vadim Zeitlin
5c69ef61f3
fix some of icc 11.0 warnings and disable a few others
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56792 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-16 14:24:13 +00:00
Václav Slavík
22188d7396
pch-less compilation fix for r55285
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55286 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-26 13:29:38 +00:00
Václav Slavík
6bd4f2812d
fixed writing to wxUniCharRef after its 'parent' iterator was destroyed
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-26 13:02:38 +00:00
Paul Cornett
162e998c2f
check for self-assignment in operator=
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-09 04:08:33 +00:00
Václav Slavík
a4535b9f39
don't attempt to convert 8bit values to Unicode in ANSI build
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-13 18:48:58 +00:00
Vadim Zeitlin
ce65118e62
make To/From8bit() inline for performance reasons
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47578 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-20 01:10:22 +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
c5cf866314
removed wxWCHAR_T_IS_SEPARATE_TYPE: there already was wxWCHAR_T_IS_REAL_TYPE with the exact same meaning and definition
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47230 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-08 07:04:38 +00:00
Václav Slavík
c2d122aa7d
added missing wxUniChar::operator=(wxUniCharRef)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-06 12:40:36 +00:00
Václav Slavík
d4e5987995
explicitly cast m_value to the resulting type in wxUniChar's integer conversion operators to silence compiler warnings
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-01 12:32:10 +00:00
Václav Slavík
4d62edfb07
wxUniChar wchar_t handling fixes for Borland, DMC and Watcom compilers
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-29 19:11:09 +00:00
Václav Slavík
21f0762a1a
fixes to wint_t and wchar_t handling in unichar.h (fixes FreeBSD compilation and Mingw compilation with -pedantic)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-26 20:44:58 +00:00
Václav Slavík
13f071c06b
include wxUniCharRef::operator&& unconditionally too, not just wxUniChar one
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-26 14:36:06 +00:00
Vadim Zeitlin
8019a67305
remove #if around operator&&(), its needed for other compilers too (Sun CC 5.9) and doesnt seem to hurt the ones which do not need it
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-22 20:27:07 +00:00
Vadim Zeitlin
be3dcfb31a
Sun CC (at least version 5.9) has wint_t as a separate type too
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46628 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-22 13:59:48 +00:00
Václav Slavík
4e5b3a4eb5
added long int operators to wxUniChar (fixes wxMac compilation)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-11 12:16:14 +00:00
Václav Slavík
1fc10687bf
added wxUniChar::AsUTF8() for easy conversion in UTF8 build
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-08 20:17:34 +00:00
Václav Slavík
2c6725e622
restored accidentally commented-out code
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-16 13:42:23 +00:00
Václav Slavík
db18be5792
added missing operators for int and unsigned char
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-15 15:02:31 +00:00
Václav Slavík
b0c4d5d792
fixed non-const wxString iterators to work when a character is changed to another with different UTF-8 sequence length
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-15 13:16:01 +00:00
Vadim Zeitlin
fddca1dce4
djgpp doesn't have wint_t as separate type
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-14 23:21:40 +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
bc5443ba07
fixed wxUniCharRef::IsAscii() definition
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-14 10:45:58 +00:00
Václav Slavík
47b378bd88
removed extra semicolons (patch #1700459 ; fixes compilation with gcc's -pedantic flag)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-14 09:58:37 +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
153bc803a8
add conversion of wxUniChar[Ref] to unsigned int if it's not already covered by conversion to wint_t
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-06 23:16:00 +00:00
Václav Slavík
9cea4218b1
wint_t is wchar_t on OS/2 too
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45195 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-01 08:04:32 +00:00
Václav Slavík
171d613212
added creation of wxUniChar from int and conversion to int, for backward compatibility
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-29 18:35:16 +00:00
Vadim Zeitlin
436bb9f539
added overloads of operators for wint_t for VC when the code is compiled with /Zc:wchar_t option (default in VC8)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-29 15:05:34 +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
Vadim Zeitlin
c961c0cfca
fixed compilation for Windows compilers now after last change: replaced conversions to ushort and uint with a conversion to wint_t but do it for (non-Apple) gcc only
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-23 15:16:08 +00:00
Vadim Zeitlin
2a686bd333
added conversions to unsigned short: this fixes compilation for some platforms where wint_t is ushort (mingw32)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-23 15:00:12 +00:00
Vadim Zeitlin
98c4eb3910
remove wxWINT_T_IS_TYPEDEF as it seems wint_t is always a typedef (although it can be either unsigned short or unsigned int or possibly something else)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-22 19:13:50 +00:00
Vadim Zeitlin
fb52c2b671
added macros to avoid code repetition when defining comparison operators; use them to replace existing operators in wxUniChar and wxUniCharRef (fixing bug in the operator== and != of the latter) and added comparison operators for const wxChar * and wxCStrData which are needed to compile existing code comparing pointers with s.c_str()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-22 18:03:02 +00:00
Vadim Zeitlin
bd72306dc8
added conversion to unsigned int too: this is needed to be able to pass s[n] to standard toxxx/isyyy() functions under Windows when _MBCS is defined as they're mapped to _mbzzz(unsigned int) in this case
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-22 15:24:28 +00:00
Václav Slavík
9f1b1b78e1
added wxUniChar <-> unsigned char conversion
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-20 15:49:45 +00:00
Václav Slavík
dbecee02ed
use wxUin32 for wxUniChar::value_type: we need 32bit for it regardless of the platform
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-19 16:22:11 +00:00
Václav Slavík
d1b7ed6792
wxUniChar::unicode_type -> value_type
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-19 16:17:37 +00:00
Václav Slavík
e3f6cbd99c
split wxchar.h into several smaller headers
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-19 14:45:38 +00:00