hello Carlos and list: Sorry to keep bothering you, but I am beginning to get desprerate ... I can not figure out how to do a manual refresh. As I have described in previous mails, I have a struct that contains the info needed for each GtkGLArea. typedef struct { GtkWidget *notebook_page; GtkWidget *glarea; gint page_number; GLfloat xRotation; GLfloat yRotation; GLfloat zRotation; GLfloat xTranslation; GLfloat yTranslation; GLfloat zTranslation; GLfloat scale; gint current; } typDrawingArea; I have created a global variable, that is a pointer to the struct. This points to the address of a struct in a GLIB linked list, for the currently visible notebook page. typDrawingArea *current_drawing; Now this works great for automatic refreshes, but when I try doing a manual refresh using any variation of one of the following lines of code, it SEGFAULTS. gtk_widget_draw(GTK_WIDGET(current_drawing->glarea), NULL); or gtk_widget_queue_draw (current_drawing->glarea)); I believe that Gtk+ does not like the way the global variable is declared or assigned, but am clueless why it works for autorefreshes and not manual. I am going to enclose a test app, and maybe that will help show what I am doing wrong. Thanks for your help. cheers, Jim Parker
Attachment:
OpenGL_notebook.c
Description: Text Data