Gui: Add setting enabling workbench selector to be on the menubar. Restart required.

This commit is contained in:
Paddle
2022-11-02 19:03:26 +01:00
committed by WandererFan
parent 7c5557b3cb
commit 8d346f1bf5
6 changed files with 118 additions and 8 deletions

View File

@@ -263,6 +263,8 @@ void MenuManager::setup(MenuItem* menuItems) const
setup(*it, action->menu());
}
setupMenuBarCornerWidgets();
// hide all menus which we don't need for the moment
for (QList<QAction*>::Iterator it = actions.begin(); it != actions.end(); ++it) {
(*it)->setVisible(false);
@@ -338,6 +340,24 @@ void MenuManager::setup(MenuItem* item, QMenu* menu) const
}
}
void MenuManager::setupMenuBarCornerWidgets() const {
/*Note: currently only workbench selector uses corner widget.*/
QMenuBar* menuBar = getMainWindow()->menuBar();
ParameterGrp::handle hGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/MainWindow");
//Right corner widget
if (hGrp->GetBool("WSRightCorner", false)) { //add workbench selector to menubar right corner widget.
if (!menuBar->cornerWidget(Qt::TopRightCorner))
Application::Instance->commandManager().addTo("Std_Workbench", menuBar);
}
//Left corner widget
if (hGrp->GetBool("WSLeftCorner", false)) { //add workbench selector to menubar left corner widget.
if (!menuBar->cornerWidget(Qt::TopLeftCorner))
Application::Instance->commandManager().addTo("Std_Workbench", menuBar);
}
}
void MenuManager::retranslate() const
{
QMenuBar* menuBar = getMainWindow()->menuBar();