Gui: refactoring: move duplicated code to DockWindowManager::activate()

This commit is contained in:
wmayer
2021-12-09 07:40:44 +01:00
parent f803c242a9
commit 219ded18ba
4 changed files with 32 additions and 29 deletions

View File

@@ -239,6 +239,26 @@ void DockWindowManager::removeDockWindow(QWidget* widget)
}
}
/**
* If the corresponding dock widget isn't visible then activate it.
*/
void DockWindowManager::activate(QWidget* widget)
{
QDockWidget* dw = nullptr;
QWidget* par = widget->parentWidget();
while (par) {
dw = qobject_cast<QDockWidget*>(par);
if (dw) {
break;
}
par = par->parentWidget();
}
if (dw && !dw->toggleViewAction()->isChecked()) {
dw->toggleViewAction()->activate(QAction::Trigger);
}
}
/**
* Sets the window title for the dockable windows.
*/