extends MenuButton @onready var submenu = $"Open recent" func _ready() -> void: var popup = self.get_popup() popup.id_pressed.connect(_handle_popup) popup.add_item("New") popup.add_separator() popup.add_item("Open") submenu.get_parent().remove_child(submenu) popup.add_submenu_node_item("Open recent", submenu, 3) submenu.id_pressed.connect(_open_recent) for file in CAD.recent_files: var id = submenu.item_count submenu.add_item(file.get_file().get_basename(), id) submenu.set_item_metadata(id, file) popup.add_separator() popup.add_item("Save") func _open_recent(id: int): CAD.open_project(submenu.get_item_metadata(id)) func _handle_popup(id: int) -> void: var bname = self.get_popup().get_item_text(id) if $content.has_node(bname): var node = $content.get_node(bname) node.visible=true