___________________________
9. Werk-/Praktikumsarbeit
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


Die abstrakte, objektorientierte Unit:



unit uBefehle;

interface

uses comport,  graphics, classes;

type
  tFarbe = (fMono, fRot, fGelb, fGruen);
  tTyp   = (DPDis100, DPDis100b, DPDot, DPDotb);
  tBaudrate = (br9600, br19200, br38400);

  tHell = record
    rot : byte;  //=Mono
    gruen : byte;
  end;

  tDPDisText = record
    Zahlen : string;
    Dots   : array [1..256] of Boolean; //Maximal 256 Zeichen!
  end;

  tModul = class
    private
      sAdresse    : String;
      sChangeableAddress : Boolean;
      sTyp        : tTyp;
      sFarbe      : tFarbe;
      sText       : tDPDisText; //DPDis100
      sGrafik     : array [2..14] of tBitmap; //DPDot
      lBildIndex  : Integer; //DPDot
      sHelligkeit : tHell;
      sUpdating   : Boolean;
      sLastAnswer  : String;
      sWaitforAnswer : Boolean;

      procedure setAdresse(Adr : String); //Bitte vorsichtig sein!
      procedure setFarbe(farbe : tFarbe); //Es wird *nicht* überprüft, ob die 
                                          //Farbe korrekt ist!
      procedure setText(s : tDPDisText);
      procedure setGrafik(i : integer; gr : tBitmap);
      function  getGrafik(i : integer) : tBitmap;
      procedure setHelligkeit(b : tHell);
      function  getHelligkeit : tHell;
      procedure setBaudrate(br : tBaudrate);

      procedure Refresh;