Vadim Zeitlin
a78c43f158
initialize nulLen to 0 for all compilers as some versions of gcc don't see that it's not used if left uninitialized too (bug 1469637)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-13 12:16:38 +00:00
Vadim Zeitlin
d5bef0a323
added wxConvUI which determines the conversion used for the UI elements and can be changed from the user code
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-11 00:36:24 +00:00
Vadim Zeitlin
9088c87bd0
leave enough space for the trailing NUL when converting UTF-16 to UTF-32 in Mac conversion
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38603 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-06 12:43:38 +00:00
Vadim Zeitlin
8d3dd06948
added missing const to fix last commit
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38598 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-06 11:51:41 +00:00
Vadim Zeitlin
e27a15e146
added a cast to wxDecodeSurrogate() to fix wxMSW cross-compilation
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-06 11:27:40 +00:00
David Surovell
ef1991645a
cleanup (repeat of v197) - added whitespace around operators, some blank lines, fixed comment typos, renamed out-in vars to outBuff-inBuff
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-06 02:30:52 +00:00
Vadim Zeitlin
35d11700a5
implemented UTF-16/32 using To/FromWChar() instead of MB2WC/WC2MB for sizeof(wchar_t)==4 platforms too
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-05 23:04:10 +00:00
Vadim Zeitlin
467e04791c
1. use a manifest constant wxNO_LEN instead of -1 for lengths everywhere
...
2. reimplemented UTF-16/32 conversions using To/FromWChar() API instead
of MB2WC/WC2MB for Windows (or rather SIZEOF_WCHAR_T == 2 platforms),
the first tangible result is that reading UTF-32BE text streams now
works too
3. more off by 1 fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-05 22:12:45 +00:00
David Surovell
d32a507d02
cleanup - added whitespace around operators, some blank lines, fixed comment typos, renamed out-in vars to outBuff-inBuff
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38582 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-05 18:02:26 +00:00
Vadim Zeitlin
d3478e2cf1
Mac compilation fix after last commit
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-05 17:10:01 +00:00
Vadim Zeitlin
d36c9347ea
added wxMBConv::Clone() to be able to copy conversion objects polymorphically
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-05 16:10:08 +00:00
Vadim Zeitlin
64f56529a8
properly NUL-terminate the output in wxMBConvUTF16swap::WC2MB()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38575 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-05 15:18:05 +00:00
Vadim Zeitlin
830f8f11bc
1. changed all "wxMBConv& conv" parameters to "const wxMBConv&"
...
2. this allows to use wxConvAuto() instead of wxConvUTF8 as default value
for this parameter in the classes which read text from the file: wxConvAuto
automatically recognizes the BOM at the start of file and uses the correct
conversion
3. don't use Windows for UTF-7 conversions as there is no way to make it
fail on invalid UTF-7 strings; use our own wxMBConvUtf7 instead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-05 14:37:47 +00:00
Vadim Zeitlin
509da4510f
MB2WC/WC2MB are not pure virtual any longer, implement them in terms of To/FromWChar()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-04 13:04:47 +00:00
Vadim Zeitlin
483b0434bf
added new To/FromWChar() API with more reasonable semantics than old MB2WC/WC2MB; for now both coexist and the change is/should be backwards compatible
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38541 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-04 12:35:21 +00:00
Vadim Zeitlin
7ef3ab50e9
renamed GetMinMBCharWidth() to GetMBNulLen(), made it public and documented it
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38540 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-04 07:49:08 +00:00
Vadim Zeitlin
69373110a5
fixed wxMBConv_iconv to work with UTF-16/32
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-02 20:03:42 +00:00
Vadim Zeitlin
39406a5d05
compilation fix for iconv call
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-02 15:59:57 +00:00
Vadim Zeitlin
c1464d9d10
replaced recently added wxMBConv::GetMBNul() with a less clever but better
...
working GetMinMBCharWidth(): the idea is that we can't deal with completely
arbitrary encodings anyhow using the current API as we get confused by NUL
runs in the middle of the string, so instead just deal correctly with normal
multibyte encodings, UTF-16/UCS-2 and UTF-32/UCS-4 which should cover 99.9% of
the cases
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38523 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-02 14:59:53 +00:00
David Surovell
e9531db94d
fix compilation problem in prior commit
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-01 16:40:08 +00:00
Vadim Zeitlin
356410fc88
fixed wxMBConv_iconv::GetMBNul()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-01 15:34:42 +00:00
Vadim Zeitlin
22886fb3c3
Unix compilation fixes after last commit
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-01 13:38:28 +00:00
Vadim Zeitlin
eec47cc6c4
Described in the comments and documented the semantics of the parameters and
...
return values of wxMBConv methods and tried to make them more consistent. The
only (intentional) backwards incompatible change is that cMB2WC/cWC2MB now
return the length of the converted string in outLen parameter and not length+1
Added wxMBConv::GetMBNul() and use it instead of supposing that all multibyte
strings are always terminated with a single NUL which is wrong for UTF-16/32.
Using GetMBNul(), completely rewrote cMB2WC/cWC2MB() to accept a string of the
specified length, whether it is NUL-terminated or not. This means that they
don't overwrite the provided buffer any more and convert the entire string in
all cases.
Fixed bug in wxMBConvUTF16::WC2MB() which didn't NUL-terminate the string
properlyv even if there was enough space.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-01 12:43:03 +00:00
Vadim Zeitlin
da12017a64
undid last (wrong) change to wxMBConvUTF16swap::MB2WC(); added comment to explain why
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-31 20:28:37 +00:00
Vadim Zeitlin
bfab25d4c4
fixed fatal buffer overwrite in wxMBConvUTF16swap::MB2WC()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-31 20:23:33 +00:00
Vadim Zeitlin
04a378342d
detect some invalid UTF7 strings when decoding them in wxMBConvUTF7
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-31 20:04:07 +00:00
Vadim Zeitlin
53c174fcd5
really pass the proper output buffer size in wxMBConv_win32 round trip check, at least for the encodings without NULs such as UTF7
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-31 17:40:17 +00:00
Vadim Zeitlin
2f96d9bb8d
pass proper output buffer size in round trip conversion success check in wxMBConv_win32, otherwise conversions from UTF-7 always failed for example
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-31 17:34:48 +00:00
Włodzimierz Skiba
8942f83aca
wxWinCE build fix.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-06 23:58:27 +00:00
Václav Slavík
8902898054
fixed win32 code to not use MB_ERR_INVALID_CHARS on win version where it isn't available; roundtrip check is used instead
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37830 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-06 17:36:36 +00:00
Vadim Zeitlin
e4277538a5
set m_encoding in wxCSConv ctor from name
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37409 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-02-09 14:58:08 +00:00
Julian Smart
3f5c62f982
Reverted semicolons patch
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-18 16:45:41 +00:00
Julian Smart
edef87c827
Applied patch [ 1399013 ] More removals of extraneous semicolons
...
Wlodek Szafran
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-18 11:46:53 +00:00
David Surovell
73c902d669
minor cleanup
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-07 06:30:25 +00:00
Michael Wetherell
4948c2b6c8
Typo, should be #if not #ifdef
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-15 19:11:05 +00:00
Michael Wetherell
ac11db3a77
Restore WC_UTF16, required for compilation on Windows
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-15 18:58:06 +00:00
Włodzimierz Skiba
38d4b1e4bc
Warning fixes for BCC, VC, OW and MinGW.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-26 13:48:01 +00:00
Vadim Zeitlin
d1f024a8de
fixed wide char codeset detection for systems which do support LE/BE variants (broken by recent commit)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-26 01:02:14 +00:00
Vadim Zeitlin
c2b83fddb9
added tracing code to wide char codeset detection
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-26 00:53:00 +00:00
Vadim Zeitlin
17a1ebd101
first round of Intel compiler warning fixes: down from a few thousands just to slightly more than 100
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-25 19:59:19 +00:00
Michael Wetherell
156162ece8
Memory corruption fix
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35657 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-24 00:16:56 +00:00
Mart Raudsepp
8907154c1a
Nuke #pragma implementation/interface's
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Vadim Zeitlin
cae8f1bf03
Unicode build fix
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-22 13:43:08 +00:00
Vadim Zeitlin
422e411e95
gcc compilation fixes after last commit
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35645 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-22 12:48:07 +00:00
Vadim Zeitlin
74a7eb0bf6
try all known UCS-[24] synonyms in wxMBConv_iconv, this should fix this class on IRIX (where UCS-4 is supported but neither UCS-4[LB]E nor UCS4, which were the only ones we tested, are not)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-22 12:36:17 +00:00
Vadim Zeitlin
40711af81b
Unicode compilation fix
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-18 20:12:52 +00:00
Vadim Zeitlin
0944fceb98
don't pass NULL pointer to printf(), this crashes Solaris printf
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-18 16:50:47 +00:00
Vadim Zeitlin
ce6f8d6fb3
added trace message to wxCSConv creation code
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-18 16:40:24 +00:00
Vadim Zeitlin
8b3eb85d5e
added GetAllEncodingNames(), use it to select the correct encoding name to pass to iconv_open()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-18 14:01:14 +00:00
Vadim Zeitlin
200a992309
and now it even compiles
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-13 13:47:04 +00:00