                                  - TOC-   1 -





 TDragRect.Draw - Methode .............................................      1
 TDragRect.HideDrawClipped ............................................      1
 TDragRect.Init - Methode .............................................      1
 TDragRect - Objekt  (Unit GVViews) ...................................      1
 TFrame - Objekt (Unit GVViews) .......................................      1
 TFrame.TitleSize - Feld ..............................................      1
 TFrame.CalcFirstPass - Methode .......................................      2
 TFrame.Init - Konstruktor ............................................      2
 TFrame.Load - Konstruktor ............................................      2
 TFrame.Store - Methode ...............................................      2
 TFrame.ChMCursor - Methode ...........................................      3
 TFrame.Draw - Methode ................................................      3
 TFrame.DrawZoomfield - Methode .......................................      3
 TFrame.HandleEvent - Methode .........................................      4
 TFrame.SetState - Methode ............................................      4
 TBackground - Objekt (Unit GVViews) ..................................      4
 TFrame.Valid - Methode ...............................................      4
 TBackground.Draw - Methode ...........................................      5
 TBackground.Init - Konstruktor .......................................      5
 TBackground.Load - Methode ...........................................      5
 TBackground.Store - Methode ..........................................      5
 TScrollBar - Objekt (Unit GVViews) ...................................      5
 TScrollBar.ButtonSize - Feld .........................................      6
 TScrollBar.Flags - Feld ..............................................      6
 TScrollBar.Init - Konstruktor ........................................      6
 TScrollBar.Draw - Methode ............................................      7
 TScrollBar.Load - Konstruktor ........................................      7
 TScrollBar.DrawDnButton - Methode ....................................      8
 TScrollBar.DrawIndicator - Methode ...................................      8
 TScrollBar.DrawUpButton - Methode ....................................      8
 TScrollBAr.HandleEvent - Methode .....................................      8
 TScrollBar.RestoreIndicator - Methode ................................      9
 TScrollBar.ScrollDraw - Methode ......................................      9
 TScrollBar.SetState - Methode ........................................      9
 TScrollBar.Store - Methode ...........................................     10
 TScroller - Objekt (Unit GVViews) ....................................     10
 TScroller.Init - Konstruktor .........................................     11
 TScroller.Load - Konstruktor .........................................     11
 TScroller.ScrollLock .................................................     11
 TScroller.TextSize - Feld ............................................     11
 TScroller.ChangeBounds - Methode .....................................     12
 TScroller.ScrollDraw - Methode .......................................     12
 TScroller.ScrollTo - Methode .........................................     12
 TScroller.SetLimit - Methode .........................................     13
 TScroller.Store - Methode ............................................     13
 TListViewer - Objekt (Unit GVViews) ..................................     13
 TListViewer.ScrollBar - Feld .........................................     14
 TListViewer.Flags - Feld .............................................     15
 TListViewer.Init - Konstruktor .......................................     15
 TListViewer.Load - Konstruktor .......................................     15
 TListViewer.Draw - Methode ...........................................     16
 TListViewer.DrawItem - Methode .......................................     16
 TListViewer.DrawItemText - Methode ...................................     16
 TListViewer.GetItemRect - Methode ....................................     16



                                  - TOC-   1 -
                                  - TOC-   2 -





 TListViewer.GetItemSubrect - Methode .................................     17
 TListViewer.GetPageSize - Methode ....................................     17
 TListViewer.SetState - Methode .......................................     17
 TListViewer.Store - Methode ..........................................     18
 TGGroup - Objekt (Unit GVViews) ......................................     18
 TGGroup.Current - Feld ...............................................     19
 TGGroup.Last - Feld ..................................................     19
 TGGroup.StandardFont - Feld ..........................................     19
 TGGroup.EndState - Feld ..............................................     20
 TGGroup.Init - Konstruktor ...........................................     20
 TGGroup.Load - Konstruktor ...........................................     20
 TGGroup.ChMCursor - Methode ..........................................     21
 TGGroup.Delete - Methode .............................................     21
 TGGroup.DrawClipped - Methode ........................................     21
 TGGroup.DrawVisible - Methode ........................................     21
 TGGroup.Draw - Methode ...............................................     22
 TGGroup.ExecView - Methode ...........................................     22
 TGGroup.Execute - Methode ............................................     23
 TGGroup.Insert - Methode .............................................     23
 TGGroup.InsertBefore - Methode .......................................     24
 TGGroup.Lock - Methode ...............................................     24
 TGGroup.Redraw - Methode .............................................     24
 TGGroup.Store - Methode ..............................................     25
 TWindow - Objekt (Unit GVViews) ......................................     25
 TGGroup.UnLock - Methode .............................................     25
 TGGroup.Valid - Methode ..............................................     25
 TWindow.Flags - Feld .................................................     26
 TWindow.Init - Konstruktor ...........................................     27
 TWindow.Palette - Feld ...............................................     27
 TWindow.Title - Feld .................................................     27
 TWindow.Close - Methode ..............................................     28
 TWindow.GetClientRect - Methode ......................................     28
 TWindow.Load - Konstruktor ...........................................     28
 TWindow.GetPalette - Methode .........................................     29
 TWindow.SetState - Methode ...........................................     29
 TWindow.SizeLimits - Methode .........................................     29
 TWindow.StandardScrollBar - Methode ..................................     30
 TWindow.Store - Methode ..............................................     30



















                                  - TOC-   2 -
                                    -    1 -






TDragRect - Objekt  (Unit GVViews)
 

Ein Objekt dieses Typs wird von TGView.CreateDragView
erzeugt und mittels Locate ber den Bildschirm bewegt. Es ist
transparent und stellt sich als dnnes XOR-Rechteck dar, deshalb ist
es auch leicht-entfernbar.

 Methoden:

Init
Draw
HideDrawClipped

TDragRect.Init - Methode
 
 Deklaration:
constructor Init(var Bounds: TRect);

Initialisiert das Objekt durch TGView.Init. Es entfernt
das Flag ofBuffer aus dem Options-Feld und setzt das Flag
sfTransparent im State-Feld.

TDragRect.Draw - Methode
 
 Deklaration:
procedure Draw; virtual;

Zeichnet das Objekt als ein dnnes XOR-Rechteck.

TDragRect.HideDrawClipped
 
 Deklaration:
procedure HideDrawClipped(Clip: PVRect; VisOwner: PGView); virtual;

Diese Methode ruft DrawClipped auf, um das Objekt
erneut mittels Draw zu zeichnen. Da es sich mit
XOR-Operationen zeichnet, gengt dies, um es vom Bildschirm zu entfernen.

TFrame - Objekt (Unit GVViews)
 

Dieses Objekt versieht Bildschirmfenster mit einem Rahmen. Sie werden das
Objekt TFrame wahrscheinlich nicht direkt benutzen, da TWindow-Objekte
automatisch mit einem Rahmen versehen werden.

 Felder:
   TitleSize

 Methoden:
   Init
   Load
   Store
   CalcFirstPass
   ChMCursor
   Draw
   DrawZoomField
   HandleEvent
   SetState
   Valid



                  gvviews2, Page #   1   Date 22-7-1996 Monday
                                    -    2 -






TFrame.TitleSize - Feld
 

 Deklaration:
   TitleSize: Integer;

 Funktion:
TitleSize gibt die Hhe der Titlezeile eines Fensters in Pixel an. Die Variable
wird in Init auf 20 gesetzt.

