diff --git a/src/ui/MainWindow.cc b/src/ui/MainWindow.cc index c24a052..67621b3 100644 --- a/src/ui/MainWindow.cc +++ b/src/ui/MainWindow.cc @@ -40,6 +40,7 @@ #include "LogCompressor.h" #include "UAS.h" #include "QGCImageProvider.h" +#include "QGCCorePlugin.h" #ifndef __mobile__ #include "Linecharts.h" @@ -175,6 +176,9 @@ MainWindow::MainWindow() _ui.menuWidgets->addAction(qmlTestAction); #endif + connect(qgcApp()->toolbox()->corePlugin(), &QGCCorePlugin::showAdvancedUIChanged, this, &MainWindow::_showAdvancedUIChanged); + _showAdvancedUIChanged(qgcApp()->toolbox()->corePlugin()->showAdvancedUI()); + // Status Bar setStatusBar(new QStatusBar(this)); statusBar()->setSizeGripEnabled(true); @@ -558,3 +562,13 @@ QObject* MainWindow::rootQmlObject(void) { return _mainQmlWidgetHolder->getRootObject(); } + +void MainWindow::_showAdvancedUIChanged(bool advanced) +{ + if (advanced) { + menuBar()->addMenu(_ui.menuFile); + menuBar()->addMenu(_ui.menuWidgets); + } else { + menuBar()->clear(); + } +} diff --git a/src/ui/MainWindow.h b/src/ui/MainWindow.h index dc1706a..aee454a 100644 --- a/src/ui/MainWindow.h +++ b/src/ui/MainWindow.h @@ -158,6 +158,7 @@ private slots: void _closeWindow(void) { close(); } void _vehicleAdded(Vehicle* vehicle); void _showDockWidgetAction(bool show); + void _showAdvancedUIChanged(bool advanced); #ifdef UNITTEST_BUILD void _showQmlTestWidget(void); diff --git a/src/ui/MainWindow.ui b/src/ui/MainWindow.ui index 1e2fcd8..312c86d 100644 --- a/src/ui/MainWindow.ui +++ b/src/ui/MainWindow.ui @@ -54,7 +54,7 @@ 22 - + File @@ -68,7 +68,7 @@ Widgets - + @@ -98,7 +98,7 @@ true - Show Status Bar + Replay Flight Data