From c71fc5ae7315ae314c65c52ab4504f16a8a160af Mon Sep 17 00:00:00 2001 From: James Turner Date: Sat, 4 Jul 2020 14:38:29 +0100 Subject: [PATCH] Fix missing File menu in Dutch translation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Set the menu action roles to avoid the text heuristic, which erroneously confuses our configuration menu items with preferences and moves them. Fixes bug: https://sourceforge.net/p/flightgear/codetickets/2253/ Will pick to 2018.3, 2020.1 and 2020.2 since it’s nicely self-contained and rather annoying. --- src/GUI/LauncherMainWindow.cxx | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/GUI/LauncherMainWindow.cxx b/src/GUI/LauncherMainWindow.cxx index 6ee297ddb..924a22cf4 100755 --- a/src/GUI/LauncherMainWindow.cxx +++ b/src/GUI/LauncherMainWindow.cxx @@ -42,29 +42,41 @@ LauncherMainWindow::LauncherMainWindow() : QMenuBar* mb = new QMenuBar(); QMenu* fileMenu = mb->addMenu(tr("File")); - QAction* openAction = fileMenu->addAction(tr("Open saved configuration...")); + QAction* openAction = new QAction(tr("Open saved configuration...")); + openAction->setMenuRole(QAction::NoRole); connect(openAction, &QAction::triggered, m_controller, &LauncherController::openConfig); - QAction* saveAction = fileMenu->addAction(tr("Save configuration as...")); + QAction* saveAction = new QAction(tr("Save configuration as...")); + saveAction->setMenuRole(QAction::NoRole); connect(saveAction, &QAction::triggered, m_controller, &LauncherController::saveConfigAs); + fileMenu->addAction(openAction); + fileMenu->addAction(saveAction); + QMenu* toolsMenu = mb->addMenu(tr("Tools")); - QAction* restoreDefaultsAction = toolsMenu->addAction(tr("Restore defaults...")); + QAction* restoreDefaultsAction = new QAction(tr("Restore defaults...")); + restoreDefaultsAction->setMenuRole(QAction::NoRole); connect(restoreDefaultsAction, &QAction::triggered, m_controller, &LauncherController::requestRestoreDefaults); - QAction* changeDataAction = toolsMenu->addAction(tr("Select data files location...")); + QAction* changeDataAction = new QAction(tr("Select data files location...")); + changeDataAction->setMenuRole(QAction::NoRole); connect(changeDataAction, &QAction::triggered, m_controller, &LauncherController::requestChangeDataPath); - QAction* viewCommandLineAction = toolsMenu->addAction(tr("View command-line")); + QAction* viewCommandLineAction = new QAction(tr("View command-line")); connect(viewCommandLineAction, &QAction::triggered, m_controller, &LauncherController::viewCommandLine); + + toolsMenu->addAction(restoreDefaultsAction); + toolsMenu->addAction(changeDataAction); + toolsMenu->addAction(viewCommandLineAction); #endif QAction* qa = new QAction(this); + qa->setMenuRole(QAction::QuitRole); // will be addeed accordingly qa->setShortcut(QKeySequence("Ctrl+Q")); connect(qa, &QAction::triggered, m_controller, &LauncherController::quit);