home *** CD-ROM | disk | FTP | other *** search
AMOS Source Code | 1991-08-01 | 1.8 KB | 74 lines |
- '********************** Demo *****************************************
- '
- _GROWWINDOW[1,20,20,288,40,2]
- Print "Did you like this growing window?"
- _GROWWINDOW[2,20,60,230,60,4]
- Print "This one is a bit faster"
- Wait 90
- Wind Close
- Window 1
- Wind Close
- Bar 40,40 To 200,140
- Wait 50
- _WINDON[1,70,70,140,60,1]
- Print "This saves the" : Print "background it" : Print "opens on"
- Wait 130
- _WINDOFF[1]
- Home : Centre "Press a key"
- Wait Key
- Edit
- '
- '******************** SUBROUTINES *************************************
- '
- ' _GROWWINDOW does a zoomwindow effect when opening a window
- ' WNUM = the window number
- ' X,Y,W,H = X,Y coordinates & Width,Height
- ' Speed = can be any even number from 2 to 16 (16=fastest)
- Procedure _GROWWINDOW[WNUM,X,Y,W,H,SPEED]
- X=(X/16)*16 : W=(W/16)*16 : Rem * Needs to be on a 16 pixel boundary
- TX=X : TY=Y
- Gr Writing 2 : YEND=((Y+H)/SPEED)*SPEED
- XCOUNT=((TX+W)-X)/SPEED : YCOUNT=((TY+H)-Y)/SPEED
- If W<H Then XFLAG=1 : COUNT=XCOUNT
- If W>H Then YFLAG=1 : COUNT=YCOUNT
- For A=0 To COUNT
- Box X,Y To TX,TY
- Box X,Y To TX,TY
- Add TX,SPEED : Add TY,SPEED
- Next A
- If YFLAG=1
- Do
- Exit If TX=X+W
- Box X,Y To TX,TY
- Box X,Y To TX,TY
- Add TX,SPEED
- Loop
- End If
- If XFLAG=1
- Do
- Exit If TY=YEND
- Box X,Y To TX,TY
- Box X,Y To TX,TY
- Add TY,SPEED
- Loop
- End If
- Wind Open WNUM,X,Y,W/8,H/8,1
- End Proc
- '
- '
- ' _WINDON & _WINDOFF create a window with a saved background
- ' if FLAGBORDER=1 then a border is created ( 0 = No Border )
- Procedure _WINDON[WINDNUM,X,Y,W,H,FLAGBORDER]
- X=(X/16)*16 : W=(W/16)*16
- Get Cblock WINDNUM,X,Y,W,H
- Wind Open WINDNUM,X,Y,W/8,H/8
- Curs Off
- If FLAGBORDER=1
- Box X,Y To X+W-1,Y+H-1
- End If
- End Proc
- Procedure _WINDOFF[WINDNUM]
- Window WINDNUM
- Wind Close
- Put Cblock WINDNUM
- End Proc