DrawVisLocal-Prozedur (Unit GVisible)

Deklaration:


procedure DrawVisLocal(Vis: PVis; Origin: TPoint;
Self: PGView; Local: pointer; Frame: Word);


Funktion:


Diese Prozedur zeichnet das View-Objekt Self auf den Bildschirm. Dazu wird ein geeignetes Verfahren gewählt.

Im Gegensatz zu DrawVis ruft diese Prozedur nicht die Draw-Methode auf, sondern eine lokale, far deklarierte Funktion auf, deren Adresse durch Local gegeben ist.

Der Parameter Frame ist ein Small-Zeiger auf den Stackrahmen der Local direkt übergeordneten Prozedur. Verwenden Sie die Makros CurBP oder PrevBP für diesen formalen Parameter.

Beispiel:



procedure ScrollView(Self: PGView; Delta: TPoint; SubRect: PRect);
var
...

procedure DoCopy; far;
Begin
CritUnionDelta(Delta);
CopyScreen(DrawOrigin.X, DrawOrigin.Y,
Self^.Size.X + DrawOrigin.X, Self^.Size.Y + DrawOrigin.Y,
Delta.X + DrawOrigin.X, Delta.Y + DrawOrigin.Y)
End;

Begin
{ ... }
DrawVisLocal(ivis, P, Self, @DoCopy, CurBP); { copy region }
{ ... }
End;


Hinweis:


Die Prozedur darf nur auf Nicht-Gruppen angewendet werden.

Sie werden diese Funktion nicht direkt benötigen.

Siehe auch:


GVisible-Unit