]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/encconv.tex
Update docs to mention new filesystem handlers.
[wxWidgets.git] / docs / latex / wx / encconv.tex
index 1af81823d9e75e4248d2bd97e2b8d9fb0b52917a..f24df2dd1e4b52e127b6cd20b4bba85a20b70055 100644 (file)
@@ -5,9 +5,20 @@
 
 \section{\class{wxEncodingConverter}}\label{wxencodingconverter}
 
 
 \section{\class{wxEncodingConverter}}\label{wxencodingconverter}
 
-This class is capable of converting strings between any two
+This class is capable of converting strings between two
 8-bit encodings/charsets. It can also convert from/to Unicode (but only
 8-bit encodings/charsets. It can also convert from/to Unicode (but only
-if you compiled wxWindows with wxUSE\_WCHAR\_T set to 1).
+if you compiled wxWidgets with wxUSE\_WCHAR\_T set to 1). Only a limited subset
+of encodings is supported by wxEncodingConverter:
+{\tt wxFONTENCODING\_ISO8859\_1..15}, {\tt wxFONTENCODING\_CP1250..1257} and 
+{\tt wxFONTENCODING\_KOI8}.
+
+\wxheading{Note}
+
+Please use \helpref{wxMBConv classes}{mbconvclasses} instead
+if possible. \helpref{wxCSConv}{wxcsconv} has much better support for various
+encodings than wxEncodingConverter. wxEncodingConverter is useful only
+if you rely on {\tt wxCONVERT\_SUBSTITUTE} mode of operation (see 
+\helpref{Init}{wxencodingconverterinit}).
 
 \wxheading{Derived from}
 
 
 \wxheading{Derived from}
 
@@ -26,12 +37,14 @@ if you compiled wxWindows with wxUSE\_WCHAR\_T set to 1).
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
+
 \membersection{wxEncodingConverter::wxEncodingConverter}\label{wxencodingconverterwxencodingconverter}
 
 \func{}{wxEncodingConverter}{\void}
 
 Constructor.
 
 \membersection{wxEncodingConverter::wxEncodingConverter}\label{wxencodingconverterwxencodingconverter}
 
 \func{}{wxEncodingConverter}{\void}
 
 Constructor.
 
+
 \membersection{wxEncodingConverter::Init}\label{wxencodingconverterinit}
 
 \func{bool}{Init}{\param{wxFontEncoding }{input\_enc}, \param{wxFontEncoding }{output\_enc}, \param{int }{method = wxCONVERT\_STRICT}}
 \membersection{wxEncodingConverter::Init}\label{wxencodingconverterinit}
 
 \func{bool}{Init}{\param{wxFontEncoding }{input\_enc}, \param{wxFontEncoding }{output\_enc}, \param{int }{method = wxCONVERT\_STRICT}}
@@ -63,31 +76,50 @@ as input string.
 
 false if given conversion is impossible, true otherwise
 (conversion may be impossible either if you try to convert
 
 false if given conversion is impossible, true otherwise
 (conversion may be impossible either if you try to convert
-to Unicode with non-Unicode build of wxWindows or if input
+to Unicode with non-Unicode build of wxWidgets or if input
 or output encoding is not supported.)
 
 or output encoding is not supported.)
 
+
+\membersection{wxEncodingConverter::CanConvert}\label{wxencodingconvertercanconvert}
+
+\func{static bool}{CanConvert}{\param{wxFontEncoding }{encIn}, \param{wxFontEncoding }{encOut}}
+
+Return true if (any text in) multibyte encoding \arg{encIn} can be converted to
+another one ({\it encOut}) losslessly.
+
+Do not call this method with \texttt{wxFONTENCODING\_UNICODE} as either
+parameter, it doesn't make sense (always works in one sense and always depends
+on the text to convert in the other).
+
+
 \membersection{wxEncodingConverter::Convert}\label{wxencodingconverterconvert}
 
 \membersection{wxEncodingConverter::Convert}\label{wxencodingconverterconvert}
 
-\func{void}{Convert}{\param{const char* }{input}, \param{char* }{output}}
+\constfunc{bool}{Convert}{\param{const char* }{input}, \param{char* }{output}}
 
 
-\func{void}{Convert}{\param{const wchar\_t* }{input}, \param{wchar\_t* }{output}}
+\constfunc{bool}{Convert}{\param{const wchar\_t* }{input}, \param{wchar\_t* }{output}}
 
 
-\func{void}{Convert}{\param{const char* }{input}, \param{wchar\_t* }{output}}
+\constfunc{bool}{Convert}{\param{const char* }{input}, \param{wchar\_t* }{output}}
 
 
-\func{void}{Convert}{\param{const wchar\_t* }{input}, \param{char* }{output}}
+\constfunc{bool}{Convert}{\param{const wchar\_t* }{input}, \param{char* }{output}}
 
 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} and writes the result to {\it output}.
 
-\func{void}{Convert}{\param{char* }{str}}
+\constfunc{bool}{Convert}{\param{char* }{str}}
 
 
-\func{void}{Convert}{\param{wchar\_t* }{str}}
+\constfunc{bool}{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.
 
 
 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}}
+All of the versions above return \true if the conversion was lossless and
+\false if at least one of the characters couldn't be converted and was replaced
+with {\tt '?'} in the output. Note that if {\tt wxCONVERT\_SUBSTITUTE} was
+passed to \helpref{Init}{wxencodingconverterinit}, substitution is considered
+lossless operation.
+
+\constfunc{wxString}{Convert}{\param{const wxString\& }{input}}
 
 Convert wxString and return new wxString object.
 
 
 Convert wxString and return new wxString object.
 
@@ -95,9 +127,10 @@ Convert wxString and return new wxString object.
 
 You must call \helpref{Init}{wxencodingconverterinit} before using this method!
 
 
 You must call \helpref{Init}{wxencodingconverterinit} before using this method!
 
-{\tt wchar\_t} versions of the method are not available if wxWindows was compiled
+{\tt wchar\_t} versions of the method are not available if wxWidgets was compiled
 with {\tt wxUSE\_WCHAR\_T} set to 0.
 
 with {\tt wxUSE\_WCHAR\_T} set to 0.
 
+
 \membersection{wxEncodingConverter::GetPlatformEquivalents}\label{wxencodingconvertergetplatformequivalents}
 
 \func{static wxFontEncodingArray}{GetPlatformEquivalents}{\param{wxFontEncoding }{enc}, \param{int }{platform = wxPLATFORM\_CURRENT}}
 \membersection{wxEncodingConverter::GetPlatformEquivalents}\label{wxencodingconvertergetplatformequivalents}
 
 \func{static wxFontEncodingArray}{GetPlatformEquivalents}{\param{wxFontEncoding }{enc}, \param{int }{platform = wxPLATFORM\_CURRENT}}
@@ -151,6 +184,7 @@ item of it.
 \item Please note that the returned array may contain no items at all.
 \end{itemize}
 
 \item Please note that the returned array may contain no items at all.
 \end{itemize}
 
+
 \membersection{wxEncodingConverter::GetAllEquivalents}\label{wxencodingconvertergetallequivalents}
 
 \func{static wxFontEncodingArray}{GetAllEquivalents}{\param{wxFontEncoding }{enc}}
 \membersection{wxEncodingConverter::GetAllEquivalents}\label{wxencodingconvertergetallequivalents}
 
 \func{static wxFontEncodingArray}{GetAllEquivalents}{\param{wxFontEncoding }{enc}}