home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / spezial / 22 / buffer / bufdemo.pas next >
Encoding:
Pascal/Delphi Source File  |  1991-01-04  |  2.0 KB  |  61 lines

  1. (* ----------------------------------------------------- *)
  2. (*                       BUFDEMO.PAS                     *)
  3. (*                                                       *)
  4. (*            (c) 1991 by R.Reichert & toolbox           *)
  5. (* ----------------------------------------------------- *)
  6. PROGRAM BufferDemo;
  7.  
  8. USES Crt, UBuffer, DiskBuf;
  9.  
  10. VAR
  11.   Buf : BufferPtr;
  12.   i,j : INTEGER;
  13.   ch  : CHAR;
  14.  
  15. BEGIN
  16.   TextAttr := 7;  ClrScr;
  17.   Buf := New (BufferPtr, Init (80, 2000, 0, 0));
  18.   IF (Buf<>NIL) THEN
  19.     WITH Bufferptr (Buf)^ DO BEGIN
  20.       SetWriteColor (White, Black);
  21.       FOR i := 1 TO 10 DO
  22.         WriteStr (' toolbox präsentiert: OOP-Demo'+
  23.                   ' in weiss und schwarz');
  24.       SetWriteColor (LightGray, Black);
  25.       FOR i := 1 TO 10 DO
  26.         WriteStr (' toolbox präsentiert: OOP-Demo'+
  27.                   ' in hellgrau und schwarz');
  28.       ChangeColor (1,1, Columns, 1,
  29.                    White+Blink, LightGray);
  30.       ChangeColor (1,11, Columns, 11,
  31.                    White+Blink, LightGray);
  32.       DelLines (9, 1);
  33.       InsLines (10, 4);
  34.       FOR i := 1 TO Lines DO BEGIN
  35.         { ACHTUNG: Wenn ausgelagert wurde, funktioniert
  36.           untenstehendes nicht, dann durch
  37.             "Write (Convert2Str (i));"
  38.           ersetzen                                        }
  39.         FOR j := 1 TO GetLineLength (i) DO BEGIN
  40.           TextAttr := Hi (TextBuf^[i]^[j]);
  41.           Write (CHAR (Lo (TextBuf^[i]^[j])))
  42.         END;  { ^^^^^ Direktzugriff nur,
  43.                       damit Demo farbig läuft             }
  44.         Writeln;
  45.         Delay (100);
  46.       END;
  47.       Readln;
  48.       Done;
  49.     END
  50.   ELSE BEGIN
  51.     Writeln;
  52.     Writeln ('Fehler in BufferObj.Init !');
  53.     TextAttr := 15;
  54.     Write   ('Programm abgebrochen.');
  55.     TextAttr := 7;
  56.     Writeln;
  57.   END;
  58. END.
  59. (* ----------------------------------------------------- *)
  60. (*                Ende von BUFDEMO.PAS                   *)
  61. (* ----------------------------------------------------- *)