diff options
Diffstat (limited to 'logic/database.gd')
| -rw-r--r-- | logic/database.gd | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/logic/database.gd b/logic/database.gd index c492321..438a2dd 100644 --- a/logic/database.gd +++ b/logic/database.gd @@ -93,8 +93,6 @@ func item_selected(index: int): func clear_selection(): - if selected_idx >= 0: - set_item_text(selected_idx, get_entry_view(db[selected_idx])) selected_idx = -1 unselect_all() @@ -141,18 +139,23 @@ func save(database_entry: Dictionary): add_item(get_entry_view(database_entry)) call_deferred("scroll_down") next_selected_idx = db.size() - 1 - - store_database() + select(next_selected_idx) - item_selected(next_selected_idx) # Calling "select" does not trigger the "item_selected" signal. - v_scroll_bar.value = float(next_selected_idx)/float(db.size()) * v_scroll_bar.max_value - (v_scroll_bar.page * 0.5) + emit_signal("item_selected", next_selected_idx) # Calling "select" does not trigger the "item_selected" signal. + set_item_text(selected_idx, get_entry_view(db[selected_idx])) + v_scroll_bar.value = float(selected_idx)/float(db.size()) * v_scroll_bar.max_value - (v_scroll_bar.page * 0.5) + + store_database() + staged_idx = -1 self.visible = true + grab_focus() func discard(): staged_idx = -1 self.visible = true + grab_focus() func load_database(file_path: String = DATABASE_FILE_PATH): @@ -179,8 +182,6 @@ func load_database(file_path: String = DATABASE_FILE_PATH): _: entry[field_name] = field_value db.append(entry) - - fake_database() func store_database(file_path: String = DATABASE_FILE_PATH): @@ -234,16 +235,19 @@ static func set_entry_date(entry: Dictionary, date: String): func fake_database(): + self.clear() db.resize(0) for idx in range(500): var date_year = 1 + int(float(idx) / 365.0) var date_month = idx % 12 var date_day = idx % 365 - db.append(instance_entry({ + var fake_entry = instance_entry({ "process_id": "%06d" % idx, "surgery_id": "s%05d" % idx, "date": "%04d-%02d-%02d" % [date_year, date_month, date_day] - })) + }) + db.append(fake_entry) + self.add_item(get_entry_view(fake_entry)) func pointer_input_handler(pointer: PointerInputSensor.PointerInputData): |
