From bbc2cd31e25c29a343a20b3d92f5e0a63a47edea Mon Sep 17 00:00:00 2001 From: Thomas Gubler Date: Sun, 4 May 2014 14:45:12 +0200 Subject: [PATCH] make keyboard shortcuts OS dependent --- src/ui/MainWindow.cc | 26 +++++++++++++++++++++++++- src/ui/MainWindow.ui | 20 +------------------- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/src/ui/MainWindow.cc b/src/ui/MainWindow.cc index f6b71c5a2..d71670225 100644 --- a/src/ui/MainWindow.cc +++ b/src/ui/MainWindow.cc @@ -187,7 +187,7 @@ void MainWindow::init() ui.setupUi(this); hide(); menuActionHelper->setMenu(ui.menuTools); - + // Qt 4 on Ubuntu does place the native menubar correctly so on Linux we revert back to in-window menu bar. #ifdef Q_OS_LINUX menuBar()->setNativeMenuBar(false); @@ -223,6 +223,7 @@ void MainWindow::init() actions << ui.actionFlightView; actions << ui.actionMissionView; actions << ui.actionHardwareConfig; + toolBar->setPerspectiveChangeActions(actions); // Add actions for advanced users (displayed in dropdown under "advanced") @@ -346,6 +347,27 @@ void MainWindow::init() } + // Set OS dependent keyboard shortcuts for the main window, non OS dependent shortcuts are set in MainWindow.ui +#ifdef Q_OS_MACX + ui.actionMissionView->setShortcut(QApplication::translate("MainWindow", "Meta+O", 0, QApplication::UnicodeUTF8)); + ui.actionMavlinkView->setShortcut(QApplication::translate("MainWindow", "Meta+M", 0, QApplication::UnicodeUTF8)); + ui.actionFlightView->setShortcut(QApplication::translate("MainWindow", "Meta+P", 0, QApplication::UnicodeUTF8)); + ui.actionUnconnectedView->setShortcut(QApplication::translate("MainWindow", "Meta+U", 0, QApplication::UnicodeUTF8)); + ui.actionFullscreen->setShortcut(QApplication::translate("MainWindow", "Meta+Return", 0, QApplication::UnicodeUTF8)); + ui.actionEngineersView->setShortcut(QApplication::translate("MainWindow", "Meta+E", 0, QApplication::UnicodeUTF8)); + ui.actionSimulationView->setShortcut(QApplication::translate("MainWindow", "Meta+I", 0, QApplication::UnicodeUTF8)); + ui.actionHardwareConfig->setShortcut(QApplication::translate("MainWindow", "Meta+H", 0, QApplication::UnicodeUTF8)); +#else + ui.actionMissionView->setShortcut(QApplication::translate("MainWindow", "Ctrl+O", 0, QApplication::UnicodeUTF8)); + ui.actionMavlinkView->setShortcut(QApplication::translate("MainWindow", "Ctrl+M", 0, QApplication::UnicodeUTF8)); + ui.actionFlightView->setShortcut(QApplication::translate("MainWindow", "Ctrl+P", 0, QApplication::UnicodeUTF8)); + ui.actionUnconnectedView->setShortcut(QApplication::translate("MainWindow", "Ctrl+U", 0, QApplication::UnicodeUTF8)); + ui.actionFullscreen->setShortcut(QApplication::translate("MainWindow", "Ctrl+Return", 0, QApplication::UnicodeUTF8)); + ui.actionEngineersView->setShortcut(QApplication::translate("MainWindow", "Ctrl+E", 0, QApplication::UnicodeUTF8)); + ui.actionSimulationView->setShortcut(QApplication::translate("MainWindow", "Ctrl+I", 0, QApplication::UnicodeUTF8)); + ui.actionHardwareConfig->setShortcut(QApplication::translate("MainWindow", "Ctrl+H", 0, QApplication::UnicodeUTF8)); +#endif + connect(&windowNameUpdateTimer, SIGNAL(timeout()), this, SLOT(configureWindowName())); windowNameUpdateTimer.start(15000); emit initStatusChanged(tr("Done"), Qt::AlignLeft | Qt::AlignBottom, QColor(62, 93, 141)); @@ -1342,6 +1364,8 @@ void MainWindow::connectCommonActions() connect(ui.actionHardwareConfig,SIGNAL(triggered()),this,SLOT(loadHardwareConfigView())); connect(ui.actionGoogleEarthView, SIGNAL(triggered()), this, SLOT(loadGoogleEarthView())); connect(ui.actionLocal3DView, SIGNAL(triggered()), this, SLOT(loadLocal3DView())); + connect(ui.actionSimulationView, SIGNAL(triggered()), this, SLOT(loadSimulationView())); + connect(ui.actionHardwareConfig, SIGNAL(triggered()), this, SLOT(loadHardwareConfigView())); if (getCustomMode() == CUSTOM_MODE_APM) { connect(ui.actionSoftwareConfig,SIGNAL(triggered()),this,SLOT(loadSoftwareConfigView())); diff --git a/src/ui/MainWindow.ui b/src/ui/MainWindow.ui index 523cbfd9a..af18a6524 100644 --- a/src/ui/MainWindow.ui +++ b/src/ui/MainWindow.ui @@ -162,7 +162,7 @@ Emergency Land - Ctrl+E + Ctrl+L @@ -284,9 +284,6 @@ Mission - - Meta+O - @@ -299,9 +296,6 @@ Plot - - Meta+E - @@ -314,9 +308,6 @@ Mavlink - - Meta+M - @@ -329,9 +320,6 @@ Flight - - Meta+P - @@ -369,9 +357,6 @@ Unconnected - - Meta+U - @@ -397,9 +382,6 @@ Fullscreen - - Meta+Return - -- 2.22.0