OverlayWidget
Qualified name: mv::gui::OverlayWidget
-
class OverlayWidget : public QWidget
Overlay widget class.
Overlays the target widget with an overlay widget and keeps its geometry in sync with the target widget.
By default, the overlay widget and its children are immune to mouse events (similar to the Qt widget attribute Qt::WA_TransparentForMouseEvents). To enable/disable child widget mouse events, call OverlayWidget::addMouseEventReceiverWidget(…) or OverlayWidget::removeMouseEventReceiverWidget(…) respectively.
For more information, refer to the mv::util::WidgetOverlayer class.
- Author
Thomas Kroes
Subclassed by mv::Navigator2D::ZoomOverlayWidget, mv::gui::ActionOverlayWidget, mv::gui::ViewPluginLearningCenterOverlayWidget, mv::gui::ViewPluginOverlayWidget, mv::gui::WidgetActionBadgeOverlayWidget, mv::gui::WidgetActionHighlightWidget
Public Functions
-
OverlayWidget(QWidget *target, float initialOpacity = 1.0f)
Construct with pointer to
targetwidget and initial opacity.- Parameters:
target – Pointer to target widget (used to synchronize the geometry with)
initialOpacity – Opacity at initialization
-
mv::util::WidgetOverlayer &getWidgetOverlayer()
Get the utility class for overlaying the widget.
- Returns:
Widget overlayer
-
virtual void addMouseEventReceiverWidget(QWidget *mouseEventReceiverWidget) final
Add
mouseEventReceiverWidget.- Parameters:
mouseEventReceiverWidget – Pointer to mouse event receiver widget that should be added
-
virtual void removeMouseEventReceiverWidget(QWidget *mouseEventReceiverWidget) final
Remove
mouseEventReceiverWidget.- Parameters:
mouseEventReceiverWidget – Pointer to mouse event receiver widget that should be removed
-
void updateMask()
Update widget mask to selectively process mouse events.
Protected Functions
-
void resizeEvent(QResizeEvent *event) override
Update the mask region when the overlay widget changes size.
- Parameters:
event – Pointer to resize event that occurred