Open
Conversation
4 tasks
Jahnavidarisetti
requested changes
Mar 30, 2026
Collaborator
Jahnavidarisetti
left a comment
There was a problem hiding this comment.
Inline editing is currently enabled in both Manual and Automatic modes, which allows unintended edits during Automatic Mode. Please add a guard to restrict _enter_inline_edit so it only runs in Manual Mode and keeps cells read-only otherwise.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #400
What was changed?
The Data Collection page table has been updated. Specifically, the way users interact with empty (None) cells in the Treeview has been modified. A new inline editing component (CTkEntry) is now overlaid directly onto the table cell, replacing the need to launch the ChangeMeasurementsDialog popup for empty values.
Why was it changed?
This change addresses a workflow interruption during manual data collection. Previously, clicking on a None value to input data would open a separate window/popup, which was slow and disruptive to the data entry flow. By allowing inline editing, the interface becomes much faster and more responsive, allowing researchers to quickly input data down the list without navigating through extra windows.
How was it changed?
Modified data_collection_ui.py.
Added a single-click event bindingto detect exactly which cell the user clicks using self.table.identify(...).
Implemented _enter_inline_edit(self, row_id, column_id) which calculates the screen coordinates of the target cell using self.table.bbox() and instantly places a CTkEntry widget perfectly over the cell.
Added event bindings to the temporary CTkEntry widget: validates the input and seamlessly pipes it into the pre-existing self.change_selected_value(...) database method. and safely destroy the widget without saving if the user cancels.
Updated _open_selected_for_edit (the existing double-click handler) with a guard clause to intentionally ignore/return early on None values, ensuring the old popup window is no longer created for empty data points.