home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / basic / baswiz18.zip / BW$BAS.ZIP / WEXPLODE.BAS < prev    next >
BASIC Source File  |  1992-08-29  |  2KB  |  47 lines

  1. '   +----------------------------------------------------------------------+
  2. '   |                                                                      |
  3. '   |        BASWIZ  Copyright (c) 1990-1992  Thomas G. Hanlin III         |
  4. '   |                                                                      |
  5. '   |                      The BASIC Wizard's Library                      |
  6. '   |                                                                      |
  7. '   +----------------------------------------------------------------------+
  8.  
  9.    DECLARE SUB WGetPlace (BYVAL Handle%, Row%, Column%)
  10.    DECLARE SUB WGetSize (BYVAL Handle%, Rows%, Columns%)
  11.    DECLARE SUB WPlace (BYVAL Handle%, BYVAL Row%, BYVAL Column%)
  12.    DECLARE SUB WSize (BYVAL Handle%, BYVAL Rows%, BYVAL Columns%)
  13.    DECLARE SUB WUpdate ()
  14.  
  15.    DEFINT A-Z
  16.  
  17. SUB WExplode (Handle)
  18.    WGetPlace Handle, EndRow, EndCol
  19.    WGetSize Handle, EndHigh, EndWide
  20.    High = 1: Wide = 1
  21.    Row = EndRow + EndHigh \ 2
  22.    Col = EndCol + EndWide \ 2
  23.    DO
  24.       WSize Handle, High, Wide
  25.       WPlace Handle, Row, Col
  26.       WUpdate
  27.       IF Row > EndRow THEN
  28.          Row = Row - 1
  29.          High = High + 2
  30.          IF High > EndHigh THEN High = EndHigh
  31.       END IF
  32.       IF Col > EndCol THEN
  33.          Col = Col - 1
  34.          Wide = Wide + 2
  35.          IF Wide > EndWide THEN Wide = EndWide
  36.       END IF
  37.       IF Col > EndCol THEN
  38.          Col = Col - 1
  39.          Wide = Wide + 2
  40.          IF Wide > EndWide THEN Wide = EndWide
  41.       END IF
  42.    LOOP UNTIL Row = EndRow AND Col = EndCol
  43.    WSize Handle, EndHigh, EndWide
  44.    WPlace Handle, EndRow, EndCol
  45.    WUpdate
  46. END SUB
  47.