home *** CD-ROM | disk | FTP | other *** search
/ BCI NET 2 / BCI NET 2.iso / archives / programming / gui / guienv376.lha / GUIEnvironment / M2Amiga / Examples / TextFieldExample.mod < prev   
Encoding:
Text File  |  1994-12-16  |  3.0 KB  |  89 lines

  1. (****************************************************************************
  2.  
  3. $RCSfile: TextFieldExample.mod $
  4.  
  5. $Revision: 1.1 $
  6.     $Date: 1994/12/16 16:28:28 $
  7.  
  8.     GUIEnvironment example: TextField BOOPSI gadget
  9.  
  10.     M2Amiga Modula-2 Compiler V4.3
  11.  
  12.   Copyright © 1994, Carsten Ziegeler
  13.                     Augustin-Wibbelt-Str.7, 33106 Paderborn, Germany
  14.  
  15. ****************************************************************************)
  16. MODULE TextFieldExample;
  17.  
  18.  
  19.   FROM SYSTEM     IMPORT ADR, ADDRESS, CAST, TAG;
  20.   FROM IntuitionD IMPORT WindowPtr, WindowFlagSet, WindowFlags, IDCMPFlagSet,
  21.                          IDCMPFlags, WaTags;
  22.  
  23.   FROM GUIEnvSupport IMPORT GADDESC, GADOBJS, TopazAttr;
  24.  
  25. IMPORT D  : GUIEnvD,
  26.        L  : GUIEnvL,
  27.        GEC: GEClassD;
  28.  
  29. CONST version = ADR("$VER: TextFieldExample 37.6 (16.12.94)\n");
  30.  
  31. VAR win : WindowPtr;
  32.     gui : D.GUIInfoPtr;
  33.     tagbuf : ARRAY[0..19] OF LONGCARD;
  34.  
  35.  
  36. BEGIN
  37.  
  38.   win := L.OpenGUIWindowA( 50, 50, 150, 150, ADR("GUIEnvironment - TextFieldExample"),
  39.                           IDCMPFlagSet{closeWindow, newSize,
  40.                                        refreshWindow},
  41.                           WindowFlagSet{activate, windowSizing,
  42.                                         windowDepth, windowClose,
  43.                                         windowDrag}, NIL,
  44.                           TAG(tagbuf, waMinWidth, 250,
  45.                                       waMinHeight,120,
  46.                                       waMaxWidth, 500,
  47.                                       waMaxHeight,200, NIL));
  48.   IF win # NIL THEN
  49.  
  50.     gui := L.CreateGUIInfoA(win, TAG(tagbuf, D.guiCreationFont, TopazAttr(), NIL));
  51.     IF gui # NIL THEN
  52.  
  53.       L.CreateGUIGadgetA(gui, 20, 10, -20, -10, D.gegBOOPSIPrivateKind,
  54.                          TAG(tagbuf, D.gegClass, ADR(GEC.textfieldgClass),
  55.                                      D.gegDescription, GADDESC(D.gegDistAbs+D.gegObjBorder+D.gegObjLeft,
  56.                                                                D.gegDistAbs+D.gegObjBorder+D.gegObjTop,
  57.                                                                D.gegDistAbs+D.gegObjBorder+D.gegObjRight,
  58.                                                                D.gegDistAbs+D.gegObjBorder+D.gegObjBottom),
  59.                                      GEC.text, ADR("This is the textfield gadget example"),
  60.                                      GEC.border, GEC.borderDoubleBevel,
  61.                                      NIL));
  62.  
  63.       IF L.DrawGUIA(gui, NIL) = D.geDone THEN
  64.  
  65.         LOOP
  66.           L.WaitGUIMsg(gui);
  67.  
  68.           IF    closeWindow IN gui^.msgClass THEN
  69.             EXIT;
  70.           ELSIF newSize     IN gui^.msgClass THEN
  71.             (* We only get these messages if an error occurs while
  72.                GUIEnv does the resizing, so we have to EXIT ! *)
  73.             EXIT;
  74.           END;
  75.         END;
  76.       ELSE
  77.         IGNORE L.GUIRequestA(gui, ADR("TextField gadget © Mark Thomas required !"), D.gerOKKind, NIL);
  78.       END;
  79.  
  80.     END;
  81.   END;
  82.  
  83. CLOSE
  84.   IF win # NIL THEN
  85.     L.CloseGUIWindow(win);
  86.     win := NIL;
  87.   END;
  88. END TextFieldExample.
  89.