TFrame.Init - Konstruktor
 

 Deklaration:
   contructor Init;

 Funktion:
Erzeugt ein TFrame-Objekt in der in Bounds angegebenen Gre. In Options
wird das Flag ofPostProcess gesetzt. In EventMask werden alle Ereignistypen,
auf die das Objekt reagieren soll verzeichnet. In GrowMode werden die Flags
gfGrowHiX und gfGrowHiY gesetzt.

 siehe auch:
   Load

TFrame.Load - Konstruktor
 

 Deklaration:
   constructor Load(var S: TStream);

 Funktion:
Ldt ein TFrame-Objekt aus dem Stream S. Auerdem wird das Feld
TitleSize aus S gelesen.

  siehe auch:
    Store

TFrame.Store - Methode
 

 Deklaration:
   procedure Store (var S: TStream);

 Funktion:
Schreibt ein TFrame-Objekt in den Stream S. Auerdem wird die Variable
TitleSize in S geschrieben.

 siehe auch:
   Load

TFrame.CalcFirstPass - Methode
 



                  gvviews2, Page #   2   Date 22-7-1996 Monday
                                    -    3 -





 Deklaration:
procedure CalcFirstPass; virtual;

 Funktion:

Diese Methode wird von ChangeBounds aufgerufen. Sie hat die Aufgabe,
das Status-Flag sfFirstPass anzupassen.

Diese Implementation setzt das Flag sfFirstPass genau dann, wenn
auch das Flags ofFirstPass gesetzt ist.

Hintergrund dieses Verhaltens sind die Darstellungsverfahren
der Funktion TGGroup.DrawClipped. Da ein
TFrame-Objekt sich sehr effizient zeichnen lt und durch darberliegende
Views sehr stark zerstckelt wird, bringt ein FirstPass-Draw
Geschwindigkeitsvorteile.

TFrame.ChMCursor - Methode
 

 Deklaration:
   procedure ChMCursor; virtual;

 Funktion:
Die Methode prft, ob sich der Mauszeiger an einer Ecke bzw. Kante des Objektes
befindet und trgt ggf. in NewNum die entsprechende Mauszeigernummer
ein.

 siehe auch:
   TGView.ChMCursor
   mcXXXXXXX

TFrame.Draw - Methode
 

 Deklaration:
   procedure Draw; virtual;

 Funktion:
Draw gibt das Objekt auf dem Bildschirm aus. Sein Aussehen hngt stark von
den Flags ab, die in dem TWindow-Objekt, zu dem dieses Objekt gehrt,
gesetzt sind.
Auerdem ruft diese Methode DrawZoomfield(false) auf,
um den Zoomschalter darzustellen.

TFrame.DrawZoomfield - Methode
 

 Deklaration:
   procedure DrawZoomField (Down: Boolean); virtual;

 Funktion:
Stellt den Zoomschalter der zu dem TFrame-Objekt gehrt in dem in Down
gegebenen Status dar.
Ist Down true, ist der Schalter gedrckt.

 siehe auch:



                  gvviews2, Page #   3   Date 22-7-1996 Monday
                                    -    4 -





   Draw

TFrame.HandleEvent - Methode
 

 Deklaration:
   procedure HandleEvent (var Event: TEvent); virtual;

 Funktion:
Ruft TGView.HandleEvent auf, ist aber selbst zustndig fr Mausereignisse:
Klickt der Benutzer das Schliesymbol an, generiert TFrame ein
cmClose-Ereignis. Wird der Zoomschalter gedrckt oder die Titelzeile
zweimal angeklickt, generiert TFrame ein cmZoom-Ereignis.

Das Fenster kann bewegt (wenn die Titelzeile mit der Maus gezogen
wird) und in seiner Gre gendert werden (wenn der Benutzer eine der Ecken
oder Kanten mit der Maus zieht).

 Siehe auch:
  TGView.HandleEvent
  TFrame

TFrame.SetState - Methode
 

 Deklaration:
   procedure SetState (AState: Word; Enable: Boolean); virtual;

 Funktion:
Ruft TGView.SetState(AState, Enabled) auf. Schliet der neue Status die
Eigenschafte sfActive ein, wird DrawView aufgerufen, das Objekt also neu
dargestellt.

 Siehe auch:
   TGView.SetState
   TFrame

TFrame.Valid - Methode
 

 Deklaration:
   function Valid (Command: Word): Boolean; virtual;

 Funktion:
Ruft lediglich TGView.Valid(Command) auf.

TBackground - Objekt (Unit GVViews)
 

TBackGround ist ein View-Objekt, das lediglich ein Rechteck darstellt.
blicherweise gehrt es zu einer Instanz von TDesktop.

 Methoden:
   Init



                  gvviews2, Page #   4   Date 22-7-1996 Monday
                                    -    5 -





   Load
   Store
   Draw

TBackground.Init - Konstruktor
 

 Deklaration:
   constructor Init(var Bounds: TRect);

 Funktion::
Initialisiert ber einen Aufruf von TGView.Init(Bounds) ein
TBackGround-Objekt fr den in Bounds angegebenen Bereich. Im Feld GrowMode
werden die Bits gfGrowHiX und gfGrowHiY gesetzt.

 siehe auch:
   TGView.Init
   TBackground

TBackground.Load - Methode
 

 Deklaration:
   constructor Load(var S: TStream);

 Funktion:
Ruft nur TGView.Load(S) auf.

TBackground.Store - Methode
 

 Deklaration:
   procedure Store(var S: TStream);

 Funktion:
Ruft nur TGView.Store(S) auf.

TBackground.Draw - Methode
 

 Deklaration:
   procedure Draw; virtual;

 Funktion:
Gibt ein TBackground-Objekt auf dem Bildschirm aus. Normalerweise
wird ein Rechteck, das die gesamte Gre des Objektes ausfllt dargestellt.
Als Darstellungsfarbe wird die Farbe, auf die der erste Eintrag der Palette
des GOwner verweist benutzt.

TScrollBar - Objekt (Unit GVViews)
 

TScrollBar stellt einen Rollbalken in GV bereit. Das Objekt ist weitgehend
mit seinem TV Pendant kompatibel.



                  gvviews2, Page #   5   Date 22-7-1996 Monday
                                    -    6 -






 Felder:
   ButtonSize
   Flags
   Value          (siehe Pascal-Dokumentation)
   Min            (siehe Pascal-Dokumentation)
   Max            (siehe Pascal-Dokumentation)
   PgStep         (siehe Pascal-Dokumentation)
   ArStep         (siehe Pascal-Dokumentation)
   Init
   Load
   Draw
   DrawUpButton
   DrawDnButton
   DrawIndicator
   GetPalette     (siehe Pascal-Dokumentation)
   GetPosition    (siehe Pascal-Dokumentation)
   HandleEvent
   RestoreIndicator
   ScrollDraw
   ScrollStep     (siehe Pascal-Dokumentation)
   SetParams      (siehe Pascal-Dokumentation)
   SetRange       (siehe Pascal-Dokumentation)
   SetState
   SetStep        (siehe Pascal-Dokumentation)
   SetValue       (siehe Pascal-Dokumentation)
   Store

TScrollBar.ButtonSize - Feld
 

 Deklaration:
   ButtonSize: Byte;

 Funktion:
In dieser Variable wird die Ausdehnung eines ScrollBar-Schalters gespeichert.
Die Variable wird von Init auf 18 gesetzt.

 siehe auch:
   Init

