home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 9 / 09.iso / l / l044 / 2.ddi / INTRFACE.ZIP / TEXTVIEW.INT < prev    next >
Encoding:
Text File  |  1990-10-23  |  1.6 KB  |  56 lines

  1.  
  2. {*******************************************************}
  3. {                                                       }
  4. {       Turbo Pascal Version 6.0                        }
  5. {       Turbo Vision Unit                               }
  6. {                                                       }
  7. {       Copyright (c) 1990 Borland International        }
  8. {                                                       }
  9. {*******************************************************}
  10.  
  11. unit TextView;
  12.  
  13. {$F+,O+,S-}
  14.  
  15. interface
  16.  
  17. uses Objects, Drivers, Views, Dos;
  18.  
  19. type
  20.  
  21.   { TTextDevice }
  22.  
  23.   PTextDevice = ^TTextDevice;
  24.   TTextDevice = object(TScroller)
  25.     Dummy: Word;
  26.     function StrRead(var S: TextBuf): Byte; virtual;
  27.     procedure StrWrite(var S: TextBuf; Count: Byte); virtual;
  28.   end;
  29.  
  30.   { TTerminal }
  31.  
  32.   PTerminalBuffer = ^TTerminalBuffer;
  33.   TTerminalBuffer = array[0..65534] of Char;
  34.  
  35.   PTerminal = ^TTerminal;
  36.   TTerminal = object(TTextDevice)
  37.     BufSize: Word;
  38.     Buffer: PTerminalBuffer;
  39.     QueFront, QueBack: Word;
  40.     constructor Init(var Bounds:TRect; AHScrollBar, AVScrollBar: PScrollBar;
  41.       ABufSize: Word);
  42.     destructor Done; virtual;
  43.     procedure BufDec(var Val: Word);
  44.     procedure BufInc(var Val: Word);
  45.     function CalcWidth: Integer;
  46.     function CanInsert(Amount: Word): Boolean;
  47.     procedure Draw; virtual;
  48.     function NextLine(Pos:Word): Word;
  49.     function PrevLines(Pos:Word; Lines: Word): Word;
  50.     function StrRead(var S: TextBuf): Byte; virtual;
  51.     procedure StrWrite(var S: TextBuf; Count: Byte); virtual;
  52.     function QueEmpty: Boolean;
  53.   end;
  54.  
  55. procedure AssignDevice(var T: Text; Screen: PTextDevice);
  56.