WorkbenchPanelTab class

Descriptor for one tab in a WorkbenchTabbedPanel.

Apps build the descriptor list and pass it to the primitive. The primitive owns the TabController, the tab strip, the close button, header spacing, and the tab content area; the descriptor only carries identity, label string, optional badge, and the content builder.

Canonical rendering. The tab strip renders the label the host supplies (§spec:chrome-typography-canon); base VS Code uppercases it. Hosts that want a count-style badge supply badge as a typed PanelTabBadge carrying the count; the shell paints the inline pill in the panel-active accent colour (matching the active-tab underline) — VS Code does not vary the badge by severity. Badges that don't fit the count-only shape belong in the panel content, not the tab strip — there is no widget escape hatch.

Annotations

Constructors

WorkbenchPanelTab({required String id, required String label, required WidgetBuilder contentBuilder, PanelTabBadge? badge})
const

Properties

badge PanelTabBadge?
Optional inline badge rendered next to the label.
final
contentBuilder WidgetBuilder
Builds the body for this tab. Called once per build cycle the tab is laid out — the primitive does not cache the result.
final
hashCode int
The hash code for this object.
no setterinherited
id String
Stable id used by hosts to focus a tab via WorkbenchTabbedPanel.onRegisterFocusTab.
final
label String
Tab label, rendered in the casing the host supplies (§spec:chrome-typography-canon).
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited