Hi Zbigniew It's not clear, what you want to do. I guess it's the "common problem" to keep the GUI up to date from a complex callback. 1. If you are using Gtk+ >= 2.x use g_idle_* or g_timeout_*. 2. Neither "idle" nor "timeout" uses threads. They "attach" their funtions to the main loop. When processing returns to the main loop it checks, which funtion to execute next, depending on their "priority". So if Gtk+ is processing a complex function, your timeout won't get called. The easiest way to keep the GUI up to date are some while / if( gtk_events_pending () ) gtk_main_iteration (); in your callback. For threads look into GDK API docs -> Threads. Use the latest 2.x API docs. The funtions didn't change from 1.x -> 2.x, but the current documentation includes a nice example. HTH Jan-Marek _______________________________________________ gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list