Work procedures and timers return control to Xt and allow it to process events as normal. In turn, Xt gives control
back to the application for short intervals every now and then. When the application maintains control, it can query
and process X events whenever it wants. While this process is more complicated, it does make it easier for the
application to control its own processing.
In all four situations, you can decide whether or not to display a WorkingDialog. If you want to give the user the
ability to terminate the work in progress, you can provide a Stop button in the dialog. Otherwise, you can simply
display the dialog for informational purposes. If you do not want the user to interact with other windows in the
application while the WorkingDialog is being displayed, you can make the dialog modal as described in Section
#smodaldlg.
22.2.1 Using Work Procedures
Work procedures in Xt are extremely simple in design. They are typically used by applications that can process tasks
in the background. When a work procedure is used in conjunction with a WorkingDialog, the application can provide
feedback on the status of the task. Say the user wants to load a large bitmap into a window. The nature of your
application requires you to load the file from disk into client−side memory, perform some bitmap manipulation, and
then send the bitmap to the X server to be loaded into a pixmap. If you suspect that this task might take a long time
and you want to allow the user to interrupt it, you can use ...