TScrollBar.Flags - Feld
 

 Deklaration:
   Flags: Byte;

 Funktion:
Speichert die Flags, die bei einem Aufruf von TWindow.StandardScrollBar als
Parameter bergeben werden.

 siehe auch:
   sbXXXXXXX




                  gvviews2, Page #   6   Date 22-7-1996 Monday
                                    -    7 -





TScrollBar.Init - Konstruktor
 

 Deklaration:
   constructor Init(var Bounds: TRect);

 Funktion:
Initialisiert ber TGView.Init eine Bildlaufleiste in der in Bounds
angegebenen Gre.

Den Feldern Value, Min, Max wird 0, den Feldern PgStep und ArStep wird 1
zugewiesen.

Ergibt Bounds fr X den Wert 18, dann erhalten Sie eine vertikale
Bildlaufleiste, andernfalls einen horizontale.

Im Feld GrowMode einer vertikalen Bildlaufleiste sind die Bits gfGrowLoX,
gfGrowHiX und gfGrowHiY, in dem einer horizontalen Bildlaufleiste die Bits
gfGrowLoY, gfGrowHiX und gfGrowHiY gesetzt.

 Siehe auch:
   TScrollBar

TScrollBar.Load - Konstruktor
 

 Deklaration:
   constructor Load(var S: TStream);

 Funktion:
Ruft den von TGView geerbten Load-Konstruktor auf, der ein TScrollBar-Objekt
aus dem Stream S liest, und ldt dann selbst die Werte der fnf
Integer-Felder sowie den Wert von Flags.

 Siehe auch:
  Store
  TScrollBar

TScrollBar.Draw - Methode
 

 Deklaration:
   procedure Draw; virtual;

 Funktion:
Stellt den Bildlaufleiste unter Bercksichtigung der Werte in Bounds und
Value auf dem Bildschirm dar.

 Siehe auch:
  Value  (siehe Pascal-Dokumentation)
  ScrollDraw
  TScrollBar
  DrawUpButton
  DrawDnButton



                  gvviews2, Page #   7   Date 22-7-1996 Monday
                                    -    8 -





  DrawIndicator

TScrollBar.DrawUpButton - Methode
 

 Deklaration:
   procedure DrawUpButton (Down: Boolean); virtual;

 Funktion:
Stellt den oberen bzw. linken Schalter der Bildlaufleiste auf dem Bildschirm
dar. Ist Down true, wird der Schalter gedrckt dargestellt.
Diese Methode wird von Draw aufgerufen.

 siehe auch:
   TScrollBar
   DrawDnButton
   DrawIndicator

TScrollBar.DrawDnButton - Methode
 

 Deklaration:
   procedure DrawDnButton (Down: Boolean); virtual;

 Funktion:
Stellt den unteren bzw. rechten Schalter der Bildlaufleiste auf dem Bildschirm
dar. Ist Down true, wird der Schalter gedrckt dargestellt.
Diese Methode wird von Draw aufgerufen.

 siehe auch:
   TScrollBar
   DrawUpButton
   DrawIndicator

TScrollBar.DrawIndicator - Methode
 

 Deklaration:
   procedure DrawIndicator (V: Integer; Down: Boolean); virtual;

 Funktion:
Stellt den Indikator der Bildlaufleiste auf dem Bildschirm dar.
V ein Wert zwischen Min und Max. Der Indikator wird an der Stelle, die diesem
Wert entspricht im Status Down dargestellt.
Diese Methode wird von Draw aufgerufen.

 siehe auch:
   TScrollBar
   DrawUpButton
   DrawDnButton

TScrollBAr.HandleEvent - Methode
 




                  gvviews2, Page #   8   Date 22-7-1996 Monday
                                    -    9 -





 Deklaration:
   procedure HandleEvent (var Event: TEvent); virtual;

 Funktion:
Ruft TGView.HandleEvent auf und benachrichtigt anschlieend die anderen Objekte,
wenn sich Vernderungen im Status der Bildlaufleiste ergeben. Diese Objekte
wiederum mssen alle Aktionen veranlassen, also zum Beispiel einen anderen
Teil des Textes ausgeben. HandleEvent stellt ebenfalls fest, welcher Teil der
Bildlaufleiste mit der Maus angeklickt wurde oder ob ein dazu gleichwertiger
Tastenbefehl vorliegt. Darauf wird das Feld Value unter Bercksichtigung der
Werte in ArStep und PgStep richtiggestellt und die Positionsmarkierung auf
der Bildlaufleiste entsprechend gesetzt.

 Siehe auch:
   TGView.HandleEvent
   TScrollBar

TScrollBar.RestoreIndicator - Methode
 

 Deklaration:
   procedure RestoreIndicator (OldV: Integer); virtual;

 Funktion:
Entfernt die Positionsmarkierung der Bildlaufleiste durch bermalen vom
Bildschirm. Dabei wird angenommen, da sich die Markierung an der Position,
die zum Wert OldV gehrt befand.

 siehe auch:
   DrawIndicator

TScrollBar.ScrollDraw - Methode
 

 Deklaration:
   procedure ScrollDraw; virtual;

 Funktion:
Wann immer der Wert in Value sich ndert, wird diese Methode aufgerufen, die
den Befehl cmScrollBarChanged an das Objekt sendet, zu dem die
Bildlaufleiste gehrt:



Wenn die Positionsmarkierung der Bildlaufleiste mit der Maus gezogen wird,
wird diese Methode nur dann bei jeder nderung von Value aufgerufen, wenn
in Flags das Flag sbDoScrolling gesetzt
ist, ansonsten wird diese Methode erst nach dem Loslassen der Positionsmarkierung
aufgerufen.

 Siehe auch:
   Value,TScrollBar  (siehe Pascal-Dokumentation)
   TScrollBar




                  gvviews2, Page #   9   Date 22-7-1996 Monday
                                    -   10 -





TScrollBar.SetState - Methode
 

 Deklaration:
   procedure SetState (AState: Word; Enable: Boolean); virtual;

 Funktion:
Ruft zunchst TGView.SetState auf. Sollte in AState das
Flag sfDisabled gesetzt sein, so werden die beiden Schalter sowie die
Positionsmarkierung der Bildlaufleiste dem neuen Status angepat.

 siehe auch:
   sfXXXXXXX

TScrollBar.Store - Methode
 

 Deklaration:
   procedure Store (var S: TStream);

 Funktion:
Ruft die von TGView geerbte Store-Methode auf, die das Objekt
in den Stream S schreibt, und sichert dann selbst die Werte der fnf
Integer-Felder sowie das Feld Flags.

 Siehe auch:
   Load
   TScrollBar

TScroller - Objekt (Unit GVViews)
 

Das Objekt TScroller stellt ein Fenster zur Verfgung, das ber einen
Datenbereich bewegt werden kann, und immer einzelne Teile des gesamten
Bereichs darstellt.

Der Wert des Feldes Delta legt fest, welchen Teil des Datenbereichs die
Draw-Methode darstellen kann. Das Fenster kann mittels der
Bildlaufleisten, aber auch mithilfe der Cursor-Tasten ber den Datenbereich
bewegt werden.

