MODULE RealCell; IMPORT Cell, Strings, Out; CONST MaxLength* = 3; MaxColors* = 3; TYPE P* = POINTER TO T; T* = RECORD ( Cell.T ) number : INTEGER; text : ARRAY MaxLength OF CHAR; colors : ARRAY MaxColors OF CHAR; END; PROCEDURE ( c : P ) WriteNum*; BEGIN Out.Int ( c.number, 0 ); Out.Char ( ' ' ); END WriteNum; PROCEDURE ( c : P ) GetText* ( VAR text : ARRAY OF CHAR ); BEGIN Strings.Assign ( c.text, text ); END GetText; PROCEDURE ( c : P ) GetColors* ( VAR colors : ARRAY OF CHAR ); BEGIN Strings.Assign ( c.colors, colors ); END GetColors; PROCEDURE Init* ( c : P; number : INTEGER; text, colors : ARRAY OF CHAR ); BEGIN c.number := number; Strings.Assign ( text, c.text ); Strings.Assign ( colors, c.colors ); END Init; END RealCell.