Leave only one track type, WIP: track deletion.

This commit is contained in:
2025-07-27 23:52:25 +02:00
parent 90e85f5404
commit ecadfb7033
15 changed files with 190 additions and 218 deletions

View File

@@ -1,7 +1,45 @@
class_name Track
extends Control
extends Button
signal on_deleted
signal on_renamed
signal on_duplicated
# Called when the node enters the scene tree for the first time.
func _ready():
pass # Replace with function body.
var menu: PopupMenu = $PopupMenu
menu.add_item("Rename", 0)
menu.add_item("Delete", 1)
menu.add_item("Duplicate", 2)
menu.id_pressed.connect(_on_menu_option)
func _on_menu_option(id: int):
match id:
0:
rename()
1:
delete()
2:
duplicate_track()
pass
func delete():
queue_free()
var idx = get_index()
print(idx)
on_deleted.emit(idx)
pass
func rename():
%TrackName.grab_focus()
pass
func duplicate_track():
pass
func _gui_input(event):
if event is InputEventMouseButton and event.button_index == MOUSE_BUTTON_RIGHT and event.pressed:
var popup = %PopupMenu
#%PopupMenu.popup(get_global_mouse_position())
var pos = get_global_mouse_position()
var rect = Rect2i(pos, popup.get_contents_minimum_size())
popup.popup(rect)