====== TFontDialog — Schrift wählen ====== Der Schriftdialog: Familie, Schnitt und Größe auswählen, mit Vorschau. Er arbeitet auf dem Schriftenkatalog von Vega ([[lyx_-_programmiersprache:vega:units:truetype|TrueType]]) und liefert am Ende einen Dateipfad samt Größe — keine Systemschriftauswahl, sondern selbst gezeichnet wie die übrigen Dialoge. Unit: ''vega.fontdlg'' · Basis: keine — eigene Wurzel → [[lyx_-_programmiersprache:vega:controls|Alle Steuerelemente]] · [[lyx_-_programmiersprache:vega:klassenbaum|Klassenbaum]] · [[lyx_-_programmiersprache:vega:guides:komponenten|Guide: Komponenten]] ---- ===== Vererbung ===== **Kette:** **TFontDialog** — eigene Wurzel, kein Vorfahr. Was diese Klasse kann, steht vollständig auf dieser Seite. **Direkte Nachfahren:** keine — diese Klasse wird nicht weiter abgeleitet. **Quelle:** ''vega/fontdlg.lyx'' ---- ===== Verwendung ===== var d: TFontDialog := new TFontDialog(); d.SetTitle("Schrift waehlen"); d.SetSize(14); d.SelectPath("/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf"); if (d.Execute(app)) { d.Apply(); // uebernimmt Familie, Schnitt und Groesse // d.FontPath, d.Family, d.Style, d.Size stehen jetzt auf der Wahl } d.Destroy(); Für den einfachen Fall genügt die Kurzform: if (ChooseFont(app, aktuellerPfad, 14)) { /* uebernommen */ } ---- ===== Besonderheiten ===== * **Der Dialog liest den Schriftenkatalog**, nicht das Dateisystem unmittelbar: ''FontCatalog()'' sammelt die gefundenen TrueType-Dateien, ''ScanDefaults'' durchsucht die üblichen Pfade. Ohne vorherigen Scan bleibt die Liste leer. * **Die Vorschau hat eine eigene Schriftinstanz** (''_previewFont''). Das ist Absicht: sonst stellte das Ausprobieren die Schrift des Dialogs selbst um, und man sähe die Auswahl doppelt. * **''SampleText'' bestimmt den Vorschautext.** Leer heißt: der eingebaute Beispielsatz. * **''Apply'' ist der Schritt nach ''Execute''.** ''Execute'' liefert nur, ob bestätigt wurde; erst ''Apply'' übernimmt die Wahl in die Zielschrift. ---- ===== Eigenschaften ===== Alle Eigenschaften, auch die geerbten. ^ Name ^ Typ ^ Bedeutung ^ Herkunft ^ | ''Family'' | [[lyx_-_programmiersprache:vega:controls:ttextbuffer|TTextBuffer]] | Schriftfamilie | eigen | | ''FontPath'' | [[lyx_-_programmiersprache:vega:controls:ttextbuffer|TTextBuffer]] | Vor dem Aufruf die Vorgabe, danach das Ergebnis | eigen | | ''SampleText'' | [[lyx_-_programmiersprache:vega:controls:ttextbuffer|TTextBuffer]] | Was die Vorschau zeigt. Leer heißt: der eingebaute Beispielsatz | eigen | | ''Size'' | [[lyx_-_programmiersprache:sprache:datentypen#1_ganzzahl-typen_signiert|int64]] | Schriftgröße in Punkt | eigen | | ''Style'' | [[lyx_-_programmiersprache:vega:controls:ttextbuffer|TTextBuffer]] | Delphis Style — derselbe Zustand unter dem gewohnten Namen | eigen | | ''Title'' | [[lyx_-_programmiersprache:vega:controls:ttextbuffer|TTextBuffer]] | Titelzeile des Dialogs | eigen | ---- ===== Methoden ===== Alle Methoden, auch die geerbten. ^ Signatur ^ Zweck ^ Herkunft ^ | ''Apply(): bool'' | Die gewaehlte Schrift für die ganze Anwendung übernehmen | eigen | | ''Create(): void'' | Anlegen; ''new TFontDialog()'' | eigen | | ''Destroy(): void'' | Gibt eigene Ressourcen frei | eigen | | ''Execute(app: TApplication): bool'' | Zeigt den Dialog modal; ''true'' = bestätigt | eigen | | ''PreviewFont(): TFont'' | Die Schrift der Vorschau | eigen | | ''PreviewReady(): bool'' | Ob die Vorschauschrift geladen werden konnte | eigen | | ''Sample(): pchar'' | Vorschautext | eigen | | ''SelectFont(family: pchar, style: pchar): bool'' | Familie und Schnitt setzen; der Pfad wird im Katalog nachgeschlagen | eigen | | ''SelectPath(path: pchar): bool'' | Vorauswahl über den Dateipfad — so gibt eine Anwendung zurück, was sie beim letzten Mal bekommen hat | eigen | | ''SetSampleText(s: pchar): void'' | Setzt ''SampleText'' | eigen | | ''SetSize(v: int64): void'' | Setzt ''Size'' | eigen | | ''SetTitle(s: pchar): void'' | Setzt ''Title'' | eigen | ---- Letzte Aktualisierung: 2026-09-05 — Seite neu angelegt; erhoben aus ''vega/fontdlg.lyx'' im Repo ''lyx-vcl''.