% encconv.h at 30/Dec/99 18:45:16
%
-
\section{\class{wxEncodingConverter}}\label{wxencodingconverter}
This class is capable of converting strings between any two
-8bit encodings/charsets. It can also convert from/to Unicode (but only
-if you compiled wxWindows with wxUSE_UNICODE set to 1).
-
+8-bit encodings/charsets. It can also convert from/to Unicode (but only
+if you compiled wxWindows with wxUSE\_WCHAR\_T set to 1).
\wxheading{Derived from}
\helpref{wxObject}{wxobject}
+\wxheading{Include files}
-\latexignore{\rtfignore{\wxheading{Members}}}
+<wx/encconv.h>
+\wxheading{See also}
+
+\helpref{wxFontMapper}{wxfontmapper},
+\helpref{wxMBConv}{wxmbconv},
+\helpref{Writing non-English applications}{nonenglishoverview}
+
+
+\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxEncodingConverter::wxEncodingConverter}\label{wxencodingconverterwxencodingconverter}
Initialize convertion. Both output or input encoding may
be wxFONTENCODING\_UNICODE, but only if wxUSE\_ENCODING is set to 1.
All subsequent calls to \helpref{Convert()}{wxencodingconverterconvert}
-will interpret it's argument
-as a string in {\it input\_enc} encoding and will output string in
+will interpret its argument
+as a string in {\it input\_enc} encoding and will output string in
{\it output\_enc} encoding.
You must call this method before calling Convert. You may call
it more than once in order to switch to another conversion.
{\it Method} affects behaviour of Convert() in case input character
cannot be converted because it does not exist in output encoding:
-\begin{twocollist}
+\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxCONVERT\_STRICT}}{follow behaviour of GNU Recode -
-just copy unconvertable characters to output and don't change them
+just copy unconvertible characters to output and don't change them
(its integer value will stay the same)}
\twocolitem{{\bf wxCONVERT\_SUBSTITUTE}}{try some (lossy) substitutions
-- e.g. replace unconvertable latin capitals with acute by ordinary
+- e.g. replace unconvertible latin capitals with acute by ordinary
capitals, replace en-dash or em-dash by '-' etc.}
\end{twocollist}
-Both modes gurantee that output string will have same length
+Both modes guarantee that output string will have same length
as input string.
\wxheading{Return value}
to Unicode with non-Unicode build of wxWindows or if input
or output encoding is not supported.)
-
\membersection{wxEncodingConverter::Convert}\label{wxencodingconverterconvert}
-\func{wxString}{Convert}{\param{const wxString\& }{input}}
+\func{void}{Convert}{\param{const char* }{input}, \param{char* }{output}}
+
+\func{void}{Convert}{\param{const wchar\_t* }{input}, \param{wchar\_t* }{output}}
+
+\func{void}{Convert}{\param{const char* }{input}, \param{wchar\_t* }{output}}
-\func{void}{Convert}{\param{const wxChar* }{input}, \param{wxChar* }{output}}
+\func{void}{Convert}{\param{const wchar\_t* }{input}, \param{char* }{output}}
-\func{void}{Convert}{\param{wxChar* }{str}}
+Convert input string according to settings passed to
+\helpref{Init}{wxencodingconverterinit} and writes the result to {\it output}.
-Convert input string according to settings passed to \helpref{Init}{wxencodingconverterinit}.
-Note that you must call Init before using Convert!
+\func{void}{Convert}{\param{char* }{str}}
+\func{void}{Convert}{\param{wchar\_t* }{str}}
+Convert input string according to settings passed to
+\helpref{Init}{wxencodingconverterinit} in-place, i.e. write the result to the
+same memory area.
+
+\func{wxString}{Convert}{\param{const wxString\& }{input}}
+
+Convert wxString and return new wxString object.
+
+\wxheading{Notes}
+
+You must call \helpref{Init}{wxencodingconverterinit} before using this method!
+
+{\tt wchar\_t} versions of the method are not available if wxWindows was compiled
+with {\tt wxUSE\_WCHAR\_T} set to 0.
\membersection{wxEncodingConverter::GetPlatformEquivalents}\label{wxencodingconvertergetplatformequivalents}
-\func{wxFontEncodingArray}{GetPlatformEquivalents}{\param{wxFontEncoding }{enc}, \param{int }{platform = wxPLATFORM\_CURRENT}}
+\func{static wxFontEncodingArray}{GetPlatformEquivalents}{\param{wxFontEncoding }{enc}, \param{int }{platform = wxPLATFORM\_CURRENT}}
Return equivalents for given font that are used
under given platform. Supported platforms:
-\begin{itemize}
+\begin{itemize}\itemsep=0pt
\item wxPLATFORM\_UNIX
\item wxPLATFORM\_WINDOWS
\item wxPLATFORM\_OS2
wxPLATFORM\_CURRENT means the plaform this binary was compiled for.
Examples:
+
\begin{verbatim}
current platform enc returned value
----------------------------------------------
\end{verbatim}
Equivalence is defined in terms of convertibility:
-2 encodings are equivalent if you can convert text between
-then without loosing information (it may - and will - happen
-that you loose special chars like quotation marks or em-dashes
-but you shouldn't loose any diacritics and language-specific
+two encodings are equivalent if you can convert text between
+then without losing information (it may - and will - happen
+that you lose special chars like quotation marks or em-dashes
+but you shouldn't lose any diacritics and language-specific
characters when converting between equivalent encodings).
Remember that this function does {\bf NOT} check for presence of
\wxheading{Notes}
-\begin{itemize}
-\item Note that argument {\it enc} itself may be present in returned array!
-(So that you can - as a side effect - detect whether the
-encoding is native for this platform or not.)
-
-\item helpref{Convert}{wxencodingconverterconvert} is not limited to
-converting between equivalent encodings, it can convert between arbitrary
-two encodings!
+\begin{itemize}\itemsep=0pt
+\item Note that argument {\it enc} itself may be present in the returned array,
+so that you can, as a side-effect, detect whether the
+encoding is native for this platform or not.
+\item \helpref{Convert}{wxencodingconverterconvert} is not limited to
+converting between equivalent encodings, it can convert between two arbitrary
+encodings.
+\item If {\it enc} is present in the returned array, then it is {\bf always} the first
+item of it.
+\item Please note that the returned array may contain no items at all.
\end{itemize}
-
\membersection{wxEncodingConverter::GetAllEquivalents}\label{wxencodingconvertergetallequivalents}
-\func{wxFontEncodingArray}{GetAllEquivalents}{\param{wxFontEncoding }{enc}}
+\func{static wxFontEncodingArray}{GetAllEquivalents}{\param{wxFontEncoding }{enc}}
Similar to
\helpref{GetPlatformEquivalents}{wxencodingconvertergetplatformequivalents},
but this one will return ALL
-equivalent encodings, regardless the platform, and including itself.
+equivalent encodings, regardless of the platform, and including itself.
+
+This platform's encodings are before others in the array. And again, if {\it enc} is in the array,
+it is the very first item in it.