new Gtk3-openGl-binding




Since gtk-2.20 a OpenGL-redraw sometimes clears all parent-widgets;
with gtkglarea and with gtkglext and also direct into a
gtk_drawing_area_new, on Linux and Windows.  
See Bugzilla-bugs 626751 and 645208.
This problem also exists with gtk3.
So we have tried to make a new opengl-binding, with a own
toplevel-window for OpenGL and direct with glx.
The project is Gtk-Toolbox-2.00 (GPL); see
http://www.gcad3d.org/gui_gtk/devdoc/index.htm
This solves the problem of clearing all parent widgets.
But the following problem exists:
 The OpenGL-window lies exactly over an paned-window,
 but the OpenGL-window does not resize before idle starts.
There seems to be no way to update the resize before the idle-loop
starts.

In the configure-event-handler we do:
  gtk_widget_get_allocation (works fine)
  gtk_window_resize (resizes, but long after next idle ..)
  return FALSE;
In the next following idle (gdk_threads_add_idle) we do the
  opengl-reconfig and redraw; but most times the gtk-window
  did not resize.
  Is there a method to wait until resize is finished ?

The files are:
http://www.gcad3d.org/gui_gtk/gtk_opengl_v2.c
http://www.gcad3d.org/gui_gtk/tst_gui_gl2.c

This means, Opengl works well in the new window, but we could not yet
solve the (pure Gtk-problem) of resizing the toplevel-window claenly.

Please help if you have ideas ..

regards

Franz Reiter





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]