home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / EGS / egssys71.lha / EGSClusterInc.lha / EGSGadBox.mod < prev    next >
Encoding:
Text File  |  1994-12-13  |  2.3 KB  |  101 lines

  1. |##########|
  2. |#MAGIC   #|DBGFFAII
  3. |#PROJECT #|""
  4. |#PATHS   #|"EGSProject"
  5. |#FLAGS   #|xx---x--x---xxx-----------------
  6. |#USERSW  #|--------------------------------
  7. |#USERMASK#|--------------------------------
  8. |#SWITCHES#|x--x-x----------
  9. |##########|
  10. $$ConstChk:=FALSE
  11. (* $V- $R- $S- $N- *)
  12. IMPLEMENTATION MODULE EGSGadBox;
  13.  
  14. FROM Exec       IMPORT OpenLibrary,CloseLibrary;
  15. FROM Exceptions IMPORT CouldNotOpenLibrary;
  16.                 IMPORT EGSIntui AS I;
  17.  
  18. PROCEDURE CreateHorizBoxL(con : GadContext;sons : LIST OF GadBoxPtr):GadBoxPtr;
  19. VAR box : GadBoxPtr;
  20.     i   : INTEGER;
  21. BEGIN
  22.   box:=CreateHorizBox(con);
  23.   FOR i:=0 TO sons'MAX DO
  24.     AddLastSon(box,sons[i]);
  25.   END;
  26.   RETURN box;
  27. END CreateHorizBoxL;
  28.  
  29. PROCEDURE CreateVertiBoxL(con : GadContext;sons : LIST OF GadBoxPtr):GadBoxPtr;
  30. VAR box : GadBoxPtr;
  31.     i   : INTEGER;
  32. BEGIN
  33.   box:=CreateVertiBox(con);
  34.   FOR i:=0 TO sons'MAX DO
  35.     AddLastSon(box,sons[i]);
  36.   END;
  37.   RETURN box;
  38. END CreateVertiBoxL;
  39.  
  40. PROCEDURE CreateHorizTableL(con : GadContext;sons : LIST OF GadBoxPtr):GadBoxPtr;
  41. VAR box : GadBoxPtr;
  42.     i   : INTEGER;
  43. BEGIN
  44.   box:=CreateHorizTable(con);
  45.   FOR i:=0 TO sons'MAX DO
  46.     AddLastSon(box,sons[i]);
  47.   END;
  48.   RETURN box;
  49. END CreateHorizTableL;
  50.  
  51. PROCEDURE CreateVertiTableL(con : GadContext;sons : LIST OF GadBoxPtr):GadBoxPtr;
  52. VAR box : GadBoxPtr;
  53.     i   : INTEGER;
  54. BEGIN
  55.   box:=CreateVertiTable(con);
  56.   FOR i:=0 TO sons'MAX DO
  57.     AddLastSon(box,sons[i]);
  58.   END;
  59.   RETURN box;
  60. END CreateVertiTableL;
  61.  
  62. PROCEDURE CreateMultiPanelL(con : GadContext;VAR panel : MultiPanel;boxes : LIST OF GadBoxPtr):GadBoxPtr;
  63. VAR arr : GadBoxArray(32);
  64.     i   : INTEGER;
  65. BEGIN
  66.   FOR i:=0 TO boxes'MAX DO
  67.     arr[i]:=boxes[i];
  68.   END;
  69.   arr[boxes'RANGE]:=NIL;
  70.   RETURN CreateMultiPanel(con,panel,arr'PTR);
  71. END CreateMultiPanelL;
  72.  
  73. PROCEDURE GetStringData(    gad IN A0 : I.StringGadPtr;
  74.                         VAR str IN A1 : STRING);
  75. VAR i IN D2 : INTEGER;
  76.     s IN A2,
  77.     d IN A3 : POINTER TO CHAR;
  78. BEGIN
  79.   I.LockIntuition;
  80.   i:=-1;
  81.   s:=gad.buffer;
  82.   d:=str.data[0]'PTR;
  83.   REPEAT
  84.     INC(i);d+^:=s+^
  85.   UNTIL =;
  86.   str.len:=i;
  87.   I.UnlockIntuition;
  88. END GetStringData;
  89.  
  90.  
  91. BEGIN
  92.   EGBBase:=OpenLibrary("egsgadbox.library",0);
  93.   ASSERT(EGBBase#NIL,CouldNotOpenLibrary);
  94. CLOSE
  95.   IF EGBBase#NIL THEN
  96.     CloseLibrary(EGBBase);EGBBase:=NIL
  97.   END;
  98. END EGSGadBox.
  99.  
  100.  
  101.