Dockbare Panel-Tabs nur als Symbol

Die Tab-Leiste zeigt je Panel nur noch ein Inline-SVG-Icon; der Titel
wandert in Tooltip (title) und aria-label. PanelDef bekommt ein optionales
icon-Feld, die sieben eingebauten Panels je ein schlichtes stroke-Icon
(currentColor, erbt die Tab-Farbe). Fehlt ein Icon (Plugin), fällt der Tab
auf den Titeltext zurück. Tabs sind jetzt kompakt und quadratisch; Klick-,
Drag- und Dock-Logik unverändert.
This commit is contained in:
2026-07-03 23:42:39 +02:00
parent 1086225f7b
commit b03614c35b
5 changed files with 141 additions and 12 deletions
+8
View File
@@ -136,6 +136,14 @@ export interface PanelDef {
* unverändert zurück (Plugins können also auch einen fertigen Text setzen).
*/
title: string;
/**
* Symbol für den Tab in der TabStrip (der Titeltext erscheint dort nur noch
* als Tooltip). Erwartet eine kleine Inline-SVG (~16×16, stroke=currentColor),
* damit sie die Textfarbe des Tabs (inaktiv/hover/aktiv) übernimmt. Fehlt es
* (z. B. bei einem Plugin-Panel ohne eigenes Icon), fällt die TabStrip auf den
* Titeltext zurück.
*/
icon?: ReactNode;
/** Rendert den Panel-Inhalt. Erhält den (generischen) PanelContext. */
render: (ctx: PanelContext) => ReactNode;
/**