FT_SINKEY()
Replacement for INKEY() that tests for SET KEY procedures
──────────────────────────────────────────────────────────────────────────────

Syntax

FT_SINKEY( [ <nWaitTime> ] ) -> nKey

Arguments

<nWaitTime> is the number of seconds to wait. If zero,
FT_SINKEY() will wait indefinitely for a keypress. If not
passed, FT_SINKEY() does not wait for a keypress. If NIL,
it is treated the same as 0.

Returns

The INKEY() value of the key pressed.

Description

FT_SINKEY() is similar to the function provided by Nantucket in
KEYBOARD.PRG, with one significant difference: you can pass NIL
to INKEY(), which will be treated as a zero (i.e., wait indefinitely
for keypress). Therefore, it is necessary to differentiate between
an explicit NIL and one that is a result of a formal parameter NOT
being received.

FT_SINKEY() differs from the standard INKEY() in that it will
respond to any keys set with SET KEY TO or SetKey().

Examples

SetKey( K_F1, {|n,l,r| Help(n,l,r) } )
nKey := FT_SINKEY(0) // Help() will be called if F1 pressed

Source: SINKEY.PRG

Author: Greg Lief