Mit TScroller ist selbst noch kein darzustellender Datenbereich verbunden;
es stellt die Grundlage fr die Definition anderer Objekte dar, die mit
speziellen Daten (zum Beispiel Textzeilen) umgehen, bietet aber schon die
dazu notwendigen Funktionen.

 Felder:
   HScrollBar      (siehe Pascal-Dokumentation)
   VScrollBar      (siehe Pascal-Dokumentation)
   Delta           (siehe Pascal-Dokumentation)
   Limit           (siehe Pascal-Dokumentation)
   TextSize
   ScrollLock
   Init



                  gvviews2, Page #  10   Date 22-7-1996 Monday
                                    -   11 -





   Load
   ChangeBounds
   HandleEvent     (siehe Pascal-Dokumentation)
   ScrollDraw
   ScrollTo
   SetLimit
   Store

TScroller.TextSize - Feld
 

 Deklaration:
   TextSize: TPoint;

 Funktion:
Das von TScroller bereitgestellte Fenster wird nicht pixelweise
ber den Datenbereich bewegt. Es wird pro Schritt immer um soviel Pixel
weiterbewegt, wie in dieser Variable verzeichnet sind.
TextSize wird von Init auf (18,8) gesetzt.

TScroller.ScrollLock
 

 Deklaration:
   ScrollLock: Byte;    PRIVAT

 Funktion:
Die Variable dient Hilfszwecken. Sie wird von ScrollDraw
berprft. Verschiedene andere Methoden ndern ScrollLock.

TScroller.Init - Konstruktor
 

 Deklaration:
   constructor Init(var Bounds: TRect; AHScrollBar, AVScrollBar:
       PScrollBar);

 Funktion:
Initialisiert ber TGView.Init(Bounds) ein TScroller-Objekt in der in Bounds
angegebenen Gre versehen mit den bergebenen Bildlaufleisten, sofern die
entsprechenden Argumente nicht nil sind.

In Options wird das Bit ofSelectable und das Feld EventMask wird auf
evBroadcast gesetzt.

TextSize wird auf (18,8) gesetzt.

 Siehe auch:
   TGView.Init
   TScroller

TScroller.Load - Konstruktor
 




                  gvviews2, Page #  11   Date 22-7-1996 Monday
                                    -   12 -





 Deklaration:
   constructor Load(var S: TStream);

 Funktion:
Ruft den von TGView geerbten Load-Konstruktor auf, der ein TScroller-Objekt
aus dem Stream S liest, ldt ber GetPeerViewPtr die Bildlaufleisten und
dann selbst die Werte der Felder Delta, Limit und TextSize.

 Siehe auch:
   Store
   TScroller

TScroller.ChangeBounds - Methode
 

 Deklaration:
   procedure ChangeBounds(var Bounds: TRect); virtual;

 Funktion:
ndert ber einen Aufruf von SetBounds(Bounds) die Gre des Objekts.
ber einen Aufruf von SetLimit werden die Bildlaufleisten
aktualisiert. Mit Hilfe von ScrollLock wird ein Aufruf
von ScrollDraw unterdrckt.

 Siehe auch:
   TScroller

TScroller.ScrollDraw - Methode
 

 Deklaration:
   procedure ScrollDraw; virtual;

 Funktion:
Stellt das Objekt immer dann neu dar, wenn das Feld Value der verbundenen
Bildlaufleiste sich infolge eines Maus- oder Tastaturereignisses ndert.
Solche nderungen werden ber den Vergleich von Delta.X mit
HScrollBar^.Value bzw. Delta.Y mit VScrollBar^.Value ermittelt. Vor der
werden die neu ermittelten Werte in Delta gespeichert.
Zur Neuausgabe wird die Routine ScrollView verwendet.
Die Methode wird bergangen, wenn ScrollLock ungleich 0
ist.

 Siehe auch:
   TScroller

TScroller.ScrollTo - Methode
 

 Deklaration:
   procedure ScrollTo(X, Y: Integer);

 Funktion:
Verschiebt die Darstellung auf die Position (X, Y) des Datenbereichs. Dazu



                  gvviews2, Page #  12   Date 22-7-1996 Monday
                                    -   13 -





wird VScrollBar^.SetValue und HScrollBar^.SetValue aufgerufen und
schlielich auch ScrollDraw, um das Objekt neu darzustellen.

 Siehe auch:
   TScroller

TScroller.SetLimit - Methode
 

 Deklaration:
   procedure SetLimit(X, Y: Integer);

 Funktion:
Speichert die bergebenen Werte X und Y in Limit und ruft dann die
SetParams-Methoden der verbundenen Bildlaufleisten auf, die das Feld Max
entsprechend der neuen Gre des Objekts ndert.

Falls notwendig, wird das Objekt ber ScrollDraw neu
dargestellt.

 Siehe auch:
   TScroller

TScroller.Store - Methode
 

 Deklaration:
   procedure Store(var S: TStream);

 Funktion:
Ruft die von TGView geerbte Store-Methode auf, die ein TScroller-Objekt
in den Stream S schreibt, schreibt ber PutPeerViewPtr die Bildlaufleisten und
dann selbst die Werte der Felder Delta, Limit und TextSize.

 Siehe auch:
   Load
   TScroller

TListViewer - Objekt (Unit GVViews)
 

TListViewer ist der ideale Vorfahre solcher Objekte, deren Aufgabe darin
besteht, den Inhalt von Datenlisten auszugeben, zum Beispiel TListBox. Die
Felder und Methoden, die TListViewer definiert, stellen bereits die
grundlegende Funktionalitt solcher Objekte bereit:

 * Es bietet ein View-Objekt, das verkettete
   Listen von Dateneintrgen darstellen kann.

 * Es steuert die Darstellung ber eine
   Bildlaufleiste.

 * Es bietet die Mglichkeit, ein Fenster
   in zwei Richtungen ber einen wesentlichen



                  gvviews2, Page #  13   Date 22-7-1996 Monday
                                    -   14 -





   greren Datenbereich zu bewegen.

 * Es kann zusammen mit der Bildlaufleiste in
   einen Stream gespeichert und daraus wieder
   gelesen werden.

 * Eintrge der Liste knnen mittels der Maus
   oder ber die Tastatur selektiert werden.

 * Es werden verschieden groe Eintrge untersttzt.

 * Die Objekte knnen Text und/oder grafische
   Elemente enthalten.

TListViewer definiert eine abstrakte Methode GetText, die dazu gedacht ist,
da das Objekt die darzustellenden Daten anfordern kann. Auerdem wird
die Methode DrawItemText definiert, die einen bestimmten Eintrag
darstellen kann. Sie mssen eine dieser Methoden berschreiben, damit die
Daten in der von Ihnen gewnschten Form ausgegeben werden knnen.

Das Objekt speichert selbst keine Liste, sondern ist dafr zustndig,
vorhandene Listen (seien es nun Arrays, verkettete Liste oder hnliche
Datenstrukturen) darzustellen. Seine Nachfahren (TListBox zum Beispiel)
jedoch verwalten Kollektionen mit den Funktionen, die das Objekt TListViewer
bereitstellt.

 Felder:
   ScrollBar
   TopItem         (siehe Pascal-Dokumentation)
   Focused         (siehe Pascal-Dokumentation)
   Range           (siehe Pascal-Dokumentation)
   Flags

 Methoden:
   Init
   Load
   ChangeBounds    (siehe Pascal-Dokumentation)
   Draw
   DrawItem
   DrawItemText
   FocusItem       (siehe Pascal-Dokumentation)
   GetItemRect
   GetItemSubRect
   GetPageSize
   GetText         (siehe Pascal-Dokumentation)
   IsSelected      (siehe Pascal-Dokumentation)
   HandleEvent     (siehe Pascal-Dokumentation)
   SelectItem      (siehe Pascal-Dokumentation)
   SetRange        (siehe Pascal-Dokumentation)
   SetState
   Store

