@tool class_name ChatHistoryEntry extends HBoxContainer signal modified(entry:ChatHistoryEntry) @onready var role_option_list: OptionButton = %RoleOptionList @onready var content_txt: TextEdit = %ContentTxt @onready var forget_check_box: CheckBox = %ForgetCheckBox func initialize(data:Dictionary) -> void: await ready if data["role"] == "assistant": role_option_list.selected = 1 content_txt.text = data["content"] func get_role() -> String: return role_option_list.text func get_content() -> String: return content_txt.text func should_be_forgotten() -> bool: return forget_check_box.button_pressed func _on_content_txt_text_changed() -> void: modified.emit(self) func _on_role_option_list_item_selected(index: int) -> void: modified.emit(self)