EBNullDoc.mesa
Copyright Ó 1992 by Xerox Corporation. All rights reserved.
Kenneth A. Pier, September 29, 1992 5:13 pm PDT
DIRECTORY
EBTypes, Rope;
EBNullDoc: CEDAR DEFINITIONS = BEGIN
ActiveDoc: TYPE = EBTypes.ActiveDoc;
ActiveButton: TYPE = EBTypes.ActiveButton;
ROPE: TYPE = Rope.ROPE;
Create: PROC [docName: ROPE] RETURNS [doc: ActiveDoc];
users must create a new NullDoc, create all the buttons for the doc,
add all the variables to all the buttons, then call Instantiate
Instantiate: PROC [doc: ActiveDoc];
CreateBOOLButton: PROC [doc: ActiveDoc, buttonName: ROPE, initialVarVal: BOOL] RETURNS [ActiveButton];
CreateATOMButton: PROC [doc: ActiveDoc, buttonName: ROPE, initialVarVal: ATOM] RETURNS [ActiveButton];
CreateROPEButton: PROC [doc: ActiveDoc, buttonName: ROPE, initialVarVal: ROPE] RETURNS [ActiveButton];
CreateINTButton: PROC [doc: ActiveDoc, buttonName: ROPE, initialVarVal: INT] RETURNS [ActiveButton];
CreateREALButton: PROC [doc: ActiveDoc, buttonName: ROPE, initialVarVal: REAL] RETURNS [ActiveButton];
CreateRopeEnumerationButton: PROC [doc: ActiveDoc, buttonName: ROPE, initialVarVal: ROPE, type: LIST OF ROPE] RETURNS [ActiveButton];
CreateRopeEnumerationButton is preferable to CreateEnumeratedButton because it does better type checking and avoids the spurious use of REF TEXT where ROPE is required.
CreateEnumeratedButton: PROC [doc: ActiveDoc, buttonName: ROPE, initialVarVal: REF, type: LIST OF REF] RETURNS [ActiveButton];
CreateButton: PROC [doc: ActiveDoc, buttonName: ROPE, initialVarVal: ] RETURNS [ActiveButton];
AddBOOLVariable: PROC [button: ActiveButton, varName: ROPE, varVal: BOOL];
AddATOMVariable: PROC [button: ActiveButton, varName: ROPE, varVal: ATOM];
AddROPEVariable: PROC [button: ActiveButton, varName: ROPE, varVal: ROPE];
AddINTVariable: PROC [button: ActiveButton, varName: ROPE, varVal: INT];
AddREALVariable: PROC [button: ActiveButton, varName: ROPE, varVal: REAL];
AddRopeEnumerationVariable: PROC [button: ActiveButton, varName: ROPE, varVal: ROPE, type: LIST OF ROPE];
AddEnumeratedVariable: PROC [button: ActiveButton, varName: ROPE, varVal: REF, type: LIST OF REF];
AddVariable: PROC [button: ActiveButton, varName: ROPE, varVal: ];
END.