TListViewer.ScrollBar - Feld
 



                  gvviews2, Page #  14   Date 22-7-1996 Monday
                                    -   15 -






 Deklaration:
   ScrollBar: PScrollBar;     NUR LESEN

 Funktion:
Zeigt auf die mit diesem Objekt verbundene Bildlaufleiste oder
enthlt den Wert nil, wenn keine Bildlaufleiste definiert ist.
In GV kann ein TListViewer-Objekt nur mit einer Bildlaufleiste
verbunden werden.

TListViewer.Flags - Feld
 

 Deklaration:
   Flags: Word;

 Funktion:
Das Feld legt einige Eigenschaften des Objektes fest. Nhere Informationen
erhalten Sie unter lfXXXXXXX.

 siehe auch:
  TListViewer

TListViewer.Init - Konstruktor
 

 Deklaration:
   constructor Init(var Bounds: TRect; AScrollBar: PScrollBar);

 Anmerkung:
Initialisiert ber TGView.Init(Bounds) ein TListViewer-Objekt in der in
Bounds angegebenen Gre. In Options werden die Bits ofFirstClick und
ofSelectable gesetzt.

EventMask wird auf evBroadCast, die Felder Range und Focused auf 0 gesetzt.
AScrollBar ist ein Zeiger auf eine Bildlaufleiste. Ist diese nicht notwendig,
mssen Sie nil bergeben. Der Zeiger wird in das Feld ScrollBar
eingetragen.

Wenn Sie eine Bildlaufleiste bereitgestellt haben, werden deren Felder
PgStep und ArStep auf Werte gesetzt, die der Gre des TListViewer-Objekts
entspricht.

 Siehe auch:
   TGView.Init
   TListViewer

TListViewer.Load - Konstruktor
 

 Deklaration:
   constructor Load(var S: TStream);

 Funktion:



                  gvviews2, Page #  15   Date 22-7-1996 Monday
                                    -   16 -





Ldt ein TListViewer-Objekt aus dem Stream S.
Die Methode ruft zuerst die ererbte Methode TGView.Load auf,
ldt ber GetPeerViewPtr die Bildlaufleiste und
schlielich mittels S.Read die Werte der anderen Felder aus dem Stream S.

 Siehe auch:
   Store
   TListViewer

TListViewer.Draw - Methode
 

 Deklaration:
    procedure Draw; virtual;

 Funktion:
Stellt das Objekt auf dem Bildschirm dar. Fr jeden Eintrag der Liste wird
dabei die Methode DrawItem aufgerufen.

 siehe auch:
   DrawItemText

TListViewer.DrawItem - Methode
 

 Deklaration:
   procedure DrawItem (Item: Integer); virtual;

 Funktion:
Gibt den Eintrag mit der Nummer Item auf dem Bildschirm aus.
ber GetItemRect wird der Darstellungsbereich
des Eintrags ermittelt. Dann wird abhngig von der Selektierung des Eintrags
sein Hintergrund ausgegeben und abschlieend die Methode DrawItemText
aufgerufen.

 siehe auch:
   Draw

TListViewer.DrawItemText - Methode
 

 Deklaration:
   procedure DrawItemText(Item: Integer; R: TRect); virtual;

 Funktion:
Gibt den Inhalt des Eintrags mit der Nummer Item in den gegebenen Grenzen aus.
Standardmig wird ber einen Aufruf von GetText versucht, ein Text fr den
Eintrag zu ermitteln. Wollen Sie etwas anderes als Text ausgeben lassen, so
mssen Sie diese Methode berschreiben.

 siehe auch:
   DrawItem
   Draw




                  gvviews2, Page #  16   Date 22-7-1996 Monday
                                    -   17 -





TListViewer.GetItemRect - Methode
 

 Deklaration:
   procedure GetItemRect(Item: Integer; var R: TRect); virtual;

 Funktion:
Gibt in R den Bildschirmbereich zurck, der zu dem Eintrag mit der Nummer
Item gehrt. Die Koordinaten beziehen sich auf den Origin des Objektes.
Durch berschreiben dieser Methode ist es mglich, verschieden groe Eintrge
zu untersttzen.

 siehe auch:
   DrawItem

TListViewer.GetItemSubrect - Methode
 

 Deklaration:
   procedure GetItemSubRect(var R: TRect); virtual;

 Funktion:
Gibt in R den Bildschirmbereich zurck, die die Eintrge innerhalb des Objektes
einnehmen. Normalerweise wird ein 3 Pixel breiter Rand freigelassen.
Sie knnen, die Methode jedoch berschreiben und einen anderen Bereich
festlegen. Die Methode wird von Draw aufgerufen.

TListViewer.GetPageSize - Methode
 

 Deklaration:
   function GetPageSize: Integer; virtual;

 Funktion:
Diese Methode gibt die Anzahl der Eintrge zurck, die auf einmal innerhalb
des Objektes dargestellt werden knnen. Wenn Sie zum Beispiel [PgDn] drcken,
wird TopItem genau um diese Anzahl erhht.

 siehe auch:
   TopItem  (siehe Pascal-Dokumentation)

TListViewer.SetState - Methode
 

 Deklaration:
   procedure SetState(AState: Word; Enable: Boolean); virtual;

 Funktion:
Die Methode ruft zunchst TGView.SetState auf.
Ist in AState das Flag sfSelected gesetzt und liefert die
Methode Exposed true, so wird DrawItem(Focused)
aufgerufen.

 siehe auch:



                  gvviews2, Page #  17   Date 22-7-1996 Monday
                                    -   18 -





   Exposed  (siehe Pascal-Dokumentation)
   Focused  (siehe Pascal-Dokumentation)

TListViewer.Store - Methode
 

 Deklaration:
   procedure Store(var S: TStream);

 Funktion:
Schreibt ein TListViewer-Objekt in den Stream S.
Die Methode ruft zuerst die ererbte Methode TGView.Store auf,
schreibt ber PutPeerViewPtr  die Bildlaufleiste und
schlielich mittels S.Write die Werte der anderen Felder in den Stream S.

 Siehe auch:
   Load
   TListViewer

TGGroup - Objekt (Unit GVViews)
 

TGGroup stellt eine Gruppe, die verschiedene Objekte verwaltet, bereit.
Die Funktionen sind weitgehend kompatibel mit denen des TV-Objektes
TGroup. Fr weitere Informationen ber Gruppen whlen Sie:

 TGroup  (siehe Pascal-Dokumentation)

 Felder:
    Last
    Current
    Phase             (siehe Pascal-Dokumentation)
    StandardFont
    EndState

 Methoden:
    Init
    Load
    Done              (siehe Pascal-Dokumentation)
    Awaken            (siehe Pascal-Dokumentation)
    ChangeBounds      (siehe Pascal-Dokumentation)
    ChMCursor
    DrawClipped
    DrawVisible
    DataSize          (siehe Pascal-Dokumentation)
    Delete
    Draw
    EndModal          (siehe Pascal-Dokumentation)
    EventError        (siehe Pascal-Dokumentation)
    ExecView
    Execute
    First             (siehe Pascal-Dokumentation)
    FirstThat         (siehe Pascal-Dokumentation)
    FocusNext         (siehe Pascal-Dokumentation)



                  gvviews2, Page #  18   Date 22-7-1996 Monday
                                    -   19 -





    ForEach           (siehe Pascal-Dokumentation)
    GetData           (siehe Pascal-Dokumentation)
    GetHelpCtx        (siehe Pascal-Dokumentation)
    GetSubViewPtr     (siehe Pascal-Dokumentation)
    HandleEvent       (siehe Pascal-Dokumentation)
    Insert
    InsertBefore
    Lock
    PutSubViewPtr     (siehe Pascal-Dokumentation)
    Redraw
    SelectNext        (siehe Pascal-Dokumentation)
    SetData           (siehe Pascal-Dokumentation)
    SetState          (siehe Pascal-Dokumentation)
    Store
    UnLock
    Valid

