diff --git a/tools/cabana/mainwin.cc b/tools/cabana/mainwin.cc index fd24c3f6db..421bb9a5d7 100644 --- a/tools/cabana/mainwin.cc +++ b/tools/cabana/mainwin.cc @@ -32,6 +32,9 @@ MainWindow::MainWindow() : QMainWindow() { createStatusBar(); createShortcuts(); + // save default window state to allow resetting it + default_state = saveState(); + // restore states restoreGeometry(settings.geometry); if (isMaximized()) { @@ -135,6 +138,10 @@ void MainWindow::createActions() { commands_act->setDefaultWidget(new QUndoView(UndoStack::instance())); commands_menu->addAction(commands_act); + edit_menu->addSeparator(); + edit_menu->addAction(tr("Reset Window Layout"), + [this]() { restoreState(default_state); }); + tools_menu = menuBar()->addMenu(tr("&Tools")); tools_menu->addAction(tr("Find &Similar Bits"), this, &MainWindow::findSimilarBits); tools_menu->addAction(tr("&Find Signal"), this, &MainWindow::findSignal); diff --git a/tools/cabana/mainwin.h b/tools/cabana/mainwin.h index 72ed0ae5cc..77467e2e45 100644 --- a/tools/cabana/mainwin.h +++ b/tools/cabana/mainwin.h @@ -98,6 +98,7 @@ protected: QString car_fingerprint; int prev_undostack_index = 0; int prev_undostack_count = 0; + QByteArray default_state; friend class OnlineHelp; };