aboutsummaryrefslogtreecommitdiff
path: root/logic/database.gd
diff options
context:
space:
mode:
Diffstat (limited to 'logic/database.gd')
-rw-r--r--logic/database.gd24
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):