Nächste Seite: Schnittstellenmoduln Aufwärts: Bibliotheksmoduln Vorherige Seite: Verwendeter Ein- und Ausgabekanal

# Windows

Das Modul `Windows` bietet eine einfache Schnittstelle, um mit Fenstern zu arbeiten. Für die einfache Handhabung wird keine detaillierte Kenntnis von Intuition gefordert.

`OpenWindow` öffnet ein Fenster mit den angegebenen Koordinaten `x`, `y`, `w`, `h` -- in Bildpunkten, der Nullpunkt befindet sich links oben -- und der Kopfzeile `title`. Alle in Intuition verfübaren Standard-Gadgets sowie ein Schiebebalken auf der rechten Seite können dem Fenster zugeordnet werden. So zugewiesene Gadgets müssen allerdings vom Benutzer behandelt werden7.8. Ohne spezielle Behandlung sollten nur das `arranging`- und das `moving`-Gadget zugewiesen werden, da sie vom System automatisch behandelt werden.

Als Schreibmodus wird `replMd` gesetzt und die Cursorposition ist `0`, `0` (linksoben). Konnte das Fenster nicht geöffnet werden, erhält `u` den wert `NIL`.

`CloseWindow` schliesst das durch `u` identifizierte Fenster wieder.

Die Prozedur `GetSize` liefert die Zeilen- und Spaltenzahl des Fensters `u`.

`XYtoPos` setzt die `x`- und `y`-Koordinate relativ zum Fensternullpunkt in die Fensterzeile `l` und Spalte `c` um.

Der unsichtbare Cursor kann mit `SetPos` gesetzt werden, während analog `GetPos` die aktuelle Cursorposition liefert. Die beiden Prozeduren arbeiten mit Zeile und Spalte!

Bei Eröffnen wird die Hinter- und Vordergrundfarbe auf 0 und 1 gesetzt. Mit `SetColor` lassen sich diese Farbwerte ändern. Möchten Sie nur einen Wert ändern, können Sie dem anderen -1 übergeben.

`SetMode` setzt den Schreibmodus für ein bestimmtes Fenster. Mit `replMd` wird das Buchstabenmuster über den momentanen Inhalt gelegt, `xorMd` ändert die Farbe an den im Muster gesetzten Stellen und `orMd` setzt die Farbe an den im Muster gesetzten Stellen. Ist `invMd` gesetzt, wird das Buchstabenmuster zuerst invertiert, bevor einer der drei beschriebenen Modus zur Anwendung kommt.

`Scroll` bewegt den Fensterinhalt um soviele Zeilen wie angegeben, aufwärts bei positiven Grössen und abwärts bei negativen `nr`.

Ein Fenster kann durch die Prozedur `Clear` gelöscht werden. Das Fenster wird mit der Hintergrundfarbe ausgefüllt.

`WriteC` schreibt an der aktuellen Cursorposition ein Zeichen und bewegt den Cursor entsprechend.

`WriteS` schreibt die übergebene Zeichenkette an der aktuellen Cursorposition. Geht die Zeichenkette über den rechten Rand hinaus, wird auf der nächsten Zeile fortgefahren; ein anderes Verhalten kann mit `SetClip` erreicht werden.

`WriteL` setzt den Cursor an den Anfang der nächsten Zeile.

Die Fenster werden normalerweise auf dem Workbench-Bildschirm eröffnet. Mit `SetScreen` kann jedoch für alle nachfolgenden Aufrufe der Prozedur `OpenWindow` ein anderer Bildschirm gesetzt werden. Um wieder zum Workbench-Bildschirm zurückkehren zu können, muss `NIL` übergeben werden.

Mit der Prozedur `SetClip` können Sie angegeben, ob ein zu schreibender Text, der nicht vollständig auf der Fensterzeile Platz hat, abgeschnitten oder auf der nächsten Zeile weitergeschrieben werden soll. Wird der Clip-Modus gesetzt (`on` `TRUE`), bewirkt ausserdem ein Zeilenvorschub am Ende des Fensters bloss das Setzen des Cursors auf das erste Zeichen der Zeile.

Nächste Seite: Schnittstellenmoduln Aufwärts: Bibliotheksmoduln Vorherige Seite: Verwendeter Ein- und Ausgabekanal