diff options
author | Petr Mrázek <peterix@gmail.com> | 2016-11-06 23:01:08 +0100 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2016-11-06 23:06:49 +0100 |
commit | 1276ecdbb769a249a969e8d34749b8f245c3031e (patch) | |
tree | 2e34c6476e3ce7a27254000e8735efcc9ea8aac0 /application/MainWindow.cpp | |
parent | 8b952b387041341f556edcf0bb34576a2fc88568 (diff) | |
download | MultiMC-1276ecdbb769a249a969e8d34749b8f245c3031e.tar MultiMC-1276ecdbb769a249a969e8d34749b8f245c3031e.tar.gz MultiMC-1276ecdbb769a249a969e8d34749b8f245c3031e.tar.lz MultiMC-1276ecdbb769a249a969e8d34749b8f245c3031e.tar.xz MultiMC-1276ecdbb769a249a969e8d34749b8f245c3031e.zip |
NOISSUE ask user if closing is OK when instances are still running
Diffstat (limited to 'application/MainWindow.cpp')
-rw-r--r-- | application/MainWindow.cpp | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/application/MainWindow.cpp b/application/MainWindow.cpp index bf9da0dc..70a0fbf1 100644 --- a/application/MainWindow.cpp +++ b/application/MainWindow.cpp @@ -1356,12 +1356,27 @@ void MainWindow::on_actionViewSelectedInstFolder_triggered() void MainWindow::closeEvent(QCloseEvent *event) { - // Save the window state and geometry. + if(MMC->numRunningInstances()) + { + auto resBtn = QMessageBox::question( + this, + tr("Do you want to close MultiMC?"), + tr("<p>You still have instances running.</p><p>Closing MultiMC will result in inaccurate time tracking and no Minecraft crash handling.</p><p>Are you sure?</p>"), + QMessageBox::No | QMessageBox::Yes, + QMessageBox::Yes + ); + if (resBtn != QMessageBox::Yes) + { + event->ignore(); + return; + } + } + // no running instances or user said yes. + event->accept(); + // Save the window state and geometry. MMC->settings()->set("MainWindowState", saveState().toBase64()); MMC->settings()->set("MainWindowGeometry", saveGeometry().toBase64()); - - QMainWindow::closeEvent(event); QApplication::exit(); } |