====== Vega.Chrome — Eigener Fensterrahmen ====== Titelzeile, Fensterknöpfe, Verschieben und Größe ziehen — selbst gezeichnet. Die Titelzeile des Fenstermanagers sieht auf jedem System anders aus; wer eine Oberfläche baut, die überall gleich aussehen soll, muss sie selbst zeichnen, sonst hört „überall gleich“ genau am Fensterrand auf. Quelldatei: ''Vega/Chrome.lyx'' → [[lyx_-_programmiersprache:vega:units|Alle Units]] · [[lyx_-_programmiersprache:vega:controls|Alle Steuerelemente]] · [[lyx_-_programmiersprache:vega|Vega VCL]] ---- ===== Klassen ===== ^ Klasse ^ Basis ^ Zweck ^ | ''TTitleBar'' | [[lyx_-_programmiersprache:vega:controls:tcontrol|TControl]] | Titelzeile mit Beschriftung und Fensterknöpfen | ===== Konstanten ===== ^ Name ^ Typ ^ Wert ^ Bedeutung ^ | ''WB_NONE'' | [[lyx_-_programmiersprache:sprache:datentypen#1_ganzzahl-typen_signiert|int64]] | ''0'' | Kein Fensterknopf | | ''WB_MINIMIZE'' | [[lyx_-_programmiersprache:sprache:datentypen#1_ganzzahl-typen_signiert|int64]] | ''1'' | Knopf: minimieren | | ''WB_MAXIMIZE'' | [[lyx_-_programmiersprache:sprache:datentypen#1_ganzzahl-typen_signiert|int64]] | ''2'' | Knopf: maximieren | | ''WB_CLOSE'' | [[lyx_-_programmiersprache:sprache:datentypen#1_ganzzahl-typen_signiert|int64]] | ''4'' | Knopf: schließen | | ''WB_ALL'' | [[lyx_-_programmiersprache:sprache:datentypen#1_ganzzahl-typen_signiert|int64]] | ''7'' | Alle Fensterknöpfe | | ''VEGA_RESIZE_BORDER'' | [[lyx_-_programmiersprache:sprache:datentypen#1_ganzzahl-typen_signiert|int64]] | ''6'' | Breite des Randes, an dem sich die Größe ziehen lässt | ===== Freie Funktionen ===== ^ Signatur ^ Zweck ^ | ''NewTitleBar(): TTitleBar'' | Erzeugt eine Titelzeile | | ''ResizeEdgeAt(x: int64, y: int64, w: int64, h: int64, rand: int64): int64'' | Welcher Ziehgriff an dieser Stelle liegt — liefert einen ''VEGA_RESIZE_*''-Wert | ---- ===== Zu beachten ===== * Der eigene Rahmen wird über ''CustomChrome'' am Formular eingeschaltet; ohne ihn zeichnet der Fenstermanager. * Die Ziehgriffe kommen aus [[lyx_-_programmiersprache:vega:units:types|Vega.Types]] (''VEGA_RESIZE_*''), damit Backend und Rahmen dieselben Werte benutzen. ---- ===== Abhängigkeiten ===== **Importiert:** [[lyx_-_programmiersprache:vega:units:types|Vega.Types]], [[lyx_-_programmiersprache:vega:units:events|Vega.Events]], [[lyx_-_programmiersprache:vega:units:canvas|Vega.Canvas]], [[lyx_-_programmiersprache:vega:units:theme|Vega.Theme]], [[lyx_-_programmiersprache:vega:units:control|Vega.Control]], [[lyx_-_programmiersprache:vega:units:font|Vega.Font]], [[lyx_-_programmiersprache:vega:units:strings|Vega.Strings]], [[lyx_-_programmiersprache:vega:units:lists|Vega.Lists]], [[lyx_-_programmiersprache:vega:units:style|Vega.Style]] **Wird importiert von:** [[lyx_-_programmiersprache:vega:units:forms|Vega.Forms]] Letzte Aktualisierung: 2026-08-20 — Klassen, Aufzählungen, Konstanten und freie Funktionen maschinell aus ''Vega/Chrome.lyx'' erhoben.