=========================================================================== BBS: The Abacus * HST/DS * Potterville MI Date: 05-17-93 (12:49) Number: 45 From: CORIDON HENSHAW Refer#: NONE To: ALL Recvd: NO Subj: (4) Assorted text scrolli Conf: (35) Quick Basi --------------------------------------------------------------------------- '>>> Start of page 4. BaseLine = BaseLine + TotalLines GOSUB UpdateScreen ELSE IF BaseLine <> TopBound - TotalLines THEN BaseLine = TopBound - TotalLines GOSUB UpdateScreen ELSE Chirp END IF END IF CASE CHR$(27), CHR$(13) 'ESC, Enter ExitFlag = 0 'Exit CASE ELSE Chirp END SELECT LOOP UNTIL ExitFlag > -1 EXIT SUB UpdateScreen: EVENT OFF COLOR FG, BG StartBuffer = BaseLine FOR X = StartLine TO EndLine LOCATE X, Col PRINT TextBuffer(StartBuffer) + STRING$(80 -_ LEN(TextBuffer(StartBuffer)), " "); StartBuffer = StartBuffer + 1 NEXT StartBuffer = 0 EVENT ON RETURN END SUB FUNCTION TagMenu% (TextBuffer() AS STRING, StartLine, StartCol,_ EndLine, EndCol, FG, BG, BFG, BBG, TaggedList(), MaxEntrys) BaseLine = StartLine BarLine = StartLine ExitFlag = -1 TopBound = UBOUND(TextBuffer) LowerBound = LBOUND(TextBuffer) SCRNWidth = EndCol - StartCol + 1 TotalLines = EndLine - StartLine + 1 REDIM TaggedEntrys(LowerBound TO TopBound) AS INTEGER GOSUB UpdateTag DO DO Ikey$ = INKEY$ LOOP UNTIL Ikey$ <> "" SELECT CASE Ikey$ CASE CHR$(0) + "P"'Down BarLine = BarLine + 1 IF BarLine > TotalLines THEN BaseLine = BaseLine + 1 BarLine = EndLine IF BaseLine > TopBound - TotalLines THEN BaseLine = TopBound - TotalLines Chirp ELSE GOSUB UpdateTag END IF ELSE GOSUB UpdateTag END IF CASE CHR$(0) + "H" 'Up BarLine = BarLine - 1 IF BarLine < StartLine THEN BarLine = StartLine BaseLine = BaseLine - 1 IF BaseLine < StartLine THEN BaseLine = StartLine Chirp ELSE GOSUB UpdateTag END IF ELSE '>>> See Next Page >>> --- GEcho 1.00 * Origin: TCS Concordia - Mail Only - Toronto, Ontario (1:250/820) SEEN-BY: 1/211 11/2 4 13/13 101/1 108/89 109/25 110/69 114/5 123/19 124/1 SEEN-BY: 153/752 154/40 77 157/2 159/100 125 430 575 950 203/23 209/209 SEEN-BY: 261/1023 280/1 390/1 396/1 15 397/2 2230/100 2440/5 3603/20