tool
extends LineEdit

onready var editor:TextEditor = owner
var fr:FuncRef

func _ready():
	var _e
	_e = connect("text_entered", self, "_enter")
	_e = connect("focus_exited", self, "_lost_focus")
	
	add_font_override("font", TextEditor.FONT_R)

func _unhandled_key_input(e):
	if e.scancode == KEY_ESCAPE and e.pressed:
		fr = null
		hide()
		get_tree().set_input_as_handled()

func display(t:String, obj:Object, fname:String):
	text = t
	fr = funcref(obj, fname)
	show()
	call_deferred("grab_focus")

func _lost_focus():
	fr = null
	hide()

func _enter(t:String):
	fr.call_func(t)
	hide()
