home *** CD-ROM | disk | FTP | other *** search
/ Inside Multimedia 1995 July / IMM0795.ISO / demo / optix / optxfpac.set / SCROLBOX.OPT < prev    next >
Text File  |  1995-05-08  |  2KB  |  100 lines

  1. def(i)
  2. def(j)
  3. def(k)
  4. defs(text$)
  5.  
  6. procedure scrollbox(md,xl,yo,xr,yu,kcol,scol)
  7.   locals(i)
  8.   key(off)
  9.   keycol(kcol)
  10.   setcolor(scol)
  11.   if md=1
  12.     for i:=0 to yu-yo-1 do
  13.       copywin(xl,yo,xr,yo)
  14.       loadwin(xl,yu-1,16,0)
  15.       copywin(xl,yo+1,xr,yu)
  16.       loadwin(xl,yo,0,0)
  17.     next(i)
  18.   endif
  19.   if md=2
  20.     for i:=0 to yu-yo-1 do
  21.       copywin(xl,yu,xr,yu)
  22.       loadwin(xl,yo+1,16,0)
  23.       copywin(xl,yo,xr,yu-1)
  24.       loadwin(xl,yo+1,0,0)
  25.     next(i)
  26.   endif
  27.   if md=3
  28.     for i:=0 to xr-xl-1 do
  29.       copywin(xl,yo,xl+1,yu)
  30.       loadwin(xr-2,yo,16,0)
  31.       copywin(xl+1,yo,xr,yu)
  32.       loadwin(xl,yo,0,0)
  33.     next(i)
  34.   endif
  35.   if md=4
  36.     for i:=0 to xr-xl-1 do
  37.       copywin(xr-1,yo,xr,yu)
  38.       loadwin(xl+1,yo,16,0)
  39.       copywin(xl,yo,xr-1,yu)
  40.       loadwin(xl+1,yo,0,0)
  41.     next(i)
  42.   endif
  43. return
  44.  
  45. procedure frame(xl,yo,xr,yu,col,dick)
  46.   locals(i,j)
  47.   viewport(xl,yo,xr,yu)
  48.   for i:=1 to dick/2 do
  49.     setcolor(col+i-1)
  50.     rectangle
  51.     incviewport
  52.   next(i)
  53.   if (dick/2)*2<>dick
  54.     incviewport
  55.   endif
  56.   for j:=1 to dick/2 do
  57.     setcolor(col+i-j)
  58.     rectangle
  59.     incviewport
  60.   next(j)
  61. return
  62.  
  63. procedure setbox
  64.   frame(k,100,k+j+8,131,224,24)
  65.   viewport(k,100,k+j+8,130)
  66.   cbox(0,8,0)
  67.   printc(k+4+j/2,118,text$)
  68. return
  69.  
  70. begin
  71.   readfont(1,'hel15x29.fnt')
  72.   font(1)
  73.   clearscreen(7)
  74.   gradation(224,239,32,8,5,63,63,63)
  75.  
  76.   text$:='TEXT-SMOOTHSCROLLING'
  77.   textw(text$,j)
  78.   textcolor(24)
  79.   k:=xmax/2-j/2
  80.   viewport(k,100,k+j+8+40,170)
  81.   cbox(8,8,0)
  82.   setbox
  83.   scrollbox(1,k+1,101,k+j+6,130,8,14)
  84.   setbox
  85.   scrollbox(2,k+1,101,k+j+6,130,8,14)
  86.   setbox
  87.   scrollbox(3,k+1,101,k+j+6,130,8,14)
  88.   setbox
  89.   scrollbox(4,k+1,101,k+j+6,130,8,14)
  90.  
  91.   copywin(k+1,101,k+j+8-2,130)
  92.   readsound('ping.snd')
  93.   startsound
  94.   for i:=0 to j+8 step 2 do
  95.     loadsprite(0,0,k+i,101,j+8-i,30)
  96.   next(i)
  97.   pause(1000)
  98. end
  99.  
  100.