extends Control class_name Stage signal save # (database_entry: Dictionary) signal discard # () onready var process_id: LineEdit = get_node("controls/process_id") onready var surgery_id: LineEdit = get_node("controls/surgery_id") onready var date: DatePicker = get_node("controls/date_picker") onready var place: LineEdit = get_node("controls/place") onready var anesthetic: LineEdit = get_node("controls/anesthetic") onready var first_assistant: LineEdit = get_node("controls/first_assistant") onready var type: LineEdit = get_node("controls/type") onready var sub_type: LineEdit = get_node("controls/sub_type") onready var sub_sub_type: LineEdit = get_node("controls/sub_sub_type") onready var pathology: LineEdit = get_node("controls/pathology") onready var intervention: LineEdit = get_node("controls/intervention") onready var is_urgency: Button = get_node("controls/is_urgency") onready var notes: LineEdit = get_node("controls/notes") onready var save_button: Button = get_node("controls/save") onready var discard_button: Button = get_node("controls/discard") func _ready(): save_button.connect("pressed", self, "save_action") discard_button.connect("pressed", self, "discard_action") func save_action(): self.visible = false emit_signal("save", get_stage()) func discard_action(): self.visible = false emit_signal("discard") func set_stage(entry: Dictionary): process_id.text = entry.process_id surgery_id.text = entry.surgery_id date.set_date(entry.date_year, entry.date_month, entry.date_day) place.text = entry.place anesthetic.text = entry.anesthetic first_assistant.text = entry.first_assistant type.text = entry.type sub_type.text = entry.sub_type sub_sub_type.text = entry.sub_sub_type pathology.text = entry.pathology intervention.text = entry.intervention is_urgency.pressed = entry.is_urgency notes.text = entry.notes self.scroll_vertical = 0 # @DAM TODO func get_stage() -> Dictionary: var entry: Dictionary entry.process_id = process_id.text entry.surgery_id = surgery_id.text entry.date_year = date.get_year() entry.date_month = date.get_month() entry.date_day = date.get_day() entry.place = place.text entry.anesthetic = anesthetic.text entry.first_assistant = first_assistant.text entry.type = type.text entry.sub_type = sub_type.text entry.sub_sub_type = sub_sub_type.text entry.pathology = pathology.text entry.intervention = intervention.text entry.is_urgency = is_urgency.pressed entry.notes = notes.text return entry func _notification(what: int): if what == MainLoop.NOTIFICATION_WM_GO_BACK_REQUEST: discard_action() func _unhandled_input(event): get_node("/root/main/debug").text += "%s\n" % event.to_string() func _unhandled_key_input(event): get_node("/root/main/debug").text += "%s\n" % event.to_string()