From cb2f2135b0c8966eb353634d1239a5dc6ba09266 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=A1clav=20Slav=C3=ADk?= Date: Wed, 2 May 2007 18:08:56 +0000 Subject: [PATCH] added convenience functions wxString::To/From8BitData() for storing g binary data in wxStrings git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/latex/wx/wxstring.tex | 38 ++++++++++++++++++++++++++++++++++++++ include/wx/string.h | 17 +++++++++++++++++ 2 files changed, 55 insertions(+) diff --git a/docs/latex/wx/wxstring.tex b/docs/latex/wx/wxstring.tex index 544bd55821..3a35293c24 100644 --- a/docs/latex/wx/wxstring.tex +++ b/docs/latex/wx/wxstring.tex @@ -747,6 +747,24 @@ Returns the number of occurrences of {\it ch} in the string. This is a wxWidgets 1.xx compatibility function; you should not use it in new code. +\membersection{wxString::From8BitData}\label{wxstringfrom8bitdata} + +\func{static wxString }{From8BitData}{\param{const char*}{ buf}, \param{size\_t}{len}} + +\func{static wxString }{From8BitData}{\param{const char*}{ buf}} + +Converts given buffer of binary data from 8-bit string to wxString. In Unicode +build, the string is interpreted as being in ISO-8859-1 encoding. The version +without \arg{len} parameter takes NUL-terminated data. + +This is a convenience method useful when storing binary data in wxString. + +\newsince{2.8.4} + +\wxheading{See also} + +\helpref{To8BitData}{wxstringto8bitdata} + \membersection{wxString::FromAscii}\label{wxstringfromascii} @@ -1124,6 +1142,26 @@ This is a wxWidgets 1.xx compatibility function, use \helpref{Mid}{wxstringmid} instead (but note that parameters have different meaning). +\membersection{wxString::To8BitData}\label{wxstringto8bitdata} + +\constfunc{const char*}{To8BitData}{\void} + +Converts the string to an 8-bit string (ANSI builds only). + +\constfunc{const wxCharBuffer}{To8BitData}{\void} + +Converts the string to an 8-bit string in ISO-8859-1 encoding in the form of +a wxCharBuffer (Unicode builds only). + +This is a convenience method useful when storing binary data in wxString. + +\newsince{2.8.4} + +\wxheading{See also} + +\helpref{From8BitData}{wxstringfrom8bitdata} + + \membersection{wxString::ToAscii}\label{wxstringtoascii} \constfunc{const char*}{ToAscii}{\void} diff --git a/include/wx/string.h b/include/wx/string.h index 43bde5e5c1..9c4746df83 100644 --- a/include/wx/string.h +++ b/include/wx/string.h @@ -1126,6 +1126,23 @@ public: const char *ToAscii() const { return c_str(); } #endif // Unicode/!Unicode + // functions for storing binary data in wxString: +#if wxUSE_UNICODE + static wxString From8BitData(const char *data, size_t len) + { return wxString(data, wxConvISO8859_1, len); } + // version for NUL-terminated data: + static wxString From8BitData(const char *data) + { return wxString(data, wxConvISO8859_1); } + const wxCharBuffer To8BitData() const { return mb_str(wxConvISO8859_1); } +#else // ANSI + static wxString From8BitData(const char *data, size_t len) + { return wxString(data, len); } + // version for NUL-terminated data: + static wxString From8BitData(const char *data) + { return wxString(data); } + const char *To8BitData() const { return c_str(); } +#endif // Unicode/ANSI + // conversions with (possible) format conversions: have to return a // buffer with temporary data //