Files
audioeditor/Scripts/Track.gd

46 lines
867 B
GDScript

class_name Track
extends Button
signal on_deleted
signal on_renamed
signal on_duplicated
func _ready():
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)