home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 568a.lha / APIG_v1.1 / e15_borders.rexx < prev    next >
OS/2 REXX Batch file  |  1991-09-28  |  3KB  |  90 lines

  1. /* example of using linked borders  */
  2.  
  3. /*  */
  4.  x = addlib("apig.library",0,-30,0)
  5.  
  6.   portname = "example15_port"
  7.   p = openport(portname)
  8.  
  9.   call set_apig_globals()
  10.  
  11.   scrtitle = " This is Your New Screen  !"
  12.   wintitle = " This is your Window Title"
  13.   winidcmp = CLOSEWINDOW
  14.   winflags = WINDOWCLOSE+WINDOWDRAG+WINDOWSIZING+WINDOWDEPTH+GIMMEZEROZERO
  15.  
  16.   scr = openscreen(0,0,640,400,3,4,5,LACE+HIRES,CUSTOMSCREEN,scrtitle)
  17.  
  18.   /* open window */
  19.   w1  = openwindow(portname,0,0,640,400,2,4,winidcmp,winflags,wintitle,scr,0,0,0) 
  20.  
  21.   /* get windows rastport for drawing */
  22.   rpw1 = getwindowrastport(w1)
  23.  
  24.   /* create and initialize array of XY points for border */
  25.   barray  = allocmem(20,MEMF_CLEAR)  /* need 20 bytes, 5points * 2x * 2y */
  26.   
  27.   x = setx(barray,0,0)   ; y = sety(barray,0,0)
  28.   x = setx(barray,1,150) ; y = sety(barray,1,0)
  29.   x = setx(barray,2,150) ; y = sety(barray,2,100)
  30.   x = setx(barray,3,0)   ; y = sety(barray,3,100)
  31.   x = setx(barray,4,0)   ; y = sety(barray,4,0)
  32.   
  33.   
  34.   border2  = makeborder(w1,barray,5,0,10,2,0,JAM2,0)
  35.   border3  = makeborder(w1,barray,5,10,20,3,0,JAM2,border2)
  36.   border4  = makeborder(w1,barray,5,20,30,4,0,JAM2,border2)
  37.   border5  = makeborder(w1,barray,5,30,40,5,0,JAM2,border2)
  38.   border6  = makeborder(w1,barray,5,40,50,6,0,JAM2,border2)
  39.   border7  = makeborder(w1,barray,5,50,60,7,0,JAM2,border2)
  40.   border8  = makeborder(w1,barray,5,60,70,1,0,JAM2,border2)
  41.   border9  = makeborder(w1,barray,5,70,80,2,0,JAM2,border2)
  42.   border10 = makeborder(w1,barray,5,80,90,3,0,JAM2,border2)
  43.   border11 = makeborder(w1,barray,5,90,100,4,0,JAM2,border2)
  44.   
  45.   z = drawborder(rpw1,border2,0,22) 
  46.   z = pitext(rpw1,40,230," These borders have been linked ",1,2,JAM2,0)
  47.   z = pitext(rpw1,350,40," These are AUTO Borders ",1,2,JAM2,0)
  48.  
  49.   
  50.   /*  create an AUTO BORDER                                        */
  51.   /*  In the makeborder call below, the barray pointer is 0,       */
  52.   /*  thus border array will be generated for you                  */
  53.   /*  border thickness = 5, width of the border = 20, height = 60, */
  54.   
  55.   border1 = makeborder(w1,0,5,20,60,1,0,JAM2,0)
  56.   z = drawborder(rpw1,border1,300,52) 
  57.   
  58.   /* do some more ... */
  59.   border1 = makeborder(w1,0,15,160,60,1,0,JAM2,0)  /* thickness = 15 */
  60.   z = drawborder(rpw1,border1,350,80) 
  61.   border1 = makeborder(w1,0,8,160,60,2,0,JAM2,0)   /* thickness = 8  */
  62.   z = drawborder(rpw1,border1,350,180) 
  63.   border1 = makeborder(w1,0,3,160,60,3,0,JAM2,0)   /* thickness = 3  */
  64.   z = drawborder(rpw1,border1,350,280) 
  65.   
  66.   
  67.   
  68.   z = pitext(rpw1,300,370," DONE ",1,2,JAM2,0)
  69.   do forever   /* IDCMP loop, wait for CLOSEWINDOW message */
  70.      x = waitpkt(portname)
  71.      do forever 
  72.         msg = '0000 0000'x
  73.         msg = getpkt(portname)
  74.         if msg = '0000 0000'x then leave
  75.         class = getarg(msg,0)
  76.         if class = CLOSEWINDOW then exitme = 1
  77.         x = reply(msg,0)  
  78.      end  
  79.    if exitme = 1 then leave
  80.    
  81.   end
  82.   
  83.   z = freemem(barray,20)
  84.   
  85.   z = closewindow(w1)
  86.   z = closescreen(scr)
  87.   
  88.   exit
  89.  
  90.