From: Robert Roebling Date: Mon, 5 Aug 2002 17:57:53 +0000 (+0000) Subject: Added various MACROS for converting strings X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/dd398cd02c028d42a247d567d254d06604b75678?ds=inline Added various MACROS for converting strings back and forth in the different ansi/unicode/gtk mode/versions. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/gtk/private.h b/include/wx/gtk/private.h index 93ea5878c4..877dd4b561 100644 --- a/include/wx/gtk/private.h +++ b/include/wx/gtk/private.h @@ -23,8 +23,22 @@ #define GTK_CHECK_VERSION(a, b, c) 0 #endif -// GTK+ 2.0 compatibility define is broken when used from C++ as it casts enum -// to int implicitly +#ifdef __WXGTK20__ +#if wxUSE_UNICODE + #define wxGTK_CONV(s) wxConvUTF8.cWX2MB(s) + #define wxGTK_CONV_BACK(s) wxConvUTF8.cMB2WX(s) +#else + #define wxGTK_CONV(s) wxConvUTF8.cWC2MB( wxConvLocal.cWX2WC(s) ) + #define wxGTK_CONV_BACK(s) wxConvLocal.cWC2WX( (wxConvUTF8.cMB2WC( s ) ) ) +#endif +#else + #define wxGTK_CONV(s) s.c_str() + #define wxGTK_CONV_BACK(s) s +#endif + + +// GTK+ 2.0 compatibility define is broken when used from C++ as it +// casts enum to int implicitly #ifdef __WXGTK20__ #undef gtk_signal_disconnect_by_func #define gtk_signal_disconnect_by_func(object,func,data) \ diff --git a/include/wx/gtk1/private.h b/include/wx/gtk1/private.h index 93ea5878c4..877dd4b561 100644 --- a/include/wx/gtk1/private.h +++ b/include/wx/gtk1/private.h @@ -23,8 +23,22 @@ #define GTK_CHECK_VERSION(a, b, c) 0 #endif -// GTK+ 2.0 compatibility define is broken when used from C++ as it casts enum -// to int implicitly +#ifdef __WXGTK20__ +#if wxUSE_UNICODE + #define wxGTK_CONV(s) wxConvUTF8.cWX2MB(s) + #define wxGTK_CONV_BACK(s) wxConvUTF8.cMB2WX(s) +#else + #define wxGTK_CONV(s) wxConvUTF8.cWC2MB( wxConvLocal.cWX2WC(s) ) + #define wxGTK_CONV_BACK(s) wxConvLocal.cWC2WX( (wxConvUTF8.cMB2WC( s ) ) ) +#endif +#else + #define wxGTK_CONV(s) s.c_str() + #define wxGTK_CONV_BACK(s) s +#endif + + +// GTK+ 2.0 compatibility define is broken when used from C++ as it +// casts enum to int implicitly #ifdef __WXGTK20__ #undef gtk_signal_disconnect_by_func #define gtk_signal_disconnect_by_func(object,func,data) \