]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/glcanvas.cpp
handle EINTR when reading data from the wakeup pipe
[wxWidgets.git] / src / gtk / glcanvas.cpp
index cb261d2702986ec01e4b96856b5f14f8a0bdcf22..c8b805cc007fcb2a079fbf427402d2adb0ab26f3 100644 (file)
 //-----------------------------------------------------------------------------
 
 extern "C" {
-static gint
+static void
 gtk_glwindow_realized_callback( GtkWidget *WXUNUSED(widget), wxGLCanvas *win )
 {
     win->GTKInitImplicitContext();
-
-    return FALSE;
 }
 }
 
@@ -49,7 +47,7 @@ gtk_glwindow_realized_callback( GtkWidget *WXUNUSED(widget), wxGLCanvas *win )
 //-----------------------------------------------------------------------------
 
 extern "C" {
-static gint
+static void
 gtk_glwindow_map_callback( GtkWidget * WXUNUSED(widget), wxGLCanvas *win )
 {
     wxPaintEvent event( win->GetId() );
@@ -58,8 +56,6 @@ gtk_glwindow_map_callback( GtkWidget * WXUNUSED(widget), wxGLCanvas *win )
 
     win->m_exposed = false;
     win->GetUpdateRegion().Clear();
-
-    return FALSE;
 }
 }
 
@@ -161,6 +157,9 @@ wxGLCanvas::wxGLCanvas(wxWindow *parent,
                        const wxPalette& palette)
     : m_createImplicitContext(true)
 {
+    m_sharedContext = NULL;
+    m_sharedContextOf = NULL;
+
     Create(parent, id, pos, size, style, name, attribList, palette);
 }
 
@@ -175,7 +174,7 @@ wxGLCanvas::wxGLCanvas(wxWindow *parent,
                        const wxPalette& palette)
     : m_createImplicitContext(true)
 {
-    m_sharedContext = wx_const_cast(wxGLContext *, shared);
+    m_sharedContext = const_cast<wxGLContext *>(shared);
 
     Create(parent, id, pos, size, style, name, attribList, palette);
 }
@@ -189,7 +188,8 @@ wxGLCanvas::wxGLCanvas(wxWindow *parent,
                        const wxPalette& palette )
     : m_createImplicitContext(true)
 {
-    m_sharedContextOf = wx_const_cast(wxGLCanvas *, shared);
+    m_sharedContext = NULL;
+    m_sharedContextOf = const_cast<wxGLCanvas *>(shared);
 
     Create(parent, id, pos, size, style, name, attribList, palette);
 }
@@ -222,9 +222,7 @@ bool wxGLCanvas::Create(wxWindow *parent,
 
     wxWindow::Create( parent, id, pos, size, style, name );
 
-    m_glWidget = m_wxwindow;
-
-    gtk_widget_set_double_buffered( m_glWidget, FALSE );
+    gtk_widget_set_double_buffered(m_wxwindow, false);
 
 #if WXWIN_COMPATIBILITY_2_8
     g_signal_connect(m_wxwindow, "realize",       G_CALLBACK(gtk_glwindow_realized_callback), this);