Extract Widgets for "Grey out calibration tab" (2/N)
This MR moves the slots of the FilterBeforeBox
to from Control
to the box itself. This enables us to truly treat the FilterBeforeBox
as a separate widget. Before, it needed to be included in the control.ui
-file.
This introduces (or rather, made visible) some new dependencies which the box now takes explicitly. The bidirectional dependency with the BackgroundItem
was resolved by using a setter.
Also, the dependency on Control
by AutoCalib
does not exist anymore after the last change. Thus, the member and included header are deleted. After extraction of the extrinsic calibration components, we need to remember to do this for other widgets as well.
This MR also fixes the tab order. In order for a proper tab order to be possible, one needs to set the tab order in the ui-files of the subwidgets, make the subwidgets take the FocusPolicy::TabFocus
and assign the first ui-widget of the subwidget as their focusProxy
. Then the order can be set with QWidget::setTabOrder
inside of control.
Reviewer Checklist
General code quality
-
naming conventions are met (see .clang-tidy for detailed information) -
no static analyzer warnings in new code parts (e.g., use clang-tidy for checking)
General usability
-
old versions of pet-files are still loadable
Only if changes in UI
-
new elements are also saved and loaded from pet-file -
check if tab order is still correct -
all new SpinBoxes are promoted -
new keybindings added to Petrack::keyBindings()