(loadFrom "nat-archive-tool" "src/nat/Lib.kiss") (loadFrom "kiss-godot" "src/kiss_godot/Util.kiss") (defNew [&prop :GodotUI godotUI &prop :RootNode rootNode] (super godotUI ->[archive e] (hasComponent e Name) // Create Entry node: ->[archive e pos &opt ui] (let [:PackedScene ePanelScene (GD.load "res://EntryPanel.tscn") :PanelContainer ePanel (cast (ePanelScene.instance)) :Label eLabel (getNode ePanel "EntryLabel")] (set eLabel.text (readComponentOr e Name "")) (pgEntries.addChild ePanel) ePanel) // Draw line: ->[archive e pos e2 pos2 &opt ui] null // Remove Entry node: ->[archive e &opt ui] null)) (prop &mut :ScrollContainer pgScrollContainer null) (prop &mut :Node pgEntries null) (method &override :Void switchPlaygroundKey [:String key] (set pgScrollContainer (getNode rootNode.pgTabs key)) (set pgEntries (getNode pgScrollContainer "Entries")) (super.switchPlaygroundKey key)) (method &override :Void clear [:ColorF color] null)