X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a8eaaeb23796c69ea0f67cbd48fc5f667d9823d0..89c831801467203372b6964a785823f19e8063dd:/src/gtk/utilsgtk.cpp?ds=inline diff --git a/src/gtk/utilsgtk.cpp b/src/gtk/utilsgtk.cpp index 1e0d4dccc1..4d780162b6 100644 --- a/src/gtk/utilsgtk.cpp +++ b/src/gtk/utilsgtk.cpp @@ -7,6 +7,9 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +// For compilers that support precompilation, includes "wx.h". +#include "wx/wxprec.h" + #include "wx/utils.h" #include "wx/string.h" @@ -53,11 +56,14 @@ extern GtkWidget *wxGetRootWindow(); //---------------------------------------------------------------------------- // misc. //---------------------------------------------------------------------------- +#ifndef __EMX__ +// on OS/2, we use the wxBell from wxBase library void wxBell() { gdk_beep(); } +#endif /* Don't synthesize KeyUp events holding down a key and producing KeyDown events with autorepeat. */ @@ -75,6 +81,43 @@ bool wxSetDetectableAutoRepeat( bool WXUNUSED(flag) ) } #endif +#ifdef __WXGTK20__ +// Escapes string so that it is valid Pango markup XML string: +wxString wxEscapeStringForPangoMarkup(const wxString& str) +{ + size_t len = str.length(); + wxString out; + out.Alloc(len); + for (size_t i = 0; i < len; i++) + { + wxChar c = str[i]; + switch (c) + { + case _T('&'): + out << _T("&"); + break; + case _T('<'): + out << _T("<"); + break; + case _T('>'): + out << _T(">"); + break; + case _T('\''): + out << _T("'"); + break; + case _T('"'): + out << _T("""); + break; + default: + out << c; + break; + } + } + return out; +} +#endif + + // ---------------------------------------------------------------------------- // display characterstics // ---------------------------------------------------------------------------- @@ -122,7 +165,7 @@ int wxDisplayDepth() return gdk_window_get_visual( wxGetRootWindow()->window )->depth; } -wxToolkitInfo *wxGUIAppTraits::GetToolkitInfo() +wxToolkitInfo& wxGUIAppTraits::GetToolkitInfo() { static wxToolkitInfo info; #ifdef __WXGTK20__ @@ -135,10 +178,10 @@ wxToolkitInfo *wxGUIAppTraits::GetToolkitInfo() info.shortName << _T("univ"); info.name << _T("/wxUniversal"); #endif - info.versionMajor = GTK_MAJOR_VERSION; - info.versionMinor = GTK_MINOR_VERSION; + info.versionMajor = gtk_major_version; + info.versionMinor = gtk_minor_version; info.os = wxGTK; - return &info; + return info; } wxWindow* wxFindWindowAtPoint(const wxPoint& pt) @@ -151,7 +194,8 @@ wxWindow* wxFindWindowAtPoint(const wxPoint& pt) // subprocess routines // ---------------------------------------------------------------------------- -extern "C" +extern "C" { +static void GTK_EndProcessDetector(gpointer data, gint source, GdkInputCondition WXUNUSED(condition) ) { @@ -182,6 +226,7 @@ void GTK_EndProcessDetector(gpointer data, gint source, wxHandleProcessTermination(proc_data); } +} int wxAddProcessCallback(wxEndProcessData *proc_data, int fd) {