-- JaMControlDefs.mesa
-- Written by John Warnock, Feb. 1979.
-- Last changed by Doug Wyatt, February 10, 1981 4:29 PM
-- Last changed by Doug Brotz, June 5, 1981 2:27 PM

DIRECTORY
JaMMasterDefs USING [Frame, Object];

JaMControlDefs: DEFINITIONS = {
OPEN JaMMasterDefs;

CommandArray: TYPE = RECORD[SEQUENCE COMPUTED CARDINAL OF PROCEDURE];

commands: PRIVATE POINTER TO CommandArray;

DoCommand: PROCEDURE[command: CARDINAL] = INLINE { commands[command][] };

GetCurrentFrame: PROCEDURE RETURNS[frm: Frame];

RegisterCommand: PROCEDURE[stringname: STRING, procedure: PROCEDURE];

RegisterIntCommand: PROCEDURE[procedure: PROCEDURE]
RETURNS[CommandType Object];

QuitError: ERROR;

JaMControl: PROGRAM;

}.

DKW March 28, 1980 4:58 PM
removed InitVMControl, added AddStartProc

DKW April 1, 1980 4:10 PM
added NotifyCommand, NotifyStringObject
removed RegisterString, AddStartProc
renamed RegisterCommand to RegisterExtCommand

DKW April 1, 1980 11:34 PM
GetCommandArray no longer returns command index count

DKW February 10, 1981 2:05 PM
CommandArray is now defined here, as a SEQUENCE type
DoCommand replaces GetCommandArray
removed NotifyCommand, NotifyStringObject, RegisterExtCommand

DKB June 5, 1981 2:26 PM
Added QuitError for clean quit in Laurel.