dos_compilers/Borland Turbo Pascal v6/DOC/TEXTVIEW.INT
2024-07-02 07:11:05 -07:00

56 lines
1.6 KiB
Plaintext

{*******************************************************}
{ }
{ Turbo Pascal Version 6.0 }
{ Turbo Vision Unit }
{ }
{ Copyright (c) 1990 Borland International }
{ }
{*******************************************************}
unit TextView;
{$F+,O+,S-}
interface
uses Objects, Drivers, Views, Dos;
type
{ TTextDevice }
PTextDevice = ^TTextDevice;
TTextDevice = object(TScroller)
Dummy: Word;
function StrRead(var S: TextBuf): Byte; virtual;
procedure StrWrite(var S: TextBuf; Count: Byte); virtual;
end;
{ TTerminal }
PTerminalBuffer = ^TTerminalBuffer;
TTerminalBuffer = array[0..65534] of Char;
PTerminal = ^TTerminal;
TTerminal = object(TTextDevice)
BufSize: Word;
Buffer: PTerminalBuffer;
QueFront, QueBack: Word;
constructor Init(var Bounds:TRect; AHScrollBar, AVScrollBar: PScrollBar;
ABufSize: Word);
destructor Done; virtual;
procedure BufDec(var Val: Word);
procedure BufInc(var Val: Word);
function CalcWidth: Integer;
function CanInsert(Amount: Word): Boolean;
procedure Draw; virtual;
function NextLine(Pos:Word): Word;
function PrevLines(Pos:Word; Lines: Word): Word;
function StrRead(var S: TextBuf): Byte; virtual;
procedure StrWrite(var S: TextBuf; Count: Byte); virtual;
function QueEmpty: Boolean;
end;
procedure AssignDevice(var T: Text; Screen: PTextDevice);