home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / 576-600 / apd591 / proc / graphics / sbox.amos / sbox.amosSourceCode
AMOS Source Code  |  1994-02-02  |  2KB  |  68 lines

  1. Screen Open 0,320,200,16,0 : Curs Off : Flash Off : Cls 1
  2. Palette $666,0,$222,$333,$444,$555,$666,$777,$888,$999,$AAA,$BBB,$CCC,$DDD,$EEE,$FFF
  3. Ink ,3
  4. SBOX[10,10,73,33,False] : Ink 10 : Paint 40,20
  5. SBOX[10,40,73,63,False] : Ink 10 : Paint 40,50
  6. SBOX[80,10,143,33,False] : Ink 10 : Paint 110,20
  7. SBOX[80,40,143,63,False] : Ink 10 : Paint 110,50
  8. Reserve Zone 4
  9. Set Zone 1,10,10 To 73,33
  10. Set Zone 2,10,40 To 73,63
  11. Set Zone 3,80,10 To 143,33
  12. Set Zone 4,80,40 To 143,63
  13. Repeat 
  14.   Repeat : Until Inkey$<>'' or Mouse Key
  15.   If Mouse Key=0 : End : End If 
  16.   Z=Mouse Zone
  17.   If Z
  18.     If Z=1
  19.       SBOX[10,10,73,33,True]
  20.     End If 
  21.     If Z=2
  22.       SBOX[10,40,73,63,True]
  23.     End If 
  24.     If Z=3
  25.       SBOX[80,10,143,33,True]
  26.     End If 
  27.     If Z=4
  28.       SBOX[80,40,143,63,True]
  29.     End If 
  30.     Repeat : Until Mouse Key=0
  31.     If Z=1
  32.       SBOX[10,10,73,33,False]
  33.     End If 
  34.     If Z=2
  35.       SBOX[10,40,73,63,False]
  36.     End If 
  37.     If Z=3
  38.       SBOX[80,10,143,33,False]
  39.     End If 
  40.     If Z=4
  41.       SBOX[80,40,143,63,False]
  42.     End If 
  43.   End If 
  44. Until Inkey$<>''
  45.  
  46. '********************************************************* 
  47. '
  48. 'SBOX makes the same assumptions & takes the same parameters as TBOX.  
  49. 'The difference is the box is draw with dotted lines, and always has a 
  50. 'dark (colour 0) box around it, with the corner pixels missing to give 
  51. 'a rounded corner effect 
  52. '
  53. 'SBOX is useful for: Drawing control buttons - just set IN to true, and  
  54. '                    redraw the button to depress it!  
  55. '
  56. Procedure SBOX[X1,Y1,X2,Y2,IN]
  57.    Ink 0 : A=Screen Colour-1
  58.    Draw X1+1,Y1 To X2-1,Y1
  59.    Draw X1+1,Y2 To X2-1,Y2
  60.    Draw X1,Y1+1 To X1,Y2-1
  61.    Draw X2,Y1+1 To X2,Y2-1
  62.    Set Line $AAAA
  63.    Ink -IN*A
  64.    Polyline X1+1,Y2-1 To X2-1,Y2-1 To X2-1,Y1+2
  65.    Ink A+IN*A
  66.    Polyline X1+1,Y2-2 To X1+1,Y1+1 To X2-1,Y1+1
  67.    Set Line $FFFF
  68. End Proc