LIEFERUMFANG
Ein Docking-Arbeitsbereich in Ihrer Avalonia-App
Ein Steuerelement in einem Fenster. Sie fügen die Fenster im Code hinzu, geben jedem Ihr eigenes Steuerelement, und der Benutzer ordnet sie an.
Werkzeugfenster und Dokumente
Jedes TsgcDockPanel hat einen Name, eine Caption, ein Symbol, einen Kind (dpkTool oder dpkDocument) und das Control, das es anzeigt. Werkzeugfenster starten an der Seite ihres Placement, DockSize breit, und Fenster mit demselben GroupName werden zu Registerkarten zusammengefasst.
Ihre eigenen Steuerelemente
Der Inhalt eines Fensters ist ein gewöhnliches Avalonia-Control. Es wird logisches und visuelles Kind der Dock-Site, sodass der DataContext von Ihrem Fenster aus weitergegeben wird, und es wird angeordnet und angezeigt, solange sein Fenster das aktive ist. Ein verborgenes Fenster behält sein Steuerelement als verborgenes Kind.
Drop-Guides mit Vorschau
Während eine Titelleiste oder eine Registerkarte gezogen wird, teilt ein Kompass auf der Gruppe unter dem Zeiger diese Gruppe an einer Seite oder fügt das Fenster als Registerkarte ein, die Rand-Guides docken es an einem Rand der gesamten Site an, und ein Vorschaurechteck in der Akzentfarbe zeigt den Platz, den es einnehmen wird. Esc bricht das Ziehen ab.
Splitter
Gruppen sitzen in verschachtelten Teilungen, nebeneinander oder gestapelt, mit Splittern dazwischen. Ein Ziehen ändert die Größe der Nachbarn live, und jede Gruppe behält mindestens MinPanelSize. SplitterSize legt die Breite der Splitter fest.
Flyouts zum automatischen Ausblenden
Die Pin-Schaltfläche schickt ein Werkzeugfenster in die Leiste seiner Seite. Fährt man AutoHideDelay Millisekunden lang über seine Registerkarte oder klickt darauf, gleitet das Fenster als Flyout über den Inhalt heraus und gleitet zurück, wenn der Benutzer woanders arbeitet. Im Code bewirkt Model.SetAutoHide dasselbe.
Schwebende Fenster
Legen Sie ein Fenster abseits der Guides ab, doppelklicken Sie auf seine Titelleiste oder wählen Sie Float in seinem Menü, und es wechselt in ein randloses Avalonia-Fenster, das Ihrem Fenster gehört und nicht in der Taskleiste erscheint. Ein schwebendes Fenster hat einen eigenen Baum, sodass weitere Fenster darin andocken können. Jedes schwebende Fenster verwendet die Skalierung seines eigenen Monitors.
Dokumentgruppen
Der Dokumentbereich hat Registerleisten mit angehefteten und geänderten Registerkarten, Schließen-Schaltflächen, einer Schaltfläche für neue Registerkarten (DocumentShowNewButton, OnNewDocument) und einer Schaltfläche mit der Registerkartenliste. Zieht man eine Dokument-Registerkarte an eine Seite, wird sie in eine neue Dokumentgruppe geteilt, und ein Doppelklick auf eine Registerkarte maximiert ihre Gruppe.
Dock-Tasten und Fenstermenüs
Strg+F6 wechselt zwischen den Dokumenten, Alt+F7 zwischen den Werkzeugfenstern, Umschalt+Esc blendet das aktive Werkzeugfenster aus und Alt+Minus öffnet das Fenstermenü mit Float, Dock, Auto Hide, Hide und Close. Strg+Tab, Strg+W und Strg+F4 werden ebenfalls als Dock-Tasten behandelt. Mit TsgcAvaloniaCommandPalette listet der Dock-Manager außerdem einen Window-Befehl pro Fenster auf.
Barrierefreiheit, RTL und HiDPI
Screenreader sehen die Site über UI Automation als Bereich namens "Dock site", mit Bereichen für die Gruppen, Registerkarten-Elementen für die Leisten und Trennern mit einem Bereichswert für die Splitter. Mit FlowDirection von rechts nach links wird die gesamte Site gespiegelt. Das Chrome wird mit der Render-Skalierung des Fensters gezeichnet.
Layout als JSON
SaveLayout, SaveLayoutToFile und SaveLayoutToStream schreiben die Anordnung, die LoadLayout-Methoden lesen sie wieder ein und begrenzen schwebende Fenster auf den Arbeitsbereich der Bildschirme. Der JSON-Text ist identisch mit dem des Delphi-Modells. OnRestorePanel erzeugt das Steuerelement eines Fensters, das ein gespeichertes Layout nennt und das Ihre Sitzung noch nicht geöffnet hat.
Themes, Fluent inklusive
Theme schaltet den Dock-Manager zwischen hellen, dunklen, kontrastreichen und benutzerdefinierten Themes um, und AccentColor legt den Akzent der aktiven Titelleiste fest. Setzen Sie sgcUIApplication.ThemePreset auf das Fluent-Preset, und der Dock-Manager zeichnet mit den WinUI-3-Farben, wie jedes andere sgcUI-Steuerelement.
Lokalisierte Texte
Die Beschriftungen des Dock-Chrome (Close, Auto Hide, Maximize, Float, Dock, Hide, "No open documents" und die Namen, die Screenreader vorlesen) laufen über sgcUILang, und die sgcUI-Übersetzungspakete decken Spanisch, Deutsch, Französisch, Italienisch, Niederländisch, Polnisch, Portugiesisch, Türkisch, Japanisch, Koreanisch und Chinesisch ab.