UNIT GRAFIK; (* ******************************************************************** *) (* K L A S S E : CGrafik *) (* -------------------------------------------------------------------- *) (* Version : 1.0 *) (* *) (* Autor : S. Spolwig, OSZ Handel I, 10997 Berlin *) (* *) (* Dateiname : grafik.pas *) (* *) (* Aufgabe : Die Unit Grafik stellt einige Objekte fuer einen ASCII-*) (* Bildschirm zur Verfuegung. *) (* *) (* XPos und YPos sind der Bezugspunkt jeweils links (oben)*) (* *) (* Compiler : MSDOS/TURBO Pascal V. 7.0 *) (* *) (* Aenderung : V. 0.91 23-FEB-98 falsche Groessen berichtigt *) (* 0.92 13-MAR-98 Loeschen, FarbeSetzen, *) (* Flaeche ist Oberklasse: *) (* neue Init, Attribute Farbe, *) (* Zeichenfarbe *) (* CPushButton,CFrame erbt CButton *) (* 1.0 24-MAY-98 Farben wechselten bei erneutem *) (* Aufrufen; jetzt ok *) (* ******************************************************************** *) INTERFACE (* ========================== Export ================================== *) USES BILDSCHIRM; type CPosition = object XPos, YPos : integer; constructor Init (eineXPos, eineYPos : integer); end; CLinie = object (CPosition) Laenge : integer; Farbe : TFarben; constructor Init (eineXpos, eineYpos, eineLaenge: integer ); procedure Zeigen; virtual; procedure FarbeSetzen (eineFarbe : TFarben ); virtual; procedure Loeschen; virtual; end; CStrich = object (CPosition) Hoehe : integer; Farbe : TFarben; constructor Init (eineXpos, eineYpos, eineHoehe : integer); procedure Zeigen; virtual; procedure FarbeSetzen ( eineFarbe : TFarben ); virtual; procedure Loeschen; virtual; end; CRechteck = object (CLinie) Hoehe : integer; constructor Init (eineXpos, eineYpos, eineLaenge, eineHoehe: integer); procedure Zeigen; virtual; procedure Loeschen; virtual; end; CFlaeche = object (CRechteck) Zeichen : char; (* um ein Muster draufzusetzen *) Zeichenfarbe : TFarben; constructor Init (eineXPos, eineYPos, eineLaenge, eineHoehe : integer); procedure Zeigen; virtual; procedure ZeichenSetzen (einZeichen : char); virtual; procedure ZeichenFarbeSetzen ( eineFarbe : TFarben ); virtual; procedure Loeschen; virtual; end; CButton = object (CFlaeche) constructor Init (eineXPos, eineYPos, eineLaenge, eineHoehe:integer); procedure Zeigen; virtual; procedure Loeschen; virtual; end; CPushButton = object (CButton) constructor Init (eineXPos, eineYPos, eineLaenge, eineHoehe : integer); procedure Zeigen; virtual; end; CFrame = object (CButton) constructor Init(eineXpos, eineYpos, eineLaenge, eineHoehe : integer); procedure Zeigen; virtual; end; (* -------------------- B e s c h r e i b u n g ------------------------- Oberklasse : s.o. Bezugsklassen : BILDSCHIRM benutze Module: - Methoden (FUER ALLE KLASSEN !!) -------- Init Auftrag: Objekt mit den Werten fuer Position, Laenge, Hoehe versehen vorher : - nachher: Objekte haben Positionwerte, Farbe ist SCHWARZ Zeigen Auftrag: Objekt auf dem Bildschirm darstellen vorher : ist init. nachher: - FarbeSetzen ( eineFarbe : TFarben ); virtual; Auftrag: jeweilige Figur auf eineFarbe einstellen. Frames und Buttons sind nur schwarz/weiss vorher : ist init. nachher: Objekt hat eineFarbe Loeschen Auftrag: jeweiliges Objekt vom Bildschirm loeschen vorher : - nachher: Objekt ist geloescht (FUER FLAECHE und UNTERKLASSEN ) ZeichenSetzen (einZeichen : char) - fr Flaeche und Unterklassen Auftrag: der Flaeche kann ein Muster gegeben werden vorher : - nachher: Flaeche hat Zeichen als Muster ZeichenFarbeSetzen ( eineFarbe : TFarben ) Auftrag: Das Muster-Zeichen einfaerben vorher : - nachher: Zeichen hat eineFarbe ------------------------------------------------------- Linie waagerechte Linie ab XPos, YPos nach rechts Strich waagerechte Strich ab XPos, YPos nach unten Rechteck ab XPos, YPos Flaeche mit beliebigen Zeichen gefuellt ab links oben Button schreibt einen rechteckigen Knopf ab XPos,YPos. PushButton schreibt einen rechteckigen Knopf ab XPos,YPos. Frame schreibt einen Reliefrahmen ab XPos,YPos --------------------------------------------------------------------- *)
Zurück zur Startseite