On Thu, 2009-04-16 at 15:03 +0200, Diego Jacobi wrote: > > On Thu, 2009-04-16 at 01:35 +0200, Diego Jacobi wrote: > >> Is it possible to draw all GTK stuff inside a Clutter surface? > > > > no. > > And what is the current limitation to achieve this? it's a limitation in gtk+, as I wrote below. you could take a snapshot of a GtkWidget, get the GdkPixmap and then draw the contents of the pixmap on the Cairo context provided by ClutterCairoTexture but that: a) would be terribly inefficient b) would not offer any kind of user interaction c) would require that the widget is parented somewhere inside a gtk+ container widget at the moment it's not possible to embed gtk+ widgets inside another toolkit and have them behave like proper gtk+ widgets. > > > >> I want to try to develop some widgets with 3D animation (if available) > >> (like transitions in a tabbed browsing), and i have read that Clutter > >> cant create more than one Clutter-Gtk per window. > > > > no, multiple GtkClutterEmbed widgets can be added to the same window > > since release 0.8.0. > > > >> So i am guessing if there is some sort of feature to enable to draw > >> GTK completely inside of a Clutter window, and the widgets with its > >> own animation will create its own surface. > > > > no. gtk+ does not currently allow embedding into other toolkits; the > > client-side-window branch in git is the first step towards offscreen > > redirection and embeddability. > > But a GtkWidget requires a TopLevel GdkWindow to do the drawings, and > a GdkPixmap is a compatible drawable. It will only require to write a > descendant of GdkWindow that draws to a Pixmap and requires no > xwindow. Then i dont know how will this surface get the mouse and > keyboard events. yes, that's the main problem: event redirection would not work, thus making it possible to display a gtk+ widget like a GtkButton but not ever interact with it. hopefully, the client-side-window branch will solve this. ciao, Emmanuele. -- Emmanuele Bassi, W: http://www.emmanuelebassi.name B: http://blogs.gnome.org/ebassi _______________________________________________ gtk-list mailing list gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list