+ const wxChar* c_str() const { return m_pchData; }
+ // (and this with [wx]Printf()!)
+ const wxChar* wx_str() const { return m_pchData; }
+ // identical to c_str()
+ const wxChar* GetData() const { return m_pchData; }
+
+ // conversions with (possible) format convertions: have to return a
+ // buffer with temporary data
+#if wxUSE_UNICODE
+ const wxCharBuffer mb_str(wxMBConv& conv = wxConvLibc) const { return conv.cWC2MB(m_pchData); }
+ const wxWX2MBbuf mbc_str() const { return mb_str(*wxConvCurrent); }
+
+ const wxChar* wc_str(wxMBConv& WXUNUSED(conv) = wxConvLibc) const { return m_pchData; }
+
+#if wxMBFILES
+ const wxCharBuffer fn_str() const { return mb_str(wxConvFile); }
+#else // !wxMBFILES
+ const wxChar* fn_str() const { return m_pchData; }
+#endif // wxMBFILES/!wxMBFILES
+#else // ANSI
+#if wxUSE_MULTIBYTE
+ const wxChar* mb_str(wxMBConv& WXUNUSED(conv) = wxConvLibc) const
+ { return m_pchData; }
+ const wxWX2MBbuf mbc_str() const { return mb_str(*wxConvCurrent); }
+#else // !mmultibyte
+ const wxChar* mb_str() const { return m_pchData; }
+ const wxWX2MBbuf mbc_str() const { return mb_str(); }
+#endif // multibyte/!multibyte
+#if wxUSE_WCHAR_T
+ const wxWCharBuffer wc_str(wxMBConv& conv) const { return conv.cMB2WC(m_pchData); }
+#endif // wxUSE_WCHAR_T
+ const wxChar* fn_str() const { return m_pchData; }
+#endif // Unicode/ANSI