!*******************
! CODE 2 - TEST.CLW
!*******************
  PROGRAM
!============================================================================
  MAP
    InitQueue
    Try(STRING)
    MODULE('METAPHON')
      Metaphone(STRING,<BYTE>),STRING
    END!MODULE
  END!MAP
!============================================================================
G::NameQueue         QUEUE,PRE(G::NQ)
Name                   STRING(20)
Metaphone              STRING(20)
                     END!QUEUE
!============================================================================
Window WINDOW('Test Metaphone'),AT(,,190,218),FONT('MS Sans Serif',8,,),CENTER,SYSTEM,GRAY,DOUBLE
       BUTTON('OK'),AT(147,6,36,12),USE(?OK),DEFAULT
       LIST,AT(5,6,133,206),USE(?List),VSCROLL,FORMAT('85L(1)|M~Name~@S20@17L(1)|M~Metaphone~@S20@'),FROM(G::NameQueue)
     END
!============================================================================
  CODE
  InitQueue
  OPEN(Window)
  ACCEPT
    IF ACCEPTED() = ?OK
      POST(EVENT:CloseWindow)
    END!IF
  END!ACCEPT
  CLOSE(Window)
  FREE(G::NameQueue)
!============================================================================
InitQueue            PROCEDURE

  CODE
  FREE(G::NameQueue)
  Try('Metaphone')
  Try('Xylophone')
  Try('Soundex')
  Try('Known')
  Try('Hack')
  Try('Stephen')
  Try('Roseanna')
  Try('Tuchscherer')
  Try('Tuksherer')
  Try('School')
  Try('Schmidt')
  Try('Which')
  Try('Wish')
  Try('Antidisenstablish...')
  Try('Circle')
  Try('Christian')
  Try('Cazachkoff')
  Try('Mulholland')
  Try('Mullen')
  Try('Madder')
  Try('Jill')
  Try('Anne')
  Try('Mabey')
  Try('Maybe')
  Try('Aaron')
  Try('Erin')
  Try('Aeirn')
  Try('Bridge')
  Try('McDonald''s')
  Try('MacDonalds')
  Try('Tom')
  Try('Thomas')
  Try('Thumb')
  Try('Rythm')
  Try('David')
!============================================================================
Try              PROCEDURE(P::Name)

  CODE
  G::NQ:Name = P::Name
  G::NQ:Metaphone = Metaphone(P::Name)
  ADD(G::NameQueue)
  DISPLAY
