]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/utilsgtk.cpp
Add wxVersionInfo and functions returning it for 3rd party libraries.
[wxWidgets.git] / src / gtk / utilsgtk.cpp
index a8d0888c7c2afaed2d8c6530c6bc56ff445798c5..93b8f02790f29680f0e163f17b9083c6253d6fe7 100644 (file)
@@ -48,6 +48,8 @@
 #if wxUSE_DETECT_SM
     #include "X11/Xlib.h"
     #include "X11/SM/SMlib.h"
+
+    #include "wx/unix/utilsx11.h"
 #endif
 
 //-----------------------------------------------------------------------------
@@ -242,17 +244,7 @@ wxTimerImpl *wxGUIAppTraits::CreateTimerImpl(wxTimer *timer)
 #if wxUSE_DETECT_SM
 static wxString GetSM()
 {
-    class Dpy
-    {
-    public:
-        Dpy() { m_dpy = XOpenDisplay(NULL); }
-        ~Dpy() { if ( m_dpy ) XCloseDisplay(m_dpy); }
-
-        operator Display *() const { return m_dpy; }
-    private:
-        Display *m_dpy;
-    } dpy;
-
+    wxX11Display dpy;
     if ( !dpy )
         return wxEmptyString;
 
@@ -365,14 +357,9 @@ bool wxGUIAppTraits::ShowAssertDialog(const wxString& msg)
         gtk_assert_dialog_set_message(GTK_ASSERT_DIALOG(dialog), msg.mb_str());
 
 #if wxUSE_STACKWALKER
-        // don't show more than maxLines or we could get a dialog too tall to
-        // be shown on screen: 20 should be ok everywhere as even with 15 pixel
-        // high characters it is still only 300 pixels...
-        static const int maxLines = 20;
-
-        // save current stack frame...
+        // save the current stack ow...
         StackDump dump(GTK_ASSERT_DIALOG(dialog));
-        dump.SaveStack(maxLines);
+        dump.SaveStack(100); // showing more than 100 frames is not very useful
 
         // ...but process it only if the user needs it
         gtk_assert_dialog_set_backtrace_callback