home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / MODULAV2GERMAN.DMS / in.adf / Def.zoo / Windows.def < prev    next >
Encoding:
Modula Definition  |  1988-12-04  |  1.4 KB  |  42 lines

  1. (* $N- *)
  2. DEFINITION MODULE Windows; (* jr/1jan88 *)
  3.  
  4. IMPORT Intuition;
  5.  
  6. TYPE
  7.  Window  = Intuition.WindowPtr;
  8.  WinGad  = (sizing, moving, arranging, closing, scrolling);
  9.  WinGadSet = SET OF WinGad;
  10.  Mode    = (replMd, xorMd, invMd);
  11.  ModeSet   = SET OF Mode;     (* ModeSet{}=orMd *)
  12.  
  13. PROCEDURE OpenWindow(VAR u: Window; x, y, w, h: INTEGER;
  14.                      title: ARRAY OF CHAR; gad: WinGadSet);
  15. PROCEDURE CloseWindow(VAR u: Window);
  16. PROCEDURE ModifyWindow(VAR u: Window; newX, newY, newW, newH: INTEGER);
  17.   (* if a parameter is -1 then that parameter won't change *)
  18.  
  19. PROCEDURE GetSize(VAR u: Window; VAR l, c: INTEGER);
  20. PROCEDURE XYtoPos(VAR u: Window; xx, yy: INTEGER; VAR l, c: INTEGER);
  21. PROCEDURE SetPos(VAR u: Window; l, c: INTEGER);
  22. PROCEDURE GetPos(VAR u: Window; VAR l, c: INTEGER);
  23.  
  24. PROCEDURE SetColor(VAR u: Window; fg, bg: INTEGER); (* no change if fg/bg=-1 *)
  25. PROCEDURE SetMode(VAR u: Window; m: ModeSet);
  26. PROCEDURE Scroll(VAR u: Window; nr: INTEGER);
  27.   (* nr: # of lines;  nr<0: scroll up  nr>0: scroll down *)
  28. PROCEDURE Clear(VAR u: Window);
  29. PROCEDURE ClearEOL(VAR u: Window);
  30.  
  31. PROCEDURE WriteS(VAR u: Window; s: ARRAY OF CHAR);
  32. PROCEDURE WriteC(VAR u: Window; c: CHAR);
  33. PROCEDURE WriteL(VAR u: Window); (* deletes to end of line *)
  34.  
  35. (* --------------- advanced use ------------------ *)
  36.  
  37. PROCEDURE SetScreen(scr: Intuition.ScreenPtr);
  38.   (* default: NIL=Workbench Screen *)
  39. PROCEDURE SetClip(VAR u: Window; on: BOOLEAN);
  40.  
  41. END Windows.def
  42.