EBTypes: CEDAR DEFINITIONS = BEGIN ButtonInfo: TYPE = REF ButtonInfoRec; ButtonInfoRec: TYPE = RECORD [ button: ActiveButton, doc: ActiveDoc, private: REF ButtonInfoPrivateRec]; ButtonInfoPrivateRec: TYPE; ActiveButton: TYPE = REF; ActiveDoc: TYPE = REF ActiveDocObj; ActiveDocObj: TYPE = RECORD[ theDoc: REF, private: REF ActiveDocPrivateObj]; ActiveDocPrivateObj: TYPE; Event: TYPE ~ REF EventRep; EventRep: TYPE; Context: TYPE = REF ContextObj; ContextObj: TYPE; -- the bindings of variables that an EBLanguageProc may wish to access EBLanguageProc: TYPE = PROC [arguments: LIST OF REF ANY, buttonInfo: ButtonInfo, clientData: REF, context: Context] RETURNS [REF ANY ¬ NIL]; END. φ EBTypes.mesa Copyright Σ 1988, 1989, 1992 by Xerox Corporation. All rights reserved. Bier, October 3, 1989 5:44:02 pm PDT Goodisman, August 15, 1989 4:23:10 pm PDT Doug Wyatt, April 15, 1992 4:27 pm PDT Contents: Definitions common to EmbeddedButtons, a framework for adding standardized behaviors to any application that is willing to support a set of button objects and to implement the behavior access routines. EmbeddedButtons internal representation of the button. Opaque to all but EBImpl. The editor's representation of the button, used to specify a particular button to the editor. ActiveDoc.theDoc is the editor's representation of a particular document. A button is specified as an ActiveButton in an ActiveDoc. A raw user input event. ΚΎ–(cedarcode) style•NewlineDelimiter ™codešœ ™ Kšœ Οeœ<™HKšœ$™$Kšœ)™)K™&—K˜KšΟnœΜ™ΤK™šžœΟkœŸ œŸ˜"K˜—Kšœ ŸœŸœ˜%šœŸœŸœ˜Kšœ˜K˜Irivatešœ Ÿœ˜#—šœŸœ˜K™Q—K˜šœŸœŸœ˜K™]—K˜Kšœ ŸœŸœ˜#šœŸœŸœ˜KšœŸœ˜ Kšœ Ÿœ˜"—šœŸœ˜K™„—K˜KšœŸœŸœ ˜šœ Ÿœ˜K™—K˜Kšœ ŸœŸœ ˜Kšœ ŸœΟcF˜XKšœŸœŸœ ŸœŸœŸœŸœ&ŸœŸœŸœŸœŸœ˜ŒK˜KšŸœ˜—…—²f