X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/22a3bce465fa9180597544a1bef7b7024d40fc50..85deaacd30470f4801a996c6e291dec43270e70e:/src/gtk/utilsgtk.cpp?ds=sidebyside diff --git a/src/gtk/utilsgtk.cpp b/src/gtk/utilsgtk.cpp index 4b321c358f..f615293ba2 100644 --- a/src/gtk/utilsgtk.cpp +++ b/src/gtk/utilsgtk.cpp @@ -11,11 +11,14 @@ #include "wx/wxprec.h" #include "wx/utils.h" -#include "wx/string.h" + +#ifndef WX_PRECOMP + #include "wx/string.h" + #include "wx/intl.h" + #include "wx/log.h" +#endif #include "wx/apptrait.h" -#include "wx/intl.h" -#include "wx/log.h" #include "wx/process.h" @@ -69,12 +72,12 @@ bool wxSetDetectableAutoRepeat( bool flag ) { Bool result; XkbSetDetectableAutoRepeat( GDK_DISPLAY(), flag, &result ); - return result; /* TRUE if keyboard hardware supports this mode */ + return result; /* true if keyboard hardware supports this mode */ } #else bool wxSetDetectableAutoRepeat( bool WXUNUSED(flag) ) { - return FALSE; + return false; } #endif @@ -152,7 +155,7 @@ void wxGetMousePosition( int* x, int* y ) bool wxColourDisplay() { - return TRUE; + return true; } int wxDisplayDepth() @@ -180,6 +183,34 @@ wxWindow* wxFindWindowAtPoint(const wxPoint& pt) return wxGenericFindWindowAtPoint(pt); } +#if !wxUSE_UNICODE + +wxCharBuffer wxConvertToGTK(const wxString& s, wxFontEncoding enc) +{ + if ( enc == wxFONTENCODING_UTF8 ) + { + // no need for conversion at all + return wxCharBuffer(s); + } + + wxWCharBuffer wbuf; + if ( enc == wxFONTENCODING_SYSTEM || enc == wxFONTENCODING_DEFAULT ) + { + wbuf = wxConvUI->cMB2WC(s); + } + else // another encoding, use generic conversion class + { + wbuf = wxCSConv(enc).cMB2WC(s); + } + + wxCharBuffer buf; + if ( wbuf ) + buf = wxConvUTF8.cWC2MB(wbuf); + + return buf; +} + +#endif // !wxUSE_UNICODE // ---------------------------------------------------------------------------- // subprocess routines @@ -228,4 +259,3 @@ int wxAddProcessCallback(wxEndProcessData *proc_data, int fd) return tag; } -