TGGroup.Last - Feld
 

 Deklaration:
    Last: PGView;

 Funktion:
Zeigt auf die letzte Subview der Gruppe, das ist die Subview, die am Ende
der durch die Z-Ordnung festgelegten Reihenfolge steht. Das Feld GNext
der letzten Subview zeigt auf die erste Subview; deren Feld GNext auf die
nchste Subview usw. Dadurch entsteht eine zirkulr verkettete Liste von
Subviews.

 Siehe auch:
   TGGroup

TGGroup.Current - Feld
 

 Deklaration:
   Current: PGView;

 Funktion:
Zeigt auf die aktuell selektierte Subview oder besitzt den Wert nil, wenn
keine Subview selektiert ist.

 Siehe auch:
   sfSelected
   TView.Select  (siehe Pascal-Dokumentation)
   TGGroup

TGGroup.StandardFont - Feld
 

 Deklaration:
   StandardFont: Word;




                  gvviews2, Page #  19   Date 22-7-1996 Monday
                                    -   20 -





 Funktion:
Diese Variable speichert die aktuelle Standardschriftart, die von den SubViews
der Gruppe verwendet wird. Normalerweise ist dies ftSansSerif.
Diese Schriftart wird von den meisten Dialogelementen verwendet.

 siehe auch:
   TGView.GetStandardFont

TGGroup.EndState - Feld
 

 Deklaration:
   EndState: Word;

 Funktion:
Diese Variable wird von den Methoden EndModal sowie Execute
verwendet.

 siehe auch:
   EndModal,TGGroup  (siehe Pascal-Dokumentation)

TGGroup.Init - Konstruktor
 

 Deklaration:
   constructor Init(var Bounds: TRect);

 Funktion:
Ruft TGView.Init(Bounds) auf, um das Objekt mit der in Bounds angegebenen
Gre zu initialisieren, und setzt die Begrenzungen, bei deren berschreiten
Subviews abgeschnitten werden. Im Feld Options werden die Bits ofSelectable
und ofBuffered gesetzt; dem Feld EventMask wird der Wert $FFFF zugewiesen,
wodurch das Objekt seine Zustndigkeit fr alle Arten von Ereignissen
erklrt. StandardFont wird auf ftSansSerif
gesetzt.

 Siehe auch:
   TGView.Init
   TGGroup

TGGroup.Load - Konstruktor
 

 Deklaration:
   constructor Load(var S: TStream);

 Funktion:
Ldt eine ganze Gruppe aus dem angegebenen Stream und ruft dazu zunchst
TGView.Load auf, benutzt dann Stream.Get, um die zur Gruppe gehrenden
Subviews einzulesen. Danach werden alle Zeigerreferenzen, die ber
GetPeerViewPtr aus dem Stream gelesen wurden, aufgelst.

Wenn ein TGGroup-Objekt Felder enthlt, die auf Subviews zeigen, mu das
Objekt innerhalb der Load-Methode GetSubViewPtr aufrufen, um diese Felder



                  gvviews2, Page #  20   Date 22-7-1996 Monday
                                    -   21 -





einlesen zu lassen.

Falls das GOwner-Feld nil ist, wird die Awaken-Methode aufgerufen, nachdem
alle Subviews geladen sind.

 Siehe auch:
  Awaken                (siehe Pascal-Dokumentation)
  GetSubViewPtr,TGroup  (siehe Pascal-Dokumentation)
  Store,TGroup          (siehe Pascal-Dokumentation)
  Get,TStream           (siehe Pascal-Dokumentation)
  TGView.Load
  TGGroup

TGGroup.ChMCursor - Methode
 

 Deklaration:
   procedure ChMCursor; virtual;

 Funktion:
Ruft zunchst TGView.ChMCursor auf. Dann wird die
gleichnamige Methode aller der SubViews aufgerufen, die sichtbar sind und
in denen sich der Mauszeiger momentan befindet.

TGGroup.DrawClipped - Methode
 

 Deklaration:
   procedure DrawClipped(Clip: PVRect; VisOwner: PGView); virtual;

 Funktion:
Diese Prozedur schneidet mittels IntersectVis die
Clip-Region an der sichtbaren Region und ruft fr jede der Subviews
DrawClipped fr den resultierenden Teil dar.

Tatschlich ist die Implementation von DrawClipped aber etwas subtiler
und effizienter als beschrieben.

Insbesondere erfolgt die Darstellung der Subviews in zwei Phasen:
Zunchst werden von hinten nach vorn alle Subviews, deren
sfFirstPass-Flags gesetzt sind, in die Region der Gruppe gezeichnet.
Dazu wird die Funktion DrawFirstPass eingesetzt.
Dann werden von vorn nach hinten alle Subviews, deren sfFirstPass-Flags
gelscht sind, mittels DrawClipped in eigene Regionen gezeichnet.

TGGroup.DrawVisible - Methode
 
 Deklaration:
   procedure DrawVisible; virtual;

 Funktion:
Ruft die Methode Redraw auf, um die sichtbare Region
des Objekts zu zeichnen.




                  gvviews2, Page #  21   Date 22-7-1996 Monday
                                    -   22 -





TGGroup.Delete - Methode
 

 Deklaration:
   procedure Delete(P: PGView);

 Funktion:
Sofern das Objekt, auf das P zeigt, sichtbar ist, wird es vom Bildschirm und
danach auch aus der Gruppe entfernt; den Feldern GOwner und GNext dieser
Subview wird der Wert nil zugewiesen. Jedoch wird der Speicher, den das ber
P referenzierte Objekt belegt, nicht freigegeben.

 Siehe auch:
   Insert
   TGGroup

TGGroup.Draw - Methode
 

 Deklaration:
   procedure Draw; virtual;

 Funktion:
Diese Methode ruft fr alle sichtbaren Subviews DrawFirstPass
auf. Sie wird praktisch nur bei transparentem Durchschreiben aufgerufen.

berschreiben Sie niemals diese Methode. Anstatt Zeichenoperationen
auf Gruppen auszufhren, fgen Sie bitte eine View als Hintergrund-Objekt
in die Gruppe ein.

TGGroup.ExecView - Methode
 

 Deklaration:
   function ExecView(P: PGView): Word;

 Funktion:
ExecView ist das modale Gegenstck der nicht-modalen Methoden Insert
und Delete. Insert fgt - wie ExecView auch - ein Objekt in
die Gruppe ein, allerdings wartet ExecView dann, bis das Objekt seine Arbeit
beeendet hat, und gibt dann das Resultat der Ausfhrung zurck.

Diese Methode wird in TProgram.Run aufgerufen, und sie fhrt auch modale
Dialogfenster aus.

