home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / Add-Ons / After Dark / About Box / Example Use of ADAB / GraphicsModule_main.p < prev    next >
Encoding:
Text File  |  1993-11-07  |  1.7 KB  |  74 lines  |  [TEXT/PJMM]

  1. {}
  2. {    main.p}
  3. {    }
  4. {    This is a simple main function that handles the messages passed by After Dark to a }
  5. {    graphics module. }
  6. {    }
  7. {    This source file can be used as is for both Think Pascal 3.0 and MPW Pascal 3.0  }
  8. {    By Patrick Beard and Bruce Burkhalter and Colin Glassey.}
  9. {    © 1989,1990,1991 Berkeley Systems, Inc. }
  10. {}
  11.  
  12. unit GraphicsModule_main;
  13.  
  14. interface
  15.  
  16.     uses
  17.         Sound, GraphicsModuleTypes;  { Think Pascal automatically includes Quickdraw definitions }
  18.  
  19.     function main (var storage: Handle; blankRgn: rgnHandle; message: integer; params: GMParamBlockPtr): OSErr;
  20.  
  21. implementation
  22.  
  23.     function DoInitialize (var storage: Handle; blankRgn: rgnHandle; params: GMParamBlockPtr): OSErr;
  24.     external;
  25.  
  26.     function DoClose (storage: Handle; blankRgn: RgnHandle; params: GMParamBlockPtr): OSErr;
  27.     external;
  28.  
  29.     function DoBlank (storage: Handle; blankRgn: rgnHandle; params: GMParamBlockPtr): OSErr;
  30.     external;
  31.  
  32.     function DoDrawFrame (storage: Handle; blankRgn: rgnHandle; params: GMParamBlockPtr): OSErr;
  33.     external;
  34.  
  35.     function DoHelp (params: GMParamBlockPtr): OSErr;
  36.     external;
  37.  
  38.     function DoSetup (blankRgn: rgnHandle; message: integer; params: GMParamBlockPtr): OSErr;
  39.     external;
  40.  
  41.     function main;
  42.         var
  43.             err: OSErr;
  44.     begin {main}
  45.  
  46.         err := noErr;
  47.  
  48.         case message of
  49.  
  50.             Initialize: 
  51.                 err := DoInitialize(storage, blankRgn, params);
  52.  
  53.             Close: 
  54.                 err := DoClose(storage, blankRgn, params);
  55.  
  56.             Blank: 
  57.                 err := DoBlank(storage, blankRgn, params);
  58.  
  59.             DrawFrame: 
  60.                 err := DoDrawFrame(storage, blankRgn, params);
  61.  
  62.             DoAbout: 
  63.                 err := DoHelp(params);
  64.  
  65.             otherwise
  66.                 if (message >= ButtonMessage) then
  67.                     err := DoSetup(blankRgn, message, params);
  68.  
  69.         end;
  70.  
  71.         main := err;
  72.  
  73.     end; {main}
  74. end.