/////////////////////////////////////////////////////////////////////////////
// Name: encconv.h
-// Purpose: documentation for wxEncodingConverter class
+// Purpose: interface of wxEncodingConverter
// Author: wxWidgets team
// RCS-ID: $Id$
// Licence: wxWindows license
@library{wxbase}
@category{misc}
- @seealso
- wxFontMapper, wxMBConv, @ref overview_nonenglishoverview "Writing non-English
- applications"
+ @see wxFontMapper, wxMBConv, @ref overview_nonenglishoverview "Writing
+ non-English applications"
*/
class wxEncodingConverter : public wxObject
{
wxEncodingConverter();
/**
- Return @true if (any text in) multibyte encoding @e encIn can be converted to
+ Return @true if (any text in) multibyte encoding @a encIn can be converted to
another one (@e encOut) losslessly.
-
Do not call this method with @c 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).
/**
Convert wxString and return new wxString object.
*/
- bool Convert(const char* input, char* output);
- bool Convert(const wchar_t* input, wchar_t* output);
- bool Convert(const char* input, wchar_t* output);
- bool Convert(const wchar_t* input, char* output);
- bool Convert(char* str);
- bool Convert(wchar_t* str);
- wxString Convert(const wxString& input);
+ bool Convert(const char* input, char* output) const;
+ const bool Convert(const wchar_t* input, wchar_t* output) const;
+ const bool Convert(const char* input, wchar_t* output) const;
+ const bool Convert(const wchar_t* input, char* output) const;
+ const bool Convert(char* str) const;
+ const bool Convert(wchar_t* str) const;
+ const wxString Convert(const wxString& input) const;
//@}
/**
GetPlatformEquivalents(),
but this one will return ALL
equivalent encodings, regardless of the platform, and including itself.
-
- This platform's encodings are before others in the array. And again, if @e enc
+ This platform's encodings are before others in the array. And again, if @a enc
is in the array,
it is the very first item in it.
*/
/**
Return equivalents for given font that are used
under given platform. Supported platforms:
-
wxPLATFORM_UNIX
wxPLATFORM_WINDOWS
wxPLATFORM_OS2
wxPLATFORM_MAC
wxPLATFORM_CURRENT
-
wxPLATFORM_CURRENT means the platform this binary was compiled for.
-
Examples:
+
Equivalence is defined in terms of convertibility:
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 @b NOT check for presence of
fonts in system. It only tells you what are most suitable
encodings. (It usually returns only one encoding.)
be wxFONTENCODING_UNICODE, but only if wxUSE_ENCODING is set to 1.
All subsequent calls to Convert()
will interpret its argument
- as a string in @e input_enc encoding and will output string in
- @e output_enc encoding.
+ as a string in @a input_enc encoding and will output string in
+ @a 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.
@e Method affects behaviour of Convert() in case input character
@b wxCONVERT_STRICT
-
follow behaviour of GNU Recode -
just copy unconvertible characters to output and don't change them
(its integer value will stay the same)
@b wxCONVERT_SUBSTITUTE
-
try some (lossy) substitutions
- e.g. replace unconvertible latin capitals with acute by ordinary
capitals, replace en-dash or em-dash by '-' etc.
bool Init(wxFontEncoding input_enc, wxFontEncoding output_enc,
int method = wxCONVERT_STRICT);
};
+