← Back to team overview

kicad-developers team mailing list archive

Re: Re: wxString.c_str()

 

Wayne Stambaugh wrote:
emmedics4 wrote:


--- In kicad-devel@xxxxxxxxxxxxxxx, Wayne Stambaugh <stambaughw@...>
Has anyone tried using the (const wxChar *) cast operator? I've been
using it in Printf and the logging function calls and it appears to work
fine. It is just a typedef for wxString::const_pointer but it returns
the correct character type depending on the character set used in
wxWidgets. I like it because it is reasonably descriptive and it
appears to work with most versions of wxWidgets. Using the example
above, it is used as follows:

s.Printf( wxT( "%s" ), (const wxChar*) formatMe );

It also works with the gettext _() macro.

Indeed but wxChar is going to be wiped in new versions, i think Dick was talking taking in consideration a more long term approach: changing code style to enhance code longevity and issues tomorrow.


Please take a look to:
http://docs.wxwidgets.org/trunk/overview_unicode.html#overview_unicode_pitfalls
http://docs.wxwidgets.org/trunk/classwx_string.html#conv


Thanks for the info. Looks like we'll have to support the differences
between 3.X and 2.8.x strings for the foreseeable future.


All the upcoming differences are well hidden in the new APIs except one, the one I identified: wxString::Printf()

And the best way of future-proofing the usage of wxString::Printf() is to use GetChars().

I hope this email settles the issue.

Dick








Follow ups

References