BBS: Inland Empire Archive Date: 06-14-93 (01:24) Number: 329 From: JIM LITTLE Refer#: NONE To: ERIC LOW Recvd: NO Subj: (3/4) Input routine Conf: (2) Quik_Bas
'>>> Start of page 3.
IF curletter < topletter THEN
topletter = topletter - 1
Printline topletter, text, left, right
END IF
END IF
CASE kRightArrow
IF curletter < LEN(text) + 1 THEN
curletter = curletter + 1
IF curletter > topletter + right - left THEN
topletter = topletter + 1
Printline topletter, text, left, right
END IF
END IF
CASE kPageUp
flag = cPageUp
finished = True
CASE kPageDown
flag = cPageDown
finished = True
CASE kUpArrow
flag = cUpArrow
finished = True
CASE kDownArrow
flag = cDownArrow
finished = True
CASE kEscape
flag = cEscape
finished = True
CASE IS >= 32
IF keystroke <= 127 AND NOT notinsert AND LEN(text) + 1 <=_
length THEN
'valid character, with insert on
text = LEFT$(text, curletter - 1) + CHR$(keystroke) +_
RIGHT$(text, LEN(text) - curletter + 1)
curletter = curletter + 1
IF curletter > topletter + right - left + 1 THEN
topletter = topletter + 1
END IF
Printline topletter, text, left, right
END IF
IF keystroke <= 127 AND notinsert AND (curletter <_
LEN(text) + 1 OR LEN(text) + 1 <= length) THEN
'valid character, with insert off
IF curletter = LEN(text) + 1 THEN
text = text + CHR$(keystroke)
ELSE
MID$(text, curletter, 1) = CHR$(keystroke)
END IF
curletter = curletter + 1
IF curletter > topletter + right - left THEN
topletter = topletter + 1
Printline topletter, text, left, right
ELSE
PRINT CHR$(keystroke);
END IF
END IF
CASE kTab
IF length <> LEN(text) THEN
IF LEN(text) + 3 <= length THEN
tabsp = 3
ELSE
tabsp = length - LEN(text)
END IF
text = LEFT$(text, curletter - 1) + STRING$(tabsp, 32)_
+ RIGHT$(text, LEN(text) - curletter + 1)
curletter = curletter + tabsp
IF curletter > topletter + right - left THEN
topletter = topletter + tabsp
END IF
Printline topletter, text, left, right
END IF
CASE kReturn
flag = cOk
finished = True
END SELECT
LOOP UNTIL finished
Printline 1, text, left, right
END SUB
'>>> Continued on page 4
---
* Origin: The Radix Point: Astoria, OR (1:105/330.9)

Books at Amazon:
Back to BASIC: The History, Corruption, and Future of the Language
Hackers: Heroes of the Computer Revolution (including Tiny BASIC)
Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution
The Advent of the Algorithm: The Idea that Rules the World
Moths in the Machine: The Power and Perils of Programming
Mastering Visual Basic .NET