home *** CD-ROM | disk | FTP | other *** search
/ Fujiology Archive / fujiology_archive_v1_0.iso / !MAGS / !BONUS / COVERDSK / STFORMAT / STF35.ZIP / STF35B.MSA / GFABASIC / WINDOW.GFA (.txt) < prev   
GFA-BASIC Atari  |  1992-03-12  |  1KB  |  51 lines

  1. ' ** window.lst
  2. '
  3. DEFFILL 1,2,4
  4. PBOX 0,19,639,399
  5. DEFFILL 1,0
  6. '
  7. DIM message_buffer%(3)  ! 16 Byte
  8. adr_mes%=V:message_buffer%(0)
  9. '
  10. ABSOLUTE word0&,adr_mes%
  11. ABSOLUTE x&,adr_mes%+8
  12. ABSOLUTE y&,adr_mes%+10
  13. ABSOLUTE w&,adr_mes%+12
  14. ABSOLUTE h&,adr_mes%+14
  15. '
  16. handle&=WIND_CREATE(&X101111,0,19,639,380)
  17. '
  18. titel$="Window"
  19. adr_tit%=V:titel$
  20. ~WIND_SET(handle&,2,CARD(SWAP(adr_tit%)),CARD(adr_tit%),0,0)
  21. ~WIND_OPEN(handle&,100,100,200,100)
  22. ~WIND_GET(handle&,4,wx&,wy&,ww&,wh&)
  23. PBOX wx&,wy&,wx&+ww&,wy&+wh&
  24. '
  25. raus!=FALSE
  26. REPEAT
  27.   ~EVNT_MULTI(&X110000,0,0,0,0,0,0,0,0,0,0,0,0,0,adr_mes%,100,d%,d%,d%,d%,d%,d%)
  28.   SELECT word0&
  29.   CASE 22                              ! WM_CLOSED
  30.     raus!=TRUE
  31.   CASE 23                              ! WM_FULLED
  32.     ~WIND_SET(handle&,5,1,19,638,380)
  33.     ~WIND_GET(handle&,4,wx&,wy&,ww&,wh&)
  34.     PBOX wx&,wy&,wx&+ww&,wy&+wh&
  35.     word0&=0
  36.   CASE 27,28                           ! WM_SIZED, WM_MOVED
  37.     IF w&<100
  38.       w&=100
  39.     ENDIF
  40.     IF h&<80
  41.       h&=80
  42.     ENDIF
  43.     ~WIND_SET(handle&,5,x&,y&,w&,h&)
  44.     ~WIND_GET(handle&,4,wx&,wy&,ww&,wh&)
  45.     PBOX wx&,wy&,wx&+ww&,wy&+wh&
  46.     word0&=0
  47.   ENDSELECT
  48. UNTIL raus!
  49. ~WIND_CLOSE(handle&)
  50. ~WIND_DELETE(handle&)
  51.