ExecView sichert den aktuellen Programmkontext (das selektierte und das
fokussierte View-Objekt und den Befehlssatz), bertrgt mittels
P^.SetState(sfModal, True) dem ber P referenzierten Objekt die Eigenschaft
der Modalitt, fgt P in die Gruppe ein (sofern das Objekt ihr nicht schon
angehrt) und ruft P^.Execute auf.

Hat Execute seine Arbeit beendet, wird das Ergebnis dieser Funktion von
ExecView zurckgegeben und der vorher bestehende Programmkontext wieder
hergestellt. Ist P nil, gibt ExecView den Befehl cmCancel zurck.



                  gvviews2, Page #  22   Date 22-7-1996 Monday
                                    -   23 -






 Siehe auch:
   Run,TProgram  (siehe Pascal-Dokumentation)
   sfModal
   Execute
   TGGroup

TGGroup.Execute - Methode
 

 Deklaration:
   function Execute: Word; virtual;

 Funktion:
Diese Methode besteht im Prinzip aus zwei Programmschleifen, wobei die
innere Schleife Ereignisse entgegennimmt und sie an HandleEvent weitergibt.
Sie wird verlassen, wenn die Gruppe oder eine Subview EndModal aufruft.
Vorher jedoch vergewissert sich diese Methode ber Valid, da der modale
Zustand tatschlich beendet werden kann.

 Siehe auch:
  EndModal,TGroup     (siehe Pascal-Dokumentation)
  HandleEvent,TGroup  (siehe Pascal-Dokumentation)
  Valid
  TGGroup

TGGroup.Insert - Methode
 

 Deklaration:
   funtion Insert(P: PGView): pointer;

 Funktion:
Fgt P^ als neue Subview in die Gruppe ein; sind die Bits ofCenterX oder
ofCenterY gesetzt, wird das Objekt innerhalb des Bereichs der Gruppe
entsprechend zentriert positioniert. Ist das Bit ofHoldFirst gesetzt, wird
das Objekt im Vordergrund bleiben. Alle neu einzufgenden Objekte, bei denen
das Bit nicht gesetzt ist, werden dann hinter diesem Objekt eingefgt.
Ist das Bit sfVisible gesetzt, erscheint die neue SubView sie innerhalb der
Gruppe; wenn nicht, bleibt sie unsichtbar, bis ein expliziter
Darstellungsbefehl eintrifft.

Kommt der Subview die Eigenschaft ofSelectable zu, wird sie gleichzeitig zur
aktuellen selektierten Subview.

In GV ist Insert eine Funktion. Die Methode gibt den Parameter P zurck.
Damit knnen lstige Hilfvariablen entfallen, die in TV bentigt wurden. Aus:

 
 
 
 
 




                  gvviews2, Page #  23   Date 22-7-1996 Monday
                                    -   24 -





 in TV wird zu:

 
 
 

 in GV. Dies gilt auch fr die Methode InsertBefore.

 Siehe auch:
   ofXXXXXXX
   Delete
   ExecView
   TGGroup

TGGroup.InsertBefore - Methode
 

 Deklaration:
   function InsertBefore(P, Target: PGView): pointer;

 Funktion:
Fgt P^ als neue Subview in die Gruppe ein, und zwar vor dem Objekt, auf das
Target zeigt. Ist Target nil, wird das Objekt hinter allen anderen Subviews
der Gruppe eingefgt.

InsertBefore ist in GV eine Funktion. Mehr dazu unter Insert.

 Siehe auch:
  Delete
  TGGroup

TGGroup.Lock - Methode
 

 Deklaration:
   procedure Lock;

 Funktion:
In GV besitzen Gruppen keinen Puffer wie in TV. Deshalb unterdrckt der
Aufruf dieser Routine lediglich alle Ausgaben. Es wird nur LockFlag um
eins erhht.

 siehe auch:
   UnLock

TGGroup.Redraw - Methode
 

 Deklaration:
   procedure Redraw;

 Funktion:
Die Methode ermittelt zunchst ber GetVisibility die
von der Gruppe sichtbare Region. Dann wird DrawClipped



                  gvviews2, Page #  24   Date 22-7-1996 Monday
                                    -   25 -





aufgerufen, um die Gruppe neu auszugeben.

TGGroup.Store - Methode
 

 Deklaration:
   procedure Store(var S: TStream);

 Funktion:
Schreibt eine ganze Gruppe in den Stream S. Dazu wird zunchst die von TGView
geerbte Store-Methode aufgerufen, und dann mittels TStream.Put jede Subview
im Stream gesichert.

Sollten Sie von TGGroup abgeleitete Objekte definieren, deren Felder Zeiger
auf Subviews speichern, mssen Sie innerhalb der Store-Methode
PutSubViewPtr aufrufen, um diese Felder in den Stream zu schreiben.

 Siehe auch:
   PutSubViewPtr,TGroup  (siehe Pascal-Dokumentation)
   Put,TStream           (siehe Pascal-Dokumentation)
   Load
   TGView.Store
   TGGroup

TGGroup.UnLock - Methode
 

 Deklaration:
   procedure UnLock;

 Funktion:
Die Methode dekrementiert LockFlag um eins und ruft, wenn LockFlag 0 ist,
DrawView auf.

TGGroup.Valid - Methode
 

 Deklaration:
   function Valid(Command: Word): Boolean; virtual;

 Funktion:
Gibt True zurck, wenn die gleichnamigen Methoden aller Subviews der Gruppe
ebenfalls True ermitteln. ber diese Methode kontrolliert Execute, ob die
Beendigung der Ausfhrung mglich ist.

Eine Gruppe kann die Eigenschaft der Modalitt nur dann abgeben, wenn Valid
True zurckgibt. Eine Subview kann False zurckgeben, wenn sie den Fokus
behalten will oder mu.

 Siehe auch:
   Valid,TView  (siehe Pascal-Dokumentation)
   Execute
   TGGroup




                  gvviews2, Page #  25   Date 22-7-1996 Monday
                                    -   26 -





TWindow - Objekt (Unit GVViews)
 

TWindow ist ein spezialisierter Nachkomme von TGGroup und damit selbst eine
Gruppe, zu der blicherweise ein TFrame-Objekt gehrt, das ein
TScroller-Objekt oder hnliches umschliet, und darber hinaus
auch ein oder zwei TScrollBar-Objekte umfat. Diese Objekte
machen ein TWindow-Objekt auf dem Bildschirm sichtbar.

TFrame versieht das Fenster mit einen Rahmen, der Platz bietet fr einen
Titel und verschiedene Symbole enthlt, die es ermglichen, mittels der Maus
die Position des Fensters und seine Gre zu ndern.

Zu den Fhigkeiten eines TWindow-Objekts zhlt auch, mit Bildlaufleisten
umgehen zu knnen.

Hat das Feld Number einen Wert zwischen 1 und 9, kann das Fenster ber die
Tastenkombination [Alt][Ziffer] selektiert werden.
An dieser Stelle soll auch auf die intelligente Fensternummerverwaltung in
GV hingewiesen werden (siehe GVWinNum).

 Felder:
   Flags
   ZoomRect        (siehe Pascal-Dokumentation)
   Number          (siehe Pascal-Dokumentation)
   Palette
   Frame           (siehe Pascal-Dokumentation)
   Title

 Methoden:
   Init
   Load
   Done            (siehe Pascal-Dokumentation)
   Close
   GetClientRect
   GetPalette
   GetTitle        (siehe Pascal-Dokumentation)
   HandleEvent     (siehe Pascal-Dokumentation)
   InitFrame       (siehe Pascal-Dokumentation)
   SetState
   SizeLimits
   StandardScrollBar
   Store
   Zoom            (siehe Pascal-Dokumentation)

