Get rid of the nested parentWidget() calls inside the ResizableFrame class in favor of passing a reference to the Dialog class when the signal for a newly created area is emitted.
We only need to emit a positionableTag(De)Selected signal if the respective category is actually positionable.
Implemented positionable tag association. The Dialog class now maintains a list of all positinable tag candidates and the last selected positionable tag. Tags can now be associated to areas via context menu. When a tag is (de)selected or an area is removed, the list is updated accordingly.
Fixed handling of deselection of an already-associated tag.
Change the color of an area to indicate if a tag is associated.
Made some functions const
No need for AnnotationDialog::ListSelect::getSelectedTags() – it's already implemented (slightly different in itemsOn(), which we can use as well.
Some more functions that can be set to const.
Simplified AnnotationDialog::Dialog::tidyAreas()
Added some storage for tagged areas to DB::ImageInfo. At the moment, it's lost when the annotation dialog is closed, but when switching between images, the areas are re-created and tagged.