StatusLine class

A horizontal status bar with left, center, and right regions.

Each region accepts typed StatusItems or raw Widgets. The center region is automatically centered in the space between left and right. Spacer items expand to fill available space within their region.

StatusLine(
  left: [StatusItem.text('[INSERT]')],
  center: [StatusItem.text('file.rs')],
  right: [
    StatusItem.keyHint('^C', 'Quit'),
    StatusItem.text('Ln 42, Col 10'),
  ],
)
Inheritance

Constructors

StatusLine({List<StatusItem> left = const [], List<StatusItem> center = const [], List<StatusItem> right = const [], Color? background, Color? foreground, EdgeInsets? padding, String? separator, int gap = 1, Key? key})

Properties

accessibilityLabel String?
Optional accessibility label.
no setterinherited
accessibilityRole String
Optional accessibility role.
no setterinherited
background Color?
Background color. Defaults to Theme.surface.
final
center List<StatusItem>
Items centered between left and right regions.
final
children List<Widget>
Child widgets that receive forwarded messages.
no setterinherited
debugRenderObjectPassthrough bool
Whether this widget is intentionally transparent to render-object layouts.
no setterinherited
degradationSignal WidgetDegradationSignal
Signal that controls this widget's render budget behavior.
no setterinherited
focusable bool
Whether this widget can receive keyboard focus.
no setterinherited
foreground Color?
Default foreground color. Defaults to Theme.onSurface.
final
gap int
Gap between non-spacer items when no separator is set (default: 1).
final
hashCode int
The hash code for this object.
no setterinherited
id String
Unique identifier for this widget.
no setterinherited
isEmpty bool
Whether the status line has any content.
no setter
key Key?
Key for preserving widget identity.
finalinherited
left List<StatusItem>
Items aligned to the left edge.
final
padding EdgeInsets?
Padding inside the status line.
final
Items aligned to the right edge.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
separator String?
Separator string between non-spacer items (e.g., " │ "). When null, items are separated by gap spaces.
final
theme Theme
Access the current theme.
no setterinherited

Methods

build(BuildContext context) Widget
Describes the part of the UI represented by this widget.
override
buildCachedView<T>(T builder(), Object? cacheKey) → T
Returns a cached view if the cache key matches.
inherited
handleInit() Cmd?
Override this instead of init for widget-specific initialization.
inherited
handleIntercept(Msg msg) → (Widget, Cmd?)
Override this to handle messages before they reach children.
inherited
handleUpdate(Msg msg) → (Widget, Cmd?)
Override this to handle messages specific to this widget.
inherited
init() Cmd?
Called once when the widget is first mounted.
inherited
invalidateCachedView() → void
Clears any cached view for this widget.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
shouldRenderAt(DegradationLevel degradationLevel, {required bool subtreeHasFocusedWidget}) bool
Whether this widget should participate in the current render when degradationLevel is active.
inherited
toString() String
A string representation of this object.
inherited
update(Msg msg) → (Model, Cmd?)
Handles messages by forwarding to children then calling handleUpdate.
inherited
view() Object
Renders the widget to a string or View.
inherited

Operators

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