TWindow.Flags - Feld
 

 Deklaration:
   Flags: Word;     LESEN/SCHREIBEN

 Funktion:
Dieses Feld legt einige Eigenschaften des Fensters fest; die einzelnen Bits
haben folgende Bedeutung:



                  gvviews2, Page #  26   Date 22-7-1996 Monday
                                    -   27 -






 ͻ
 msb                  lsb
 ͼ
                        wfMove       = $01
                     wfGrow       = $02
                  wfClose      = $04
               wfZoom       = $08
            wfShowNumber = $10;
         wfBackground = $20;
      wfShowTitle  = $40;
   wfModal      = $80;
 wfHideClose  = $100;

 Siehe auch:
   wfXXXXXXX
   TWindow

TWindow.Palette - Feld
 

 Deklaration:
  Palette: Integer;     LESEN/SCHREIBEN

 Funktion:
Gibt an, welche Farbpalette fr dieses Fenster verwendet wird, und kann die
Werte wpWhiteWindow, wpGrayWindow und wpCyanWindow annehmen. Voreingestellt
ist die Palette wpWhiteWindow.

 Siehe auch:
   wpXXXXXXX
   GetPalette
   TWindow

TWindow.Title - Feld
 

 Deklaration:
   Title: PString;     LESEN/SCHREIBEN

 Funktion:
Zeigt auf den String, der als (optionaler) Titel des Fensters erscheint.

 Siehe auch:
   TWindow

TWindow.Init - Konstruktor
 

 Deklaration:
   constructor Init(var Bounds: TRect; ATitle: TTitleStr; ANumber:
       Integer);

 Funktion:



                  gvviews2, Page #  27   Date 22-7-1996 Monday
                                    -   28 -





Initialisiert ber TGGroup.Init(Bounds) ein Fenster in der in
Bounds angegebenen Gre.

In Options werden die Bits ofSelectable, ofTopSelect und ofTileable, in
GrowMode die Bits gfGrowAll + gfGrowRel und in Flags alle
wfXXXXXXX Bits gesetzt. Den Feldern Title und
Number werden ATitle und ANumber zugewiesen.

Schlielich ruft dieser Konstruktor InitFrame auf und fgt das erzeugte
TFrame-Objekt der Gruppe hinzu. Die Werte von Bounds werden
schlielich im Feld ZoomRect gespeichert.

 Siehe auch:
   TFrame.Init
   TWindow

TWindow.Load - Konstruktor
 

 Deklaration:
   constructor Load(var S: TStream);

 Funktion:
Ruft den von TGGroup geerbten Load-Konstruktor auf, der ein
TGGroup-Objekt aus dem Stream S liest, und ldt dann selbst die Werte der von
TWindow neu eingefhrten Felder.

 Siehe auch:
   TGGroup.Load
   TWindow

TWindow.Close - Methode
 

 Deklaration:
   procedure Close; virtual;

 Funktion:
Wenn das Flag wfHideClose gesetzt ist, wird nur Hide
aufgerufen. Ansonsten wird die Methode Valid mit cmClose als
Command-Parameter aufgerufen. Wenn Valid True zurckgibt, wird
ber den Destruktor Done das Fenster geschlossen.

 Siehe auch:
   TWindow

TWindow.GetClientRect - Methode
 

 Deklaration:
   procedure GetClientRect(var R: TRect); virtual;

 Funktion:
Gibt in R den Bereich innerhalb des Fensterrahmens zurck.



                  gvviews2, Page #  28   Date 22-7-1996 Monday
                                    -   29 -





Dies ist der Bereich, in dem sich der Fensterinhalt (zum Beispiel ein
TScroller-Objekt befindet).

TWindow.GetPalette - Methode
 

 Deklaration:
   function GetPalette: PPalette; virtual;

 Funktion:
Diese Methode gibt einen Zeiger auf die Farbpalette zurck, die mittels des
Indexwertes im Feld Palette ermittelt wird. Die folgende Tabelle zeigt,
welche Farbpaletten den verschiedenen Werten von Palette entsprechen:


 Feld Palette   Rckgabewert
 
 wpWhiteWindow  CWhiteWindow
 wpGrayWindow   CGrayWindow
 wpCyanWindow   CCyanWindow


 Siehe auch:
   Palette
   TWindow

TWindow.SetState - Methode
 

 Deklaration:
   procedure SetState(AState: Word; Enable: Boolean); virtual;

 Anmerkung:
Ruft zunchst die von TGGroup geerbte SetState-Methode auf und aktiviert oder
deaktiviert dann - sofern AState gleich sfSelected ist - das Fenster und
mittels SetState(sfActive, Enable) die dazu gehrenden Subviews.

Schlielich wird fr die Befehle cmNext, cmPrev, cmResize, cmClose und
cmZoom sowie die Befehle in WindowCmds die Methode
EnableCommands oder DisableCommands aufgerufen.

 Siehe auch:
   DisableCommands  (siehe Pascal-Dokumentation)
   EnableCommands   (siehe Pascal-Dokumentation)
   SetState,TGroup  (siehe Pascal-Dokumentation)
   TWindow

TWindow.SizeLimits - Methode
 

 Deklaration
   procedure SizeLimits(var Min,Max: TPoint); virtual;

 Funktion:



                  gvviews2, Page #  29   Date 22-7-1996 Monday
                                    -   30 -





Setzt die Minimal- und Maximalwerte, die das Fenster in seiner Gre nicht
unter- bzw. berschreiten darf. Dazu ruft diese Methode
TGView.SizeLimits(Min, Max) auf und setzt dann Min auf GMinWinSize.

 Siehe auch:
   SizeLimits,TView  (siehe Pascal-Dokumentation)
   TWindow

TWindow.StandardScrollBar - Methode
 

 Deklaration:
   function StandardScrollBar(AOptions: Word): PScrollBar;

 Funktion:
Diese Methode initialisiert eine Bildlaufleiste, fgt dieses Objekt in die
Gruppe ein und gibt einen Zeiger darauf zurck. Die Gre der Bildlaufleiste
ist so bemessen, da sie keine Ecke oder Kante des Rahmens berdeckt, so da
es immer mglich ist, mittels der Maus die Fenstergre zu ndern.

Der Parameter AOptions hat entweder den Wert sbHorizontal, wodurch eine
horizontale Bildlaufleiste am unteren Fensterrand definiert wird, oder den
Wert sbVertical, wodurch eine vertikale Bildlaufleiste am rechten Fensterrand
definiert wird.

Ist in AOptions auch das Bit sbHandleKeyboard gesetzt, reagiert die
Bildlaufleiste ber Mausereignisse hinaus auch auf Tastaturereignisse.

 Siehe auch:
   sbXXXXXXX
   TWindow

TWindow.Store - Methode
 

 Deklaration:
   procedure Store(var S: TStream);

 Funktion:
Schreibt ber TGGroup.Store(S) das Fenster und alle zu dieser
Gruppe gehrenden Subviews in den angegebenen Stream. Dann werden auch die
Felder Flags, Frame und Title mittels
S.Write in dem Stream gespeichert.

 Siehe auch:
   Frame,TWindow  (siehe Pascal-Dokumentation)
   TWindow










                  gvviews2, Page #  30   Date 22-7-1996 Monday
