home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / PJ8_3.ZIP / UFILES.PAS < prev    next >
Pascal/Delphi Source File  |  1990-02-15  |  1KB  |  79 lines

  1. (* ufiles.pas -- (c) 1989 by Tom Swan. *)
  2.  
  3. unit ufiles;
  4.  
  5. interface
  6.  
  7. uses crt, ukeys, ucmds, umenu, uprogram;
  8.  
  9. type
  10.  
  11.    fileObj = object( command )
  12.       procedure processItem; virtual;
  13.    end;
  14.  
  15. var
  16.  
  17.    fileCmd  : fileObj;
  18.  
  19. implementation
  20.  
  21. type
  22.  
  23.    fListObj = object( command )
  24.       procedure processItem; virtual;
  25.    end;
  26.  
  27.    fDirObj = object( command )
  28.       procedure processItem; virtual;
  29.    end;
  30.  
  31.    fEndObj = object( command )
  32.       procedure processItem; virtual;
  33.    end;
  34.  
  35. var
  36.  
  37.    fListCmd : fListObj;
  38.    fDirCmd  : fDirObj;
  39.    fEndCmd  : fEndObj;
  40.    fileMenu : menu;
  41.  
  42. { ----- File-menu methods. }
  43.  
  44. procedure fListObj.processItem;
  45. begin
  46.    clrscr;
  47.    writeln( 'File-List command' );
  48. end;
  49.  
  50. procedure fDirObj.processItem;
  51. begin
  52.    clrscr;
  53.    writeln( 'File-Dir command' );
  54. end;
  55.  
  56. procedure fEndObj.processItem;
  57. begin
  58.    pushKey( chr(27) );  { Ends file menu processing }
  59. end;
  60.  
  61. { ----- Run the file menu. }
  62.  
  63. procedure fileObj.processItem;
  64. begin
  65.    clrscr;
  66.    fileMenu.init( 1, hi( windmax ) + 1, 'File:', WHITE + BLUE * 16 );
  67.    fListCmd.init( @fileMenu, 'L', 'List' );
  68.    fDirCmd.init(  @fileMenu, 'D', 'Dir' );
  69.    fEndCmd.init(  @fileMenu, chr(13), '' );  { <Enter> ends menu }
  70.    fileMenu.performCommands;
  71.    fileMenu.done;
  72. end;
  73.  
  74. begin
  75.    fileCmd.init( @theMenu, 'F', 'File' );
  76. end.
  77.  
  78.  
  79.