$DEBUG PAGEWIDTH(80) PAGELENGTH(50) M$MENU$FILE$HANDLING: DO; /****************************************************/ /* */ /* MODULE NAME - M$MENU$FILE$HANDLING */ /* */ /* FUNCTION - ROOT OF MENU TREE. */ /* CONTAINES TREE NODE ITSELF, */ /* AND THE MESSAGE. */ /* */ /****************************************************/ $NOLIST $INCLUDE(COMMON.DCL) $LIST /**** TREE NODE TYPE DECLARATION ****/ DECLARE NODE LITERALLY 'STRUCTURE( MSG$P ADDRESS, PARENT$P ADDRESS, N$SONS BYTE, SONS$TYPE(8) BYTE, SONS$P(8) ADDRESS )'; /**** EXTERNAL EXEC PROCEDURES ****/ EX$CREDIT: PROCEDURE EXTERNAL; END; EX$COPY: PROCEDURE EXTERNAL; END; EX$DELETE: PROCEDURE EXTERNAL; END; EX$RENAME: PROCEDURE EXTERNAL; END; EX$ATTRIB: PROCEDURE EXTERNAL; END; EX$DIR: PROCEDURE EXTERNAL; END; /**** EXTERNAL TREE NODES ****/ DECLARE ( MENU$TREE$ROOT, MENU$TREE$FILE$LISTING ) NODE EXTERNAL; /**** MESSAGE ****/ DECLARE MSG$FILE$HANDLING(*) BYTE DATA( 'FILE HANDLING :',CR,LF, LF, '1. Edit ( create / modify ) a file ', '5. Display / change file attributes',CR,LF, '2. Copy files ', '6. Display disk directory ( file names )', '3. Delete files ', '7. List / print a file',CR,LF, '4. Change file names ', CR,LF, LF, 0); /**** TREE NODE ****/ DECLARE MENU$TREE$FILE$HANDLING NODE PUBLIC DATA( .MSG$FILE$HANDLING, .MENU$TREE$ROOT, 7, 1,1,1,1,1,1,0,1, .EX$CREDIT, .EX$COPY, .EX$DELETE, .EX$RENAME, .EX$ATTRIB, .EX$DIR, .MENU$TREE$FILE$LISTING, 0 ) ; END M$MENU$FILE$HANDLING;