diff options
| author | dam <dam@gudinoff> | 2021-12-31 15:41:10 +0000 |
|---|---|---|
| committer | dam <dam@gudinoff> | 2021-12-31 15:41:10 +0000 |
| commit | 7f0580b6b49a9dbafc54a0190bf573503c54417a (patch) | |
| tree | 861e921a19c3c39e41ca039bcf5e7a869dcb86eb /logic | |
| parent | 5b863fdc25848817ef11f0c1a33ef45a4160aa2c (diff) | |
| download | surgery-log-7f0580b6b49a9dbafc54a0190bf573503c54417a.tar.zst surgery-log-7f0580b6b49a9dbafc54a0190bf573503c54417a.zip | |
Prototype implementation of touch scroll on database and stage screens.
Diffstat (limited to 'logic')
| -rw-r--r-- | logic/database.gd | 7 | ||||
| -rw-r--r-- | logic/stage.gd | 47 |
2 files changed, 46 insertions, 8 deletions
diff --git a/logic/database.gd b/logic/database.gd index ea02324..4f3e613 100644 --- a/logic/database.gd +++ b/logic/database.gd @@ -27,11 +27,11 @@ var db: Array var selected_idx: int var staged_idx: int +onready var stage: Stage = get_node("/root/main/stage") onready var delete_button: Button = get_node("actions/delete") onready var edit_button: Button = get_node("actions/edit") onready var add_button: Button = get_node("actions/add") - -onready var stage: Stage = get_node("/root/main/stage") +onready var v_scroll_bar: ScrollBar = get_v_scroll() func _init(): @@ -111,7 +111,7 @@ func add_action(): func scroll_down(): - get_v_scroll().value = get_v_scroll().max_value + v_scroll_bar.value = v_scroll_bar.max_value func save(database_entry: Dictionary): @@ -129,6 +129,7 @@ func save(database_entry: Dictionary): 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) staged_idx = -1 self.visible = true diff --git a/logic/stage.gd b/logic/stage.gd index ac5e9aa..f7cced4 100644 --- a/logic/stage.gd +++ b/logic/stage.gd @@ -4,6 +4,22 @@ class_name Stage signal save # (database_entry: Dictionary) signal discard # () +#onready var process_id: LineEdit = get_node("touch_scroll/controls/process_id") +#onready var surgery_id: LineEdit = get_node("touch_scroll/controls/surgery_id") +#onready var date: DatePicker = get_node("touch_scroll/controls/date_picker") +#onready var place: LineEdit = get_node("touch_scroll/controls/place") +#onready var anesthetic: LineEdit = get_node("touch_scroll/controls/anesthetic") +#onready var first_assistant: LineEdit = get_node("touch_scroll/controls/first_assistant") +#onready var type: LineEdit = get_node("touch_scroll/controls/type") +#onready var sub_type: LineEdit = get_node("touch_scroll/controls/sub_type") +#onready var sub_sub_type: LineEdit = get_node("touch_scroll/controls/sub_sub_type") +#onready var pathology: LineEdit = get_node("touch_scroll/controls/pathology") +#onready var intervention: LineEdit = get_node("touch_scroll/controls/intervention") +#onready var is_urgency: Button = get_node("touch_scroll/controls/is_urgency") +#onready var notes: LineEdit = get_node("touch_scroll/controls/notes") +#onready var save_button: Button = get_node("touch_scroll/controls/save") +#onready var discard_button: Button = get_node("touch_scroll/controls/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") @@ -21,9 +37,30 @@ 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") + + + for it in get_node("controls").get_children(): +# print("%s" % it.name) + match it.name: + "date_picker", "save", "discard": + print("- %s" % it.name) + + _: +# "first_assistant": + print("+ %s" % it.name) + var touch_scroll = TouchScroll.new() + touch_scroll.name = "touch_scroll" + touch_scroll.click_target_path = "../" + touch_scroll.scroll_target_path = "../../../" + touch_scroll.scroll_bar_get_method = "get_v_scrollbar" + touch_scroll.mouse_default_cursor_shape = Control.CURSOR_IBEAM + (it as Control).add_child(touch_scroll) + touch_scroll.anchor_right = 1.0 + touch_scroll.anchor_bottom = 1.0 func save_action(): @@ -88,11 +125,11 @@ func get_stage() -> Dictionary: # @DAM Testing. Needs all children controllers to have Mouse > Filter : Pass. -func _gui_input(event): - accept_event() - if event is InputEventScreenDrag: - self.scroll_vertical -= event.relative.y - return +#func _gui_input(event): +# accept_event() +# if event is InputEventScreenDrag: +# self.scroll_vertical -= event.relative.y +# return func _notification(what: int): |
