Skip to content
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

Dev #129

Merged
merged 30 commits into from
Jan 27, 2025
Merged

Dev #129

merged 30 commits into from
Jan 27, 2025

Conversation

Jordan-Pierce
Copy link
Owner

Handles #119

Jordan-Pierce and others added 26 commits January 23, 2025 16:36
Implement the `update_tile_graphics` method in `coralnet_toolbox/Tile/TileInference/QtBase.py`.

* Create a grid of tiles on the image in the annotation window using tile parameters.
* Set each tile to a random color with a black dotted border and 50% transparency.
* Add the created tiles to the `tile_graphics` list and display them in the annotation window.
* Clear the tile graphics from the annotation window before updating.
Implement update_tile_graphics method in QtBase.py
Move the annotation size spin box to the status bar and dynamically show/hide it based on the active tool.

* Move the annotation size spin box from the parameters section widget to the status bar layout in `coralnet_toolbox/QtMainWindow.py`.
* Add logic to show the annotation size spin box only when the patch tool is active and hide it otherwise in `coralnet_toolbox/QtMainWindow.py`.
* Update the `toggle_tool` method in `coralnet_toolbox/QtMainWindow.py` to handle the visibility of the annotation size spin box.
* Add logic in `coralnet_toolbox/Tools/QtPatchTool.py` to handle the visibility of the annotation size spin box when the patch tool is activated or deactivated.
Move annotation size spin box to status bar
Wrap each widget in the `right_layout` in `coralnet_toolbox/QtMainWindow.py` inside separate accordion dropdowns.

* Add a new method `create_accordion` to create accordion dropdowns.
* Modify the `__init__` method to wrap `image_window` and `confidence_window` in accordion dropdowns.
* Update the `right_layout` to add the accordion dropdowns instead of the widgets directly.
Add accordion dropdowns to right layout
…ropdowns

Revert "Add accordion dropdowns to right layout"
Add functionality to select and delete multiple images and their annotations in the `ImageWindow` class.

* Modify the `__init__` method to set the table widget to have 3 columns: "Select", "Image Name", and "Annotations".
* Add checkboxes in the first column of the table widget in the `update_table_widget` method.
* Add the `_get_selected_image_paths` method to return a list of selected image paths.
* Modify the `show_context_menu` method to add options for deleting selected images and annotations.
* Add the `delete_selected_images` and `delete_selected_annotations` methods to handle deletion of multiple images and their annotations.
Add multi-select and delete functionality to ImageWindow
Increase the size of the checkboxes under the "Select" row and prevent new images from being loaded when multiple images are deleted.

* Increase the size of the checkboxes in the `update_table_widget` method by setting a fixed size of 20x20.
* Modify the `delete_selected_images` method to block signals and prevent new images from being loaded during deletion.
* Modify the `delete_selected_annotations` method to block signals and prevent new images from being loaded during deletion.
Enhance checkboxes and optimize deletion
Revert "Enhance checkboxes and optimize deletion"
Add 'Select All' and 'Deselect All' buttons below the table widget in `coralnet_toolbox/QtImageWindow.py`.

* Add a new horizontal layout below the table widget to hold the buttons.
* Add 'Select All' button to the new layout and connect it to the `select_all_checkboxes` method.
* Add 'Deselect All' button to the new layout and connect it to the `deselect_all_checkboxes` method.
* Implement `select_all_checkboxes` method to select all checkboxes in the table widget.
* Implement `deselect_all_checkboxes` method to deselect all checkboxes in the table widget.
Add select all and deselect all buttons
@Jordan-Pierce Jordan-Pierce added the enhancement New feature or request label Jan 27, 2025
@Jordan-Pierce Jordan-Pierce self-assigned this Jan 27, 2025
@Jordan-Pierce Jordan-Pierce merged commit f49b55e into main Jan 27, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant