Ratcliffe, Jeffrey (Peters) wrote:
> Here is my test code. I want the dialog to be displayed and the label to be 
> updated by the while loop. However, as listed, the dialog is never displayed. 
> And of course if I make it model and add $dialog->run, then the while loop 
> never gets run.
>
> What am I doing wrong?
>   

The problem is that you want to run the "while scanning" loop and the 
Gtk main loop *at the same time*, which is of course impossible. (Using 
dialog->run is more or less equivalent to running the gtk main loop)

You should either (A) check for pending gtk events in the while loop, or 
(B) you should make the code to update the label be called from the gtk 
main loop.

For (A) check the manual for gtk main, it contains a number of methods 
for handling pending gtk events. For (B) I think there are IO watch 
hooks in Glib which can be used to check on a file handle from gtk. Or 
you can connect to the idle event from gtk and do a non-blocking check 
of your file handle each time the idle event gets called.

-- Jaap
_______________________________________________
gtk-perl-list mailing list
gtk-perl-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-perl-list

Reply via email to