GDK_ENTER_NOTIFY_MASK |
GDK_LEAVE_NOTIFY_MASK );
+ GTK_WIDGET_SET_FLAGS( m_glWidget, GTK_CAN_FOCUS );
+
gtk_widget_pop_visual();
gtk_widget_pop_colormap();
gtk_signal_connect( GTK_OBJECT(m_glWidget), "draw",
GTK_SIGNAL_FUNC(gtk_window_draw_callback), (gpointer)this );
+ /* connect to key press and mouse handlers etc. */
+ ConnectWidget( m_glWidget );
+
gtk_widget_show( m_glWidget );
m_glContext = new wxGLContext( TRUE, this, palette );
if (m_glContext) m_glContext->SetColour( colour );
}
-void wxGLCanvas::SetSize( int x, int y, int width, int height, int sizeFlags )
+void wxGLCanvas::DoSetSize( int x, int y, int width, int height, int sizeFlags )
{
if (m_resizing) return; // I don't like recursions
m_resizing = TRUE;
if ((m_maxWidth != -1) && (m_width > m_maxWidth)) m_width = m_maxWidth;
if ((m_maxHeight != -1) && (m_height > m_maxHeight)) m_height = m_maxHeight;
- wxPoint pt( m_parent->GetClientAreaOrigin() );
- gtk_myfixed_move( GTK_MYFIXED(m_parent->m_wxwindow), m_widget, m_x+pt.x, m_y+pt.y );
+ gtk_myfixed_move( GTK_MYFIXED(m_parent->m_wxwindow), m_widget, m_x, m_y );
if ((old_width != m_width) || (old_height != m_height))
{
m_resizing = FALSE;
}
-void wxGLCanvas::SetSize( int width, int height )
-{
- SetSize( -1, -1, width, height, wxSIZE_USE_EXISTING );
-}
-
GtkWidget *wxGLCanvas::GetConnectWidget()
{
return m_glWidget;