From a663cce7f9ca84a82f1f7359ce1dcd898040a4c1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?V=C3=A1clav=20Slav=C3=ADk?= Date: Thu, 23 Jan 2003 19:49:53 +0000 Subject: [PATCH] removed wxEncodingConverter from docs where wxMBConv should be mentioned instead git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/latex/wx/encconv.tex | 15 +++++++++++++-- docs/latex/wx/fontmap.tex | 12 +++++------- docs/latex/wx/tnoneng.tex | 22 +++++++++++----------- docs/latex/wx/tunicode.tex | 4 ++-- 4 files changed, 31 insertions(+), 22 deletions(-) diff --git a/docs/latex/wx/encconv.tex b/docs/latex/wx/encconv.tex index 1af81823d9..154f7e2c97 100644 --- a/docs/latex/wx/encconv.tex +++ b/docs/latex/wx/encconv.tex @@ -5,9 +5,20 @@ \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 -if you compiled wxWindows with wxUSE\_WCHAR\_T set to 1). +if you compiled wxWindows with wxUSE\_WCHAR\_T set to 1). Only limited subset +of encodings in 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} diff --git a/docs/latex/wx/fontmap.tex b/docs/latex/wx/fontmap.tex index b6b8836154..be6ad279d7 100644 --- a/docs/latex/wx/fontmap.tex +++ b/docs/latex/wx/fontmap.tex @@ -23,14 +23,14 @@ and "interactive" is false or user denied to choose any replacement), the class queries \helpref{wxEncodingConverter}{wxencodingconverter} for "equivalent" encodings (e.g. iso8859-2 and cp1250) and tries them. -\wxheading{Using wxFontMapper in conjunction with wxEncodingConverter} +\wxheading{Using wxFontMapper in conjunction with wxMBConv classes} If you need to display text in encoding which is not available at host system (see \helpref{IsEncodingAvailable}{wxfontmapperisencodingavailable}), you may use these two classes to find font in some similar encoding (see \helpref{GetAltForEncoding}{wxfontmappergetaltforencoding}) and convert the text to this encoding -(\helpref{wxEncodingConverter::Convert}{wxencodingconverterconvert}). +(\helpref{wxMBConv classes}{mbconvclasses}). Following code snippet demonstrates it: @@ -41,11 +41,9 @@ if (!wxFontMapper::Get()->IsEncodingAvailable(enc, facename)) if (wxFontMapper::Get()->GetAltForEncoding(enc, &alternative, facename, false)) { - wxEncodingConverter encconv; - if (!encconv.Init(enc, alternative)) - ...failure... - else - text = encconv.Convert(text); + wxCSConv convFrom(wxFontMapper::Get()->GetEncodingName(enc)); + wxCSConv convTo(wxFontMapper::Get()->GetEncodingName(alternative)); + text = wxString(text.mb_str(convFrom), convTo); } else ...failure (or we may try iso8859-1/7bit ASCII)... diff --git a/docs/latex/wx/tnoneng.tex b/docs/latex/wx/tnoneng.tex index fd5d75fa06..a11bf9cc7b 100644 --- a/docs/latex/wx/tnoneng.tex +++ b/docs/latex/wx/tnoneng.tex @@ -90,24 +90,22 @@ user's operating system. This is default behaviour of the \wxheading{Font mapping} -You can use \helpref{wxEncodingConverter}{wxencodingconverter} and +You can use \helpref{wxMBConv classes}{mbconvclasses} and \helpref{wxFontMapper}{wxfontmapper} to display text: \begin{verbatim} if (!wxFontMapper::Get()->IsEncodingAvailable(enc, facename)) { wxFontEncoding alternative; - if (wxTheFontMapper->GetAltForEncoding(enc, &alternative, - facename, false)) + if (wxFontMapper::Get()->GetAltForEncoding(enc, &alternative, + facename, false)) { - wxEncodingConverted encconv; - if (!encconv.Init(enc, alternative)) - ...failure... - else - text = encconv.Convert(text); + wxCSConv convFrom(wxFontMapper::Get()->GetEncodingName(enc)); + wxCSConv convTo(wxFontMapper::Get()->GetEncodingName(alternative)); + text = wxString(text.mb_str(convFrom), convTo); } else - ...failure... + ...failure (or we may try iso8859-1/7bit ASCII)... } ...display text... \end{verbatim} @@ -115,8 +113,10 @@ if (!wxFontMapper::Get()->IsEncodingAvailable(enc, facename)) \wxheading{Converting data} You may want to store all program data (created documents etc.) in -the same encoding, let's say windows1250. Obviously, the best way would -be to use \helpref{wxEncodingConverter}{wxencodingconverter}. +the same encoding, let's say {\tt utf-8}. You can use +\helpref{wxCSConv}{wxcsconv} class to convert data to encoding used by the +system your application is running on (see +\helpref{wxLocale::GetSystemEncoding}{wxlocalegetsystemencoding}). \wxheading{Help files} diff --git a/docs/latex/wx/tunicode.tex b/docs/latex/wx/tunicode.tex index bbbc90c9ee..562fcf5834 100644 --- a/docs/latex/wx/tunicode.tex +++ b/docs/latex/wx/tunicode.tex @@ -182,7 +182,7 @@ compile your program in ANSI mode you can still define {\tt wxUSE\_WCHAR\_T} to get some limited support for {\tt wchar\_t} type. This will allow your program to perform conversions between Unicode strings and -ANSI ones (\helpref{wxEncodingConverter}{wxencodingconverter} depends on this -partially) and construct wxString objects from Unicode strings (presumably read +ANSI ones (using \helpref{wxMBConv classes}{mbconvclasses}) +and construct wxString objects from Unicode strings (presumably read from some external file or elsewhere). -- 2.45.2