-- File: TuplesEditor.mesa -- Contents: interface to a "tuples" subwindow for use by nut implementations -- Created by: Donahue July 8, 1982 10:44 am -- Last edited by: -- Donahue, April 8, 1983 12:20 pm -- Cattell, June 23, 1983 3:58 pm DIRECTORY DB: TYPE USING[ Domain, Entity, Attribute ], ViewerClasses: TYPE USING[ Viewer ], VTables: TYPE USING[ VTable ]; TuplesEditor: CEDAR DEFINITIONS IMPORTS DB, ViewerClasses, VTables = BEGIN OPEN DB, ViewerClasses, VTables; defaultOld: BOOL; -- FALSE => attributes start in NewOrOld mode, TRUE => OldOnly DisplayTuples: PROC[e: Entity, attrList: LIST OF Attribute, parent: Viewer] RETURNS[VTable]; -- Make a nested viewer (a VTable) that has all of the tuples where the entity appears in any -- of the attributes specified. If the attribute is a non-key part of a relation, then a blank row -- may be provided for adding new tuples SaveTuples: PROC[ viewer: VTable, newEntity: Entity _ NIL ] RETURNS [errors: BOOL]; -- Given a table set up by DisplayTuples, add all of its contents to the database. -- Returns TRUE if any errors were reported to the user as a result of bad entries. -- The function of SaveTuples is determined by the newEntity and the oldEntity (the -- entity originally supplied to DisplayTuples): -- -- oldEntity newEntity result -- NIL e add the relships on the screen to the entity e -- e NIL destroy the entity e -- e e update entity e to reflect any modifications to relships on screen -- e1 e2 (#e1) add e1's relships, as modified on screen, to e2 (leaves e1 alone) QueryTuples: PROC[ viewer: VTable, domain: DB.Domain ] RETURNS [LIST OF Entity]; -- Given a table set up by DisplayTuples, finds all the entities in the given domain -- that satisfy the query filled into the table by the user. -- NOTE, for both query and editor windows: the top-level viewer containing the viewer on which EditTuples or QueryTuples is called may have a $Typescript property whose value is a stream to send error messages to. If no such stream is provided, error messages will go to the Message window. END. ÊÖ˜JšVÏc©œ$œ"œÏk œžœžœžœ0žœžœžœžœžœžœžœžœžœžœ)žœFÏn œžœžœžœžœ _œeœ)œŸ œžœ-žœ žœ©œ‘Ñbce    dœ§œŸ œžœ&žœžœ Uœäœžœ˜Ü—…—^ :