Hi John! John Cupitt schrieb: > On 1/3/06, Christoph Bersch <[EMAIL PROTECTED]> wrote: >> I want to write a program, that draws something in a DrawingArea, and calls a >> function after _showing_ the changes in the DrawingArea: >> >> 1) call function draw_something() >> 2) show the changes >> 3) call a function measure() >> 4) return to step 1) > > I would use a timeout. Set it to run every 20ms (or whatever interval > you want), and do something like: > > static int number_of_ticks = 0; > > my_timeout_callback( ... > { > number_of_ticks += 1; > if( number_of_ticks & 1 ) > // queue a redraw of our drawingarea > gtk_widget_queue_draw( .. > else > measure(); > > return( TRUE ); > }
Great, this seems to work :-) > There's no guarantee that the draw will occur before the measure, but > it probably will for most reasonable machines. But of course that's > always true for X. As long as it works for X, it's ok for me. I thought, that a call of gtk_widget_draw() might be better than gtk_widget_queue_draw_area(), as it draws immediately, although it is deprecated. So how could a call of gtk_widget_draw() be replaced in new code (I don't fully understand the part belonging to this function in the documentation). Could it be something like gdk_window_invalidate_rect (); gdk_window_process_updates (); ? Thanks Christoph _______________________________________________ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list