On 10/06/11 02:34, paul papper wrote: > Hi all, my first post here. Bear with me, I'm also new to Gtk... > > Rather than posting alot of code I'll try to describe my problem on a > more conceptual level and would like to hear if what I'm trying to do > and how I go about it seems sound. > > I have an industrial camera from which I can manage to grab and save to > disk as many pictures as I like. I do this in a loop which resides in a > callback function which is called when the take pictures button is > clicked. Number of pictures to take is specified by the user in a > GtkTextEntry. So far so good. What I also want is that a GtkImage-widget > should be updated to immediately display each new picture. This doesn't > happen. Only the last picture taken will be displayed and this happens > exactly when the "take pictures"-button callback returns. I guess the > gtk-main loop has my request for widget update > [gtk_image_set_from_pixbuf(snapshot, pixbuf)] queued and will do my > request after it's done with the callback. I've tried some functions > like gtk_widget_show_now and gtk_widget_queue_draw right after the call > to gtk_image_set_from_pixbuf(snapshot, pixbuf), to no avail, obviously. > > Any suggestions would be so welcome! Hi Paul, What I would do, is instead of using a GtkImage, use a GtkDrawingArea. For this you would have to write an expose-event callback, in which you would use gdk_cairo_set_source_pixbuf() to set the source for the Cairo Drawing Operation and then use cairo_context_paint() to paint it Then in your callback function of retrieving the image, I would set the pixbuf you create as a private member of a class, or a global variable and then just retrieve that in the expose-event callback (remember also to call gtk_widget_queue_draw() in the callback for the retrieval of the image) Hope this helps :) -- Andrew _______________________________________________ gtk-list mailing list gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list