I expect this code to do the following: when somebody clicks the button "btn" from record gui, the program draws something, and then waits for 1800000 microsecs (I hope threadDelay is measured in microsecs), and then draws something else. In fact, the code doesnt do this, but waits 1800000+ microsecs, and draws everything at the same time. Is there an error somewhere?
The usual behavior is to "batch" screen updates until your handler returns. I *think* you want Graphics.UI.Gtk.Gdk.drawWindowProcessUpdates.
--