Module: duim-sheets-internals Synopsis: DUIM sheets Author: Scott McKay, Andy Armstrong Copyright: Original Code is Copyright (c) 1995-2004 Functional Objects, Inc. All rights reserved. License: Functional Objects Library Public License Version 1.0 Dual-license: GNU Lesser General Public License Warranty: Distributed WITHOUT WARRANTY OF ANY KIND /// Sheet/medium/port protocol classes define protocol-class event-handler () end; // "Primary" sheet classes should inherit from // "Mixin" sheet classes should inherit from define open abstract class () end; define protocol-class sheet () end; define open abstract class () end; define protocol-class medium () end; define open abstract class () end; define protocol-class port () end; define open abstract class () end; define protocol-class display (, ) end; define protocol-class mirror () end; define protocol-class event () end; define protocol-class pointer () end; define protocol-class caret () end; define protocol-class clipboard () end; define open abstract class () end; define protocol-class frame-manager () end; define open abstract class () end; define protocol-class frame () end; // This isn't an abstract superclass of and because // they don't otherwise have much to do with each other. is // really just a convenience for the functions (such as the drawing // functions) that trampoline from sheets to mediums. define constant = type-union(, ); // A cursor is a thing that tells what the pointer's cursor should look like. // Don't confuse this with a "caret", which is a little indicator in a text // pane that shows you where the next character will be inserted. define constant = type-union(, );