void MainWindow::slot_languageChanged(int) { QMessageBox mb(tr("Change Language?"), QString(tr("Changing the language requires restarting qGo. Go ahead?\n")), QMessageBox::Question, QMessageBox::Yes | QMessageBox::Default, QMessageBox::No | QMessageBox::Escape, QMessageBox::NoButton); if (mb.exec() == QMessageBox::Yes) { if(ui.connectionWidget->closeConnection() < 0) goto lc_no_close; if(checkForOpenBoards() < 0) goto lc_no_close; saveSettings(); startqGo(); } else { lc_no_close: QSettings settings; ui.comboBox_language->blockSignals(true); ui.comboBox_language->setCurrentIndex(settings.value("LANGUAGE").toInt()); ui.comboBox_language->blockSignals(false); } }
void MainWindow::closeEvent(QCloseEvent * e) { /* Close connection if open */ if(closeConnection() < 0) { e->ignore(); return; } if(checkForOpenBoards() < 0) { e->ignore(); return; } saveSettings(); }