aboutsummaryrefslogtreecommitdiff
path: root/readme.md
diff options
context:
space:
mode:
Diffstat (limited to 'readme.md')
-rw-r--r--readme.md82
1 files changed, 82 insertions, 0 deletions
diff --git a/readme.md b/readme.md
new file mode 100644
index 0000000..89a7ea6
--- /dev/null
+++ b/readme.md
@@ -0,0 +1,82 @@
+Surgery Log
+===========
+
+# Notes
+- Location of `user://`: `~/.local/share/godot/app_userdata/`.
+
+# ToDo
+- [x] Datepicker: On click (without drag) reset velocity to 0; show and focus 'input' to allow introducing value.
+- [x] Selecting last (year?)/month/day and de-selecting it, moves value to next;
+- [x] Solve how entries are shared across db_screen and stage_screen;
+- [x] Remove db_entry;
+- [x] Rename db script/node to database;
+- [x] scrolling down on the database screen jumps to the end of the list immediatelly;
+- [x] edited entry does not show updated once saved;
+- [x] edited entry shows updated when selected then press back button;
+- [x] load/store database CSV file;
+- [x] export database to CSV file;
+- [x] allow to reset database;
+- [x] split touch logic from database (create TouchItemList);
+- [x] split touch logic from stage (create TouchVerticalContainer);
+- [x] load/store filters JSON file;
+- [x] import/export filters to CSV file;
+- [x] add option_sets buttons on stage screen:
+ - should show a pop-up with multiple options filtered according to current filters;
+ - allow options to be scrolled by dragging;
+ - selecting option puts that text on the associated LineEdit;
+- [x] add pop-up asking if changes are to be discarded once the stage screen's discard button is pressed;
+- [x] add pop-up confirming delete-entry action;
+- [x] edit and delete action buttons should be faded-out when no entry is selected;
+- [x] Sort option sets alphabetically;
+- [x] Check and request file access permissions on Android:
+ ```py
+ if OS.get_name() == "Android":
+ var has_permissions := false
+ while not has_permissions:
+ var permissions := Array(OS.get_granted_permissions())
+ if not permissions.has("android.permission.READ_EXTERNAL_STORAGE") \
+ or not permissions.has("android.permission.WRITE_EXTERNAL_STORAGE"):
+ OS.request_permissions()
+ # await get_tree().create_timer(1).timeout
+ yield(get_tree().create_timer(1), "timeout") # - for Godot 3 branch
+ else:
+ has_permissions = true
+ ```
+- [x] Fix the show option sets buttons; they are drawn over the input fields and hide inserted text;
+- [x] The stage control must be set to ignore the mouse, otherwise the touch-sensor conflicts with the built-in scroll;
+- [x] On database, selecting an entry and removing it will leave the action buttons visible while no entry is selected;
+- [x] Tweak 'POINTER_VELOCITY_DECAYING_FACTOR' and 'POINTER_VELOCITY_BOOST_FACTOR' on database and stage screens;
+- [x] Allow to parse option sets from database file;
+- [x] Check if import_option_sets, store_option_sets, store_database require the parameter save_changes; this requires changes on databse, stage and menu scripts;
+- [x] Maybe replace fonts with non-mono version;
+- [x] Fix option sets GUI element to provide word-wrap, otherwise long texts will be hidden;
+- [x] After save and load, entries opened on stage always detect changes (even when no change occurs);
+- [x] Add to popup:
+ - [x] title;
+ - [x] dismiss button;
+- [x] Hide dialogs title bar (appear in the top with 1 or 2 pixels height);
+- [x] Fix automation to automatically disconnect acceptance signal handlers when reject is chosen on file_picker/confirm_action;
+- [x] Use popup to display confirmation messages;
+- [x] Improve option sets: selecting outside optionset entry should select none; if no options are available, show nothing instead of "--";
+- [x] Set stage discard/save buttons side by side;
+- [x] Implement back button logic;
+ - on stage screen should show pop-up asking it changes are to be discarded;
+ - on file-pickers screen should close them;
+ - on about screen should close it;
+ - on auto-fill pop-up, should close it;
+ - on database screen, should deselect selected item, otherwise should quit the app;
+- [x] db entry should be printed as "%9s | %4s | %yyyy-%MM";
+- [x] Cleanup code:
+ - [x] Search by tags @DAM and TODO;
+ - [x] Rename dialog and popup classes;
+ - [x] Reorganize code files;
+- [ ] Create light theme;
+- [ ] Create theme entry in menu and save on settings file;
+- [ ] main/screen_controller is responsible for whos currently on focus, fade animations, input access (enable/disable), and back_key_notification handling.
+ For input use:
+ node.set_process_input(!pause)
+ node.set_process_unhandled_input(!pause)
+ node.set_process_unhandled_key_input(!pause)
+- [ ] Translations:
+ - https://docs.godotengine.org/en/stable/getting_started/workflow/assets/importing_translations.html
+ - https://docs.godotengine.org/en/stable/tutorials/i18n/internationalizing_games.html#introduction