]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/mbconv.tex
Added note about (not) multiply inheriting from wxEvtHandler which includes
[wxWidgets.git] / docs / latex / wx / mbconv.tex
1 %
2 % automatically generated by HelpGen from
3 % ../include/wx/strconv.h at 25/Mar/00 10:20:56
4 %
5
6 \section{\class{wxMBConv}}\label{wxmbconv}
7
8 This class is the base class of a hierarchy of classes capable of converting
9 text strings between multibyte (SBCS or DBCS) encodings and Unicode. It is itself
10 a wrapper around the standard libc mbstowcs() and wcstombs() routines, and has
11 one predefined instance, {\bf wxConvLibc}.
12
13 \wxheading{Derived from}
14
15 No base class
16
17 \wxheading{Include files}
18
19 <wx/strconv.h>
20
21 \wxheading{See also}
22
23 \helpref{wxCSConv}{wxcsconv},
24 \helpref{wxEncodingConverter}{wxencodingconverter},
25 \helpref{wxMBConv classes overview}{mbconvclasses}
26
27 \latexignore{\rtfignore{\wxheading{Members}}}
28
29
30 \membersection{wxMBConv::wxMBConv}\label{wxmbconvwxmbconv}
31
32 \func{}{wxMBConv}{\void}
33
34 Constructor.
35
36 \membersection{wxMBConv::MB2WC}\label{wxmbconvmb2wc}
37
38 \constfunc{virtual size\_t}{MB2WC}{\param{wchar\_t* }{buf}, \param{const char* }{psz}, \param{size\_t }{n}}
39
40 Converts from a string {\it psz} in multibyte encoding to Unicode putting the
41 output into the buffer {\it buf} of the size {\it n} (in wide characters, not
42 bytes). If {\it buf} is {\tt NULL}, nothing is written to it but the length of
43 the string which would result from the conversion is calculated and returned.
44 Note that this is the length and not size, i.e. the returned value does
45 {\bf not} include the trailing NUL. But when the function is called with a
46 non-{\tt NULL} buffer, the {\it n} parameter should be the size of the buffer
47 and so it {\bf should} take into account the trailing NUL.
48
49 \wxheading{Parameters}
50
51 \docparam{buf}{the output buffer, may be {\tt NULL} if the caller is only
52 interested in the length of the resulting string}
53
54 \docparam{psz}{the {\tt NUL}-terminated input string, cannot be {\tt NULL}}
55
56 \docparam{n}{the size of the output buffer, ignored if {\it buf} is {\tt NULL}}
57
58 \wxheading{Return value}
59
60 The length of the converted string.
61
62 \membersection{wxMBConv::WC2MB}\label{wxmbconvwc2mb}
63
64 \constfunc{virtual size\_t}{WC2MB}{\param{char* }{buf}, \param{const wchar\_t* }{psz}, \param{size\_t }{n}}
65
66 Converts from Unicode to multibyte encoding. The semantics of this function
67 (including the return value meaning) is the same as for
68 \helpref{MB2WC}{wxmbconvmb2wc}.
69
70 Notice that when the function is called with a non-{\tt NULL} buffer, the
71 {\it n} parameter should be the size of the buffer and so it {\bf should} take
72 into account the trailing NUL, which might take two or four bytes for some
73 encodings (UTF-16 and UTF-32).
74
75 \membersection{wxMBConv::cMB2WC}\label{wxmbconvcmb2wc}
76
77 \constfunc{const wxWCharBuffer}{cMB2WC}{\param{const char* }{psz}}
78
79 Converts from multibyte encoding to Unicode by calling MB2WC,
80 allocating a temporary wxWCharBuffer to hold the result.
81
82 \membersection{wxMBConv::cWC2MB}\label{wxmbconvcwc2mb}
83
84 \constfunc{const wxCharBuffer}{cWC2MB}{\param{const wchar\_t* }{psz}}
85
86 Converts from Unicode to multibyte encoding by calling WC2MB,
87 allocating a temporary wxCharBuffer to hold the result.
88
89 \membersection{wxMBConv::cMB2WX}\label{wxmbconvcmb2wx}
90
91 \constfunc{const char*}{cMB2WX}{\param{const char* }{psz}}
92
93 \constfunc{const wxWCharBuffer}{cMB2WX}{\param{const char* }{psz}}
94
95 Converts from multibyte encoding to the current wxChar type
96 (which depends on whether wxUSE\_UNICODE is set to 1). If wxChar is char,
97 it returns the parameter unaltered. If wxChar is wchar\_t, it returns the
98 result in a wxWCharBuffer. The macro wxMB2WXbuf is defined as the correct
99 return type (without const).
100
101 \membersection{wxMBConv::cWX2MB}\label{wxmbconvcwx2mb}
102
103 \constfunc{const char*}{cWX2MB}{\param{const wxChar* }{psz}}
104
105 \constfunc{const wxCharBuffer}{cWX2MB}{\param{const wxChar* }{psz}}
106
107 Converts from the current wxChar type to multibyte encoding. If wxChar is char,
108 it returns the parameter unaltered. If wxChar is wchar\_t, it returns the
109 result in a wxCharBuffer. The macro wxWX2MBbuf is defined as the correct
110 return type (without const).
111
112 \membersection{wxMBConv::cWC2WX}\label{wxmbconvcwc2wx}
113
114 \constfunc{const wchar\_t*}{cWC2WX}{\param{const wchar\_t* }{psz}}
115
116 \constfunc{const wxCharBuffer}{cWC2WX}{\param{const wchar\_t* }{psz}}
117
118 Converts from Unicode to the current wxChar type. If wxChar is wchar\_t,
119 it returns the parameter unaltered. If wxChar is char, it returns the
120 result in a wxCharBuffer. The macro wxWC2WXbuf is defined as the correct
121 return type (without const).
122
123 \membersection{wxMBConv::cWX2WC}\label{wxmbconvcwx2wc}
124
125 \constfunc{const wchar\_t*}{cWX2WC}{\param{const wxChar* }{psz}}
126
127 \constfunc{const wxWCharBuffer}{cWX2WC}{\param{const wxChar* }{psz}}
128
129 Converts from the current wxChar type to Unicode. If wxChar is wchar\_t,
130 it returns the parameter unaltered. If wxChar is char, it returns the
131 result in a wxWCharBuffer. The macro wxWX2WCbuf is defined as the correct
132 return type (without const).
133