class

TuiEditor::WidgetPalette

Inherits Tui::Panel / Tui::Widget / Tui::Reactive / Reference / Object

Constants

WIDGETS = [WidgetDef.new("Panel", "□", "Containers", {"title" => "Panel"}), WidgetDef.new("VBox", "┃", "Containers", {"align" => "stretch"}), WidgetDef.new("HBox", "━", "Containers", {"align" => "stretch"}), WidgetDef.new("VStack", "↓", "Containers", {"align" => "top"}), WidgetDef.new("HStack", "→", "Containers", {"align" => "left"}), WidgetDef.new("Grid", "▦", "Containers", {"columns" => "2", "align" => "stretch"}), WidgetDef.new("Button", "▣", "Input", {"label" => "Button"}), WidgetDef.new("Input", "▭", "Input", {"placeholder" => "Enter text"}), WidgetDef.new("Checkbox", "☐", "Input", {"label" => "Checkbox"}), WidgetDef.new("Switch", "◐", "Input"), WidgetDef.new("Slider", "─●─", "Input", {"min" => "0", "max" => "100"}), WidgetDef.new("Label", "T", "Display", {"text" => "Label"}), WidgetDef.new("Header", "▔", "Display", {"title" => "Header"}), WidgetDef.new("Footer", "▁", "Display"), WidgetDef.new("ProgressBar", "▓", "Display", {"value" => "0.5"}), WidgetDef.new("Rule", "─", "Display"), WidgetDef.new("Tree", "├", "Data"), WidgetDef.new("ListView", "≡", "Data"), WidgetDef.new("DataTable", "⊞", "Data"), WidgetDef.new("Log", "▤", "Data")]

All available widgets

Constructors

Instance methods

dragging?
Source
handle_event(event : Tui::Event) : Bool

KISS event handling with capture support Flow: on_capture → children → on_event Override on_capture to intercept before children Override on_event to handle after children

Source
on_drag_start
Source
on_select
Source
render(buffer : Tui::Buffer, clip : Tui::Rect) : Nil

Override to render widget content

Source
selected_widget
Source