biigle / core

:large_blue_circle: Application core of BIIGLE
https://biigle.de
GNU General Public License v3.0
12 stars 16 forks source link

Pause/Resume for Lawnmower and Volume Label Review Modes #547

Open EmKarr opened 1 year ago

EmKarr commented 1 year ago

Dear Martin,

whilst scanning a large image with the lawnmower mode to make sure we do not miss anything, we often need to zoom in for investigating details of individual objects. Alas, lawnmower mode and zooming do not go well together and cause the lawnmower to reposition the current field of view erratically (or if not erratically, at least not in a helful way).

Our suggestion to solve this issue (and bring some other benefit) would be to have a pause / resume function for the lawnmower mode: Interrupt it either with a specific keyboard shortcut or (optionally, but nice to have) automatically when the view is zoomed in or out, and then continue it at the exact position and zoom level used before pausing with another specific keyboard shortcut.

Another nice featere would be to be able to optionally start the lawnmower mode from the current field of view instead of the lower left corner, to be able to continue analysing after a long break or in another session, or even to log the progress and resume from the last used position.

Thank you very much for BIIGLE any our constant support, Michael

mzur commented 1 year ago

Hi Michael, thanks for the ideas. That's certainly something that could be added.

Here come my technical notes for when someone picks this up for implementation: Change the "power" icon on the button to start Lawnmower Mode to a "play" icon. The function stays the same. However, when Lawnmower Mode is active, the icon switches to a "stop" icon. Next to the button, add a new "pause" button that can be clicked when Lawnmower Mode is active. When this button is clicked, the current image, viewport and zoom is remembered in local storage. The "pause" button gets the active state and the "stop" icon will revert to the "play" icon (see below). When the "play" button is pressed again, Lawnmower Mode will continue at the stored image, viewport and zoom (even if the user currently views another image of the volume). If the "pause" button is clicked while it is active, the stored state will be forgotten. Each "pause state" will be remembered separately for each volume.

Also, change all the other "power" buttons of the annotation modes to "play"/"stop" to be consistent. Volume Label Review Mode could also be extended with a play/pause feature like this.

This is how it could look like:

Screenshot from 2023-02-17 09-37-45 (Lawnmower Mode is off, no pause state available)

Screenshot from 2023-02-17 09-36-34 (Lawnmower Mode is on, can be paused)

Screenshot from 2023-02-17 09-36-56 (Lawnmower Mode is paused, can either be resumed or pause state can be forgotten)