Short: Create a progress requester, as in the AUISG Author: Olaf `Olsen' Barthel Type: dev/gui Architecture: m68k-amigaos PURPOSE The "Amiga User Interface Style Guide" contains an example of how a progress requester should look like (page 29), but this example has no "teeth". It is just a visual cue, you still have to implement the requester yourself. Around Christmas Day, the issue was brought up in comp.sys.amiga.programmer how to program these progress requesters. This is my attempt at solving the problem. GOALS - The progress requester should be entirely self-contained and reentrant. - It should be simple to find out if the user has hit the "Stop" button. - Creation and management of the requester should follow a familiar model. - The display should be font sensitive. IMPLEMENTATION The implementation consists of a set of BOOPSI objects, which are linked together, plus a display element for the gauge. This is similar to how Intuition builds system requesters and has the advantage of delegating the work load of refreshing and maintaining the display to Intuition. The application to create the display just has to listen for the user to hit the "Stop" button, it need not worry about housekeeping work. The gauge creation code is reentrant, it was written with SAS/C in mind. The only compiler dependant part is the custom class dispatcher. You must initialize IntuitionBase, GfxBase, UtilityBase and SysBase for the gauge code to work. COPYRIGHT AND USAGE RESTRICTIONS This implementation is Copyright © 1997 by Olaf `Olsen' Barthel. It is freely distributable. I place no restrictions on its usage. You may use this code in commercial software or shareware programs without having to pay royalties to me. An acknowledgement would still be nice, though :^) If you find bugs in the code or make enhancements, please notify me. I would like to keep this code updated, so everyone will be able to take advantage of it. My electronic mail address: olsen@sourcery.han.de My postal address: Olaf Barthel Brabeckstrasse 35 D-30559 Hannover Federal Republic of Germany