|
![]() |
![]() |
![]() |
![]() |
As we discussed in Wednesday's seminar, the tricky part of this kind of modular design is avoiding loops, wherein widget A notifies the rest of the system's widgets that they should be updated, each of which sends a message back saying that they have been updated, prompting widget A to update itself and start the whole process over again. There are a handful of ways to avoid this problem, and a whole lot more ways of *almost* avoiding the problem. Please submit one of the former!
In your design, you may assume that low-level window events are handled by a main event loop and that your widgets are notified of such events through some generic method that every widget should implement (it could be called, say, "yourValueJustChanged"). You may NOT assume that you have access to any prepackaged message-passing libraries. It is the message-passing that is the most important component of this assignment. As such, please don't spend a lot of time implementing GUI methods for your TextBox and Dial -- focus instead on the data-passing and updating methods.
![]() |
Department of Computer Science & Engineering University of Washington Box 352350 Seattle, WA 98195-2350 (206) 543-1695 voice, (206) 543-2969 FAX [comments to owner-cse590ya] |