home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / MUI / MUIBuilder22.lha / MUIBuilder / MB / M2 / Example / txt / MUIBDemo.Mod
Encoding:
Text File  |  1995-04-23  |  2.0 KB  |  77 lines

  1. (* REVISION HEADER ×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××× *
  2.    
  3.  | $VER: MUIBDemo 1.00 (30.11.94) by Stefan Schulz [sts]
  4.  
  5.  | Desc: Testprogram for the MUIBDemoGui-Example
  6.  
  7.  | Dist: This Module is © Copyright 1994 by Stefan Schulz
  8.  
  9.  | Rqrs: Amiga OS 2.0 or higher
  10.  |       muimaster.library © Copyright by Stefan Stuntz
  11.  
  12.  | Lang: M2Amiga
  13.  | Trns: M2Amiga Modula 2 Software Development System
  14.  |       © Copyright by A+L AG, CH-2540 Grenchen
  15.  
  16.  | Hist: Version \date\
  17.  |
  18.  |       1.00   \30.11.94\
  19.  |              initial Version
  20.  
  21.  * ×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××× *)
  22.  
  23. MODULE MUIBDemo;
  24.  
  25. (* IMPORTS ********************************************************************** *)
  26.  
  27. IMPORT    gm    : MUIBDemoMui,
  28.     el    : ExecL,
  29.     md    : MBMuiD,
  30.     ms    : MBMuiSupport,
  31.     S    : SYSTEM;
  32.  
  33. (* DEFINITIONS ****************************************************************** *)
  34.  
  35. VAR    (* Pointer to our Application *)
  36.     app    : gm.ObjAppPtr;
  37.     
  38.     (* Signals to wait on *)
  39.     signals    : S.LONGSET;
  40.     
  41.     (* Message of our GUI *)
  42.     Result    : LONGINT;
  43.     
  44.     (* Buffer for DoMethod *)
  45.     doBuffer: ARRAY [1..2] OF LONGINT;
  46.  
  47. (* MAIN PROGRAM ***************************************************************** *)
  48.  
  49. BEGIN
  50.  
  51. (* --- First let's create the Application --------------------------------------- *)
  52. app:= gm.CreateApp();
  53.  
  54. (* --- Main loop. Check for Messages and Wait for signals ----------------------- *)
  55. signals:= S.LONGSET{};
  56. LOOP    (* --- Check, if a message is up and get signals to wait on ------------- *)
  57.     Result:= ms.DOMethod( app^.App,
  58.                   S.TAG(doBuffer,
  59.                     md.mmApplicationInput, S.ADR(signals))
  60.                 ); (* DOMethod *)
  61.     
  62.     (* --- Someone sent the Quit-Message (Close-Gadget) --------------------- *)
  63.     IF (Result = md.mvApplicationReturnIDQuit) THEN EXIT  END;
  64.     
  65.     (* --- Wait for signals ------------------------------------------------- *)
  66.     IF (signals # S.LONGSET{}) THEN signals:= el.Wait(signals)  END;
  67.     
  68. END; (* loop *)
  69.  
  70.  
  71. CLOSE
  72.  
  73. (* --- That's it. Clean up memory ----------------------------------------------- *)
  74. gm.DisposeApp;
  75.  
  76. END MUIBDemo.
  77.