situation even more complicated). These charsets usually differ in so
many characters it is impossible to use same texts under all platforms.
-wxWindows library provides mechanism that helps you avoid distributing many
+wxWidgets library provides mechanism that helps you avoid distributing many
identical, only differently encoded, packages with your application
(e.g. help files and menu items in iso8859-13 and windows-1257). Thanks
to this mechanism you can, for example, distribute only iso8859-13 data
(Make sure that the header is {\bf not} marked as {\it fuzzy}.)
-wxWindows is able to use this catalog under any supported platform
+wxWidgets is able to use this catalog under any supported platform
(although iso8859-2 is a Unix encoding and is normally not understood by
Windows).
\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}
\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}