2 extends DialogicVisualEditorField
4 ## Event block field that allows entering multiline text (mainly text event).
6 @onready var code_completion_helper: Node = find_parent('EditorsManager').get_node('CodeCompletionHelper')
10 ################################################################################
12 func _ready() -> void:
13 self.text_changed.connect(_on_text_changed)
14 self.syntax_highlighter = code_completion_helper.text_syntax_highlighter
17 func _load_display_info(info:Dictionary) -> void:
21 func _set_value(value:Variant) -> void:
22 self.text = str(value)
25 func _autofocus() -> void:
31 #region SIGNAL METHODS
32 ################################################################################
34 func _on_text_changed(value := "") -> void:
35 value_changed.emit(property_name, self.text)
40 #region AUTO COMPLETION
41 ################################################################################
43 ## Called if something was typed
44 func _request_code_completion(force:bool):
45 code_completion_helper.request_code_completion(force, self, 0)
48 ## Filters the list of all possible options, depending on what was typed
49 ## Purpose of the different Kinds is explained in [_request_code_completion]
50 func _filter_code_completion_candidates(candidates:Array) -> Array:
51 return code_completion_helper.filter_code_completion_candidates(candidates, self)
54 ## Called when code completion was activated
55 ## Inserts the selected item
56 func _confirm_code_completion(replace:bool) -> void:
57 code_completion_helper.confirm_code_completion(replace, self)
62 #region SYMBOL CLICKING
63 ################################################################################
65 ## Performs an action (like opening a link) when a valid symbol was clicked
66 func _on_symbol_lookup(symbol, line, column):
67 code_completion_helper.symbol_lookup(symbol, line, column)
70 ## Called to test if a symbol can be clicked
71 func _on_symbol_validate(symbol:String) -> void:
72 code_completion_helper.symbol_validate(symbol, self)