From 174f66c35bb86cf55cf58f718668604adf700b98 Mon Sep 17 00:00:00 2001 From: BigBahss Date: Fri, 30 Oct 2020 15:08:40 -0400 Subject: [PATCH] Fix crash caused by shortcuts when no project is loaded --- src/mainwindow.cpp | 34 ++++++++++++---------------------- 1 file changed, 12 insertions(+), 22 deletions(-) diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 45037f10..f239d4d6 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -70,28 +70,18 @@ MainWindow::~MainWindow() } void MainWindow::setWindowDisabled(bool disabled) { - for (auto *child : findChildren(QString(), Qt::FindDirectChildrenOnly)) { - bool disableThis = disabled; - if (child->objectName() == "menuBar") { - // disable all but the menuFile and menuHelp - for (auto *menu : child->findChildren(QString(), Qt::FindDirectChildrenOnly)) { - disableThis = disabled; - if (menu->objectName() == "menuFile") { - // disable all but the action_Open_Project and action_Exit - for (auto *action : menu->actions()) { - action->setDisabled(disabled); - } - ui->action_Open_Project->setDisabled(false); - ui->action_Exit->setDisabled(false); - disableThis = false; - } - menu->setDisabled(disableThis); - } - child->findChild("menuHelp")->setDisabled(false); - disableThis = false; - } - child->setDisabled(disableThis); - } + for (auto action : findChildren()) + action->setDisabled(disabled); + for (auto child : findChildren(QString(), Qt::FindDirectChildrenOnly)) + child->setDisabled(disabled); + for (auto menu : ui->menuBar->findChildren(QString(), Qt::FindDirectChildrenOnly)) + menu->setDisabled(disabled); + ui->menuBar->setDisabled(false); + ui->menuFile->setDisabled(false); + ui->action_Open_Project->setDisabled(false); + ui->action_Exit->setDisabled(false); + ui->menuHelp->setDisabled(false); + ui->actionAbout_Porymap->setDisabled(false); } void MainWindow::initWindow() {