Fix crash caused by shortcuts when no project is loaded

This commit is contained in:
BigBahss 2020-10-30 15:08:40 -04:00 committed by huderlem
parent b371860eb1
commit 174f66c35b

View file

@ -70,28 +70,18 @@ MainWindow::~MainWindow()
} }
void MainWindow::setWindowDisabled(bool disabled) { void MainWindow::setWindowDisabled(bool disabled) {
for (auto *child : findChildren<QWidget *>(QString(), Qt::FindDirectChildrenOnly)) { for (auto action : findChildren<QAction *>())
bool disableThis = disabled;
if (child->objectName() == "menuBar") {
// disable all but the menuFile and menuHelp
for (auto *menu : child->findChildren<QWidget *>(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); action->setDisabled(disabled);
} for (auto child : findChildren<QWidget *>(QString(), Qt::FindDirectChildrenOnly))
child->setDisabled(disabled);
for (auto menu : ui->menuBar->findChildren<QMenu *>(QString(), Qt::FindDirectChildrenOnly))
menu->setDisabled(disabled);
ui->menuBar->setDisabled(false);
ui->menuFile->setDisabled(false);
ui->action_Open_Project->setDisabled(false); ui->action_Open_Project->setDisabled(false);
ui->action_Exit->setDisabled(false); ui->action_Exit->setDisabled(false);
disableThis = false; ui->menuHelp->setDisabled(false);
} ui->actionAbout_Porymap->setDisabled(false);
menu->setDisabled(disableThis);
}
child->findChild<QWidget *>("menuHelp")->setDisabled(false);
disableThis = false;
}
child->setDisabled(disableThis);
}
} }
void MainWindow::initWindow() { void MainWindow::initWindow() {