-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Moving from tabs to a dropdown style widget #25
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## dev #25 +/- ##
==========================================
- Coverage 82.35% 82.08% -0.27%
==========================================
Files 9 9
Lines 408 402 -6
==========================================
- Hits 336 330 -6
Misses 72 72 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool - looks good.
Maybe think about adding high-level tests checking things like "does the napari plugin have the expected number of widgets with the expected/type name"? (in a separate PR)
From a UI/UX perspective, I wonder whether the Advanced Setting part should be somehow marked as different to the others, because the current UI might imply that it's a mandatory rather than optional step on the way to clicking the "Run" button? (should be a different issue that may already exist?)
Sounds good! I've made issues to keep track of these suggestions. |
* Moving from tabs to a dropdown style widget (#25) * Fixed contents margins * Added brainglobe-utils as dependency * Added min dependency version for brainglobe-utils * Add option to scale sample image (#26) * Fixed contents margins * Scaling of sample image added to adjust moving image dropdown * Added brainglobe-utils as dependency * Added error message when no images selected * Added tests for scaling * Added tests to check multiple scale_factors * Cache the moving image data to allow scaling image multiple times * Fixed tests by removing (0,0) case add guard in _on_scale_image in registration_widget.py * Fixed tests * Add docstring to _on_scale_moving_image * Replaced all curr_ variable names with current_ * Added units to pixel size selection, set max range to be 100 * Allow free rotation of the atlas (#36) * Fixed contents margins * Scaling of sample image added to adjust moving image dropdown * Added brainglobe-utils as dependency * Added error message when no images selected * Atlas rotation working using scipy * Pitch, yaw, roll implemented using one affine transform * Dask loading for both the reference atlas and the rotation * Added a 'Reset Atlas' button, blocked while dask computes the rotation to avoid race conditions * Rotate atlas button also greyed out while daks processes the rotation * Use the update upload_pypi action (#29) See neuroinformatics-unit/movement#108 * Added elastix Logs directory to .gitignore * Fixed tests * Moved run_registration to be imported just as run button is clicked to avoid long boot times * Atlas rotation works again (might relate to napari 0.4.19 * Added test for atlas_rotation_signal from AdjustMovingImage view * [pre-commit.ci] pre-commit autoupdate (#30) updates: - [github.com/astral-sh/ruff-pre-commit: v0.1.9 → v0.2.0](astral-sh/ruff-pre-commit@v0.1.9...v0.2.0) - [github.com/psf/black: 23.12.1 → 24.1.1](psf/black@23.12.1...24.1.1) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * [pre-commit.ci] pre-commit autoupdate (#31) updates: - [github.com/astral-sh/ruff-pre-commit: v0.2.0 → v0.3.5](astral-sh/ruff-pre-commit@v0.2.0...v0.3.5) - [github.com/psf/black: 24.1.1 → 24.3.0](psf/black@24.1.1...24.3.0) - [github.com/pre-commit/mirrors-mypy: v1.8.0 → v1.9.0](pre-commit/mirrors-mypy@v1.8.0...v1.9.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * Import header from brainglobe-utils (#33) * import header from brainglobe-utils * split package name over two lines * remove brainglobe png from manifest * add brainglobe-utils dependency * Update requirements (#34) * import header from brainglobe-utils * split package name over two lines * remove brainglobe png from manifest * add brainglobe-utils dependency * Switched from bg-atlasapi to brainglobe-atlasapi * Added lxml_html_clean explicitly to requirements * Pinned itk to 5.4rc2 for now as 5.4rc3 cased a seg fault * Undo itk pin --------- Co-authored-by: Kimberly Meechan <[email protected]> * add codecov token (#35) * Added tests for calculate_rotated_bounding_box * Fixed docstrings for functions in utils.py * Keep track of napari layers for the atlas and atlas annotations in the napari widget class * Added tests for atlas rotation * Fixed pre-commit * Add test for reset_atlas in adjust_moving_image_view * Add caching * Update the function calls in test_adjust_moving_image_view * Apply suggestions from code review Co-authored-by: Alessandro Felder <[email protected]> * Applied suggestions from code review * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Applied suggestions from code review --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kimberly Meechan <[email protected]> Co-authored-by: Alessandro Felder <[email protected]> * Cleaned up a few things * Mark 'Advanced Settings' as optional (#48) * Info message when running BrainGlobe Registration plugin with no atlas installed (#46) * added error when no atlas found * added error when no atlas found * Update brainglobe_registration/registration_widget.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/registration_widget.py Co-authored-by: Igor Tatarnikov <[email protected]> * changes to info message * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/registration_widget.py Co-authored-by: Igor Tatarnikov <[email protected]> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * parent_widget * parent_widget --------- Co-authored-by: Igor Tatarnikov <[email protected]> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * Clean up widget (#51) * Cleaned up rogue widget duplication * Added parent to parameters_tab * Fix slow plugin loading (#54) * Filter Images (#52) * work_in_progress * filter_images * filter_images * filter_images * filter_images * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/utils/utils.py Co-authored-by: Igor Tatarnikov <[email protected]> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: Igor Tatarnikov <[email protected]> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * Communicate napari layer deletions appropriately to the plugin (#49) * layer_deletion * Update brainglobe_registration/registration_widget.py Co-authored-by: Igor Tatarnikov <[email protected]> * layer_deletion_edits * Made pytest happy * Update brainglobe_registration/registration_widget.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/registration_widget.py Co-authored-by: Igor Tatarnikov <[email protected]> * Update brainglobe_registration/registration_widget.py Co-authored-by: Igor Tatarnikov <[email protected]> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * updated_layer * fixed manual vs automatic deletion * fixed manual vs automatic deletion * Refactored some old code to avoid duplication * add comments --------- Co-authored-by: Igor Tatarnikov <[email protected]> Co-authored-by: IgorTatarnikov <[email protected]> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kimberly Meechan <[email protected]> Co-authored-by: Alessandro Felder <[email protected]> Co-authored-by: saarah815 <[email protected]>
Before submitting a pull request (PR), please read the contributing guide.
Please fill out as much of this template as you can, but if you have any problems or questions, just leave a comment and we will help out :)
Description
What is this PR
Why is this PR needed?
This PR replaces tabs with collapsible compartments to guide the user through the workflow without overloading the screen with all possible options.
What does this PR do?
Use the
CollapsibleWidgetContainer
frombrainglobe-utils
to organize the widgets displayed by the plugin.How has this PR been tested?
All previous tests pass, plugin function has been examined visually.
Is this a breaking change?
No.
Does this PR require an update to the documentation?
No.
If any features have changed, or have been added. Please explain how the documentation has been updated (and link to the associated PR). See here for details.
Checklist: