TuiEditor::PropertyInspector
Inherits Tui::Panel / Tui::Widget / Tui::Reactive / Reference / Object
Constants
HALIGN_OPTIONS = ["stretch", "left", "center", "right"]
PROPERTIES = {"Panel" => [PropertyField.new("title", "Title"), PropertyField.new("id", "ID"), PropertyField.new("align", "Align", :select, VALIGN_OPTIONS)], "VBox" => [PropertyField.new("id", "ID"), PropertyField.new("align", "Align", :select, VALIGN_OPTIONS)], "HBox" => [PropertyField.new("id", "ID"), PropertyField.new("align", "Align", :select, HALIGN_OPTIONS)], "VStack" => [PropertyField.new("id", "ID"), PropertyField.new("align", "Align", :select, VALIGN_OPTIONS)], "HStack" => [PropertyField.new("id", "ID"), PropertyField.new("align", "Align", :select, HALIGN_OPTIONS)], "Grid" => [PropertyField.new("id", "ID"), PropertyField.new("columns", "Columns", :number), PropertyField.new("align", "Align", :select, VALIGN_OPTIONS)], "Button" => [PropertyField.new("id", "ID"), PropertyField.new("label", "Label")], "Input" => [PropertyField.new("id", "ID"), PropertyField.new("placeholder", "Placeholder")], "Checkbox" => [PropertyField.new("id", "ID"), PropertyField.new("label", "Label")], "Switch" => [PropertyField.new("id", "ID")], "Slider" => [PropertyField.new("id", "ID"), PropertyField.new("min", "Min", :number), PropertyField.new("max", "Max", :number)], "Label" => [PropertyField.new("id", "ID"), PropertyField.new("text", "Text")], "Header" => [PropertyField.new("id", "ID"), PropertyField.new("title", "Title")], "Footer" => [PropertyField.new("id", "ID")], "ProgressBar" => [PropertyField.new("id", "ID"), PropertyField.new("value", "Value", :number)], "Rule" => [PropertyField.new("id", "ID")], "Tree" => [PropertyField.new("id", "ID")], "ListView" => [PropertyField.new("id", "ID")], "DataTable" => [PropertyField.new("id", "ID")], "Log" => [PropertyField.new("id", "ID")]}
Property definitions per widget type
VALIGN_OPTIONS = ["stretch", "top", "center", "bottom"]
Alignment options
Constructors
new
SourceInstance methods
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
node=(node : CanvasNode | Nil) : Nil
Sourceon_change
Source