pollen-not-included/addons/gdUnit4/src/ui/EditorFileSystemControls.gd
2024-05-02 09:36:31 +01:00

33 lines
1.3 KiB
GDScript

# A tool to provide extended filesystem editor functionallity
class_name EditorFileSystemControls
extends RefCounted
# Returns the EditorInterface instance
static func editor_interface() -> EditorInterface:
if not Engine.has_meta("GdUnitEditorPlugin"):
return null
var plugin :EditorPlugin = Engine.get_meta("GdUnitEditorPlugin")
return plugin.get_editor_interface()
# Register the given context menu to the filesystem dock
# Is called when the plugin is activated
# The filesystem popup is connected to the EditorFileSystemContextMenuHandler
static func register_context_menu(menu :Array[GdUnitContextMenuItem]) -> void:
Engine.get_main_loop().root.call_deferred("add_child", EditorFileSystemContextMenuHandler.new(menu))
# Unregisteres all registerend context menus and gives the EditorFileSystemContextMenuHandler> free
# Is called when the plugin is deactivated
static func unregister_context_menu() -> void:
EditorFileSystemContextMenuHandler.dispose()
static func _print_menu(popup :PopupMenu):
for itemIndex in popup.item_count:
prints( "get_item_id", popup.get_item_id(itemIndex))
prints( "get_item_accelerator", popup.get_item_accelerator(itemIndex))
prints( "get_item_shortcut", popup.get_item_shortcut(itemIndex))
prints( "get_item_text", popup.get_item_text(itemIndex))
prints()