HistoryPanel class

A panel that displays undo/redo command history with a position marker.

Renders a vertical list of command descriptions showing the undo/redo history stack. A centered marker separates undo (past) from redo (future) items. Compact mode limits visible items with "..." overflow indicators.

HistoryPanel(
  title: 'Edit History',
  undoItems: [
    HistoryEntry(description: 'Insert text'),
    HistoryEntry(description: 'Delete word'),
  ],
  redoItems: [
    HistoryEntry(description: 'Paste', isRedo: true),
  ],
)
Inheritance

Constructors

HistoryPanel({String title = 'History', List<HistoryEntry> undoItems = const [], List<HistoryEntry> redoItems = const [], HistoryPanelMode mode = HistoryPanelMode.compact, int compactLimit = 5, String markerText = '─── current ───', String undoIcon = '↶ ', String redoIcon = '↷ ', Style? titleStyle, Style? undoStyle, Style? redoStyle, Style? markerStyle, Color? background, EdgeInsets? padding, Key? key})

Properties

accessibilityLabel String?
Optional accessibility label.
no setterinherited
accessibilityRole String
Optional accessibility role.
no setterinherited
background Color?
Background color.
final
children List<Widget>
Child widgets that receive forwarded messages.
no setterinherited
compactLimit int
Maximum items to show per stack in compact mode (default: 5).
final
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
hashCode int
The hash code for this object.
no setterinherited
id String
Unique identifier for this widget.
no setterinherited
isEmpty bool
Whether the panel has no history items.
no setter
key Key?
Key for preserving widget identity.
finalinherited
length int
Total number of history items.
no setter
markerStyle Style?
Style for the position marker.
final
markerText String
Text for the current-position marker.
final
mode HistoryPanelMode
Display mode (compact or full).
final
padding EdgeInsets?
Padding inside the panel.
final
redoIcon String
Icon prefix for redo items.
final
redoItems List<HistoryEntry>
Redo stack entries (oldest first).
final
redoStyle Style?
Style for redo items (dimmed by default).
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
theme Theme
Access the current theme.
no setterinherited
title String
Panel title displayed at the top.
final
titleStyle Style?
Style for the title.
final
undoIcon String
Icon prefix for undo items.
final
undoItems List<HistoryEntry>
Undo stack entries (oldest first).
final
undoStyle Style?
Style for undo items.
final

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