(**** * * Module Windows defines the objects and operations related to controlling * the visibility of viewing windows. * *) module Windows; from View import View; object WindowList components: Window*; description: (* A WindowList contains a list of the currently open windows in the calendar system. This object is border-line for the abstract specification in that it relates to the manipulation of concrete UI objects. However, in order to maintain platform independence, a window list and realted operations is considered necessary. *); end WindowList; object Window components: Title and View; description: (* A Window is an abstract UI window, the precise concrete represenation of which will be determined on a particular UI platform. The only window information that is necessary at the abstract level is the title, which will be specified to contain a content-specific string. E.g., a window holding a monthly view will contain the title "Monthly View". *); end Window; end Windows;