| 1516 | } |
| 1517 | |
| 1518 | void MainWindow::closeEvent(QCloseEvent *event) |
| 1519 | { |
| 1520 | qDebug(log) << "MainWindow::closeEvent()"; |
| 1521 | |
| 1522 | if(m_Parameter.GetSaveMainWindowStatus()) |
| 1523 | if(isFullScreen()) |
| 1524 | on_actionFull_screen_F_triggered(); |
| 1525 | |
| 1526 | SaveOperateLasterClose(); |
| 1527 | |
| 1528 | foreach (auto it, m_Operates) |
| 1529 | { |
| 1530 | //TODO: Whether to save the setting |
| 1531 | emit it->sigUpdateParameters(it); |
| 1532 | it->Stop(); |
| 1533 | } |
| 1534 | |
| 1535 | QSettings set(RabbitCommon::CDir::Instance()->GetFileUserConfigure(), |
| 1536 | QSettings::IniFormat); |
| 1537 | if(m_Parameter.GetSaveMainWindowStatus()) |
| 1538 | { |
| 1539 | set.setValue("MainWindow/Status/Geometry", saveGeometry()); |
| 1540 | set.setValue("MainWindow/Status/State", saveState()); |
| 1541 | |
| 1542 | m_Parameter.SetTabBar(ui->actionTabBar_B->isChecked()); |
| 1543 | m_Parameter.SetMenuBar(menuBar()->isVisible()); |
| 1544 | m_Parameter.SetStatusBar(statusBar()->isVisible()); |
| 1545 | } else { |
| 1546 | set.remove("MainWindow/Status/Geometry"); |
| 1547 | set.remove("MainWindow/Status/State"); |
| 1548 | } |
| 1549 | |
| 1550 | m_Manager.SaveSettings(); |
| 1551 | m_Parameter.Save(); |
| 1552 | |
| 1553 | QMainWindow::closeEvent(event); |
| 1554 | |
| 1555 | //TODO: Wait for the background thread to exit |
| 1556 | QThread::sleep(1); |
| 1557 | } |
| 1558 | |
| 1559 | int MainWindow::LoadOperateLasterClose() |
| 1560 | { |
nothing calls this directly
no test coverage detected