confirmation dialog when closing main window with open games

This commit is contained in:
Max-Wilhelm Bruker 2010-04-01 15:54:51 +02:00
parent e7c4f75921
commit 7afb866961
4 changed files with 63 additions and 35 deletions

View file

@ -31,6 +31,7 @@ public:
void retranslateUi();
void start(Client *_client);
void stop();
int getGameCount() const { return gameTabs.size(); }
signals:
void setMenu(QMenu *menu);
private slots:

View file

@ -207,8 +207,15 @@ MainWindow::MainWindow(QWidget *parent)
resize(900, 700);
}
void MainWindow::closeEvent(QCloseEvent */*event*/)
void MainWindow::closeEvent(QCloseEvent *event)
{
if (tabSupervisor->getGameCount()) {
if (QMessageBox::question(this, tr("Are you sure?"), tr("There are still open games. Are you sure you want to quit?"), QMessageBox::Yes | QMessageBox::No, QMessageBox::No) == QMessageBox::No) {
event->ignore();
return;
}
}
event->accept();
delete tabSupervisor;
}

View file

@ -925,7 +925,7 @@
<context>
<name>GameView</name>
<message>
<location filename="../src/gameview.cpp" line="15"/>
<location filename="../src/gameview.cpp" line="16"/>
<source>Esc</source>
<translation>Esc</translation>
</message>
@ -1084,6 +1084,16 @@
<source>&amp;Disconnect</source>
<translation>Verbindung &amp;trennen</translation>
</message>
<message>
<location filename="../src/window_main.cpp" line="213"/>
<source>Are you sure?</source>
<translation>Sind Sie sicher?</translation>
</message>
<message>
<location filename="../src/window_main.cpp" line="213"/>
<source>There are still open games. Are you sure you want to quit?</source>
<translation>Es gibt noch offene Spiele. Wollen Sie das Programm wirklich beenden?</translation>
</message>
<message>
<source>&amp;Restart game...</source>
<translation type="obsolete">Spiel neu sta&amp;rten...</translation>
@ -1784,57 +1794,57 @@
<context>
<name>PhasesToolbar</name>
<message>
<location filename="../src/phasestoolbar.cpp" line="115"/>
<location filename="../src/phasestoolbar.cpp" line="117"/>
<source>Untap step</source>
<translation>Enttappsegment</translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="116"/>
<location filename="../src/phasestoolbar.cpp" line="118"/>
<source>Upkeep step</source>
<translation>Versorgungssegment</translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="117"/>
<location filename="../src/phasestoolbar.cpp" line="119"/>
<source>Draw step</source>
<translation>Ziehsegment</translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="118"/>
<location filename="../src/phasestoolbar.cpp" line="120"/>
<source>First main phase</source>
<translation>erste Hauptphase</translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="119"/>
<location filename="../src/phasestoolbar.cpp" line="121"/>
<source>Beginning of combat step</source>
<translation>Anfangssegment der Kampfphase</translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="120"/>
<location filename="../src/phasestoolbar.cpp" line="122"/>
<source>Declare attackers step</source>
<translation>Angreifer-Deklarieren-Segment</translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="121"/>
<location filename="../src/phasestoolbar.cpp" line="123"/>
<source>Declare blockers step</source>
<translation>Blocker-Deklarieren-Segment</translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="122"/>
<location filename="../src/phasestoolbar.cpp" line="124"/>
<source>Combat damage step</source>
<translation>Kampfschadenssegment</translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="123"/>
<location filename="../src/phasestoolbar.cpp" line="125"/>
<source>End of combat step</source>
<translation>Endsegment der Kampfphase</translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="124"/>
<location filename="../src/phasestoolbar.cpp" line="126"/>
<source>Second main phase</source>
<translation>zweite Hauptphase</translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="125"/>
<location filename="../src/phasestoolbar.cpp" line="127"/>
<source>End of turn step</source>
<translation>Ende-des-Zuges-Segment</translation>
</message>
@ -2176,12 +2186,12 @@
</message>
<message>
<location filename="../src/player.cpp" line="430"/>
<location filename="../src/player.cpp" line="965"/>
<location filename="../src/player.cpp" line="964"/>
<source>Number:</source>
<translation>Anzahl:</translation>
</message>
<message>
<location filename="../src/player.cpp" line="965"/>
<location filename="../src/player.cpp" line="964"/>
<source>Set counters</source>
<translation>Setze Zählmarken</translation>
</message>
@ -2285,17 +2295,17 @@
<context>
<name>RemoteDeckList_TreeModel</name>
<message>
<location filename="../src/remotedecklist_treewidget.cpp" line="153"/>
<location filename="../src/remotedecklist_treewidget.cpp" line="157"/>
<source>Name</source>
<translation>Name</translation>
</message>
<message>
<location filename="../src/remotedecklist_treewidget.cpp" line="154"/>
<location filename="../src/remotedecklist_treewidget.cpp" line="158"/>
<source>ID</source>
<translation>ID</translation>
</message>
<message>
<location filename="../src/remotedecklist_treewidget.cpp" line="155"/>
<location filename="../src/remotedecklist_treewidget.cpp" line="159"/>
<source>Upload time</source>
<translation>Änderungsdatum</translation>
</message>

View file

@ -552,7 +552,7 @@
<context>
<name>GameView</name>
<message>
<location filename="../src/gameview.cpp" line="15"/>
<location filename="../src/gameview.cpp" line="16"/>
<source>Esc</source>
<translation type="unfinished"></translation>
</message>
@ -737,6 +737,16 @@
<source>&amp;Cockatrice</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/window_main.cpp" line="213"/>
<source>Are you sure?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/window_main.cpp" line="213"/>
<source>There are still open games. Are you sure you want to quit?</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MessageLogWidget</name>
@ -1107,57 +1117,57 @@
<context>
<name>PhasesToolbar</name>
<message>
<location filename="../src/phasestoolbar.cpp" line="115"/>
<location filename="../src/phasestoolbar.cpp" line="117"/>
<source>Untap step</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="116"/>
<location filename="../src/phasestoolbar.cpp" line="118"/>
<source>Upkeep step</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="117"/>
<location filename="../src/phasestoolbar.cpp" line="119"/>
<source>Draw step</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="118"/>
<location filename="../src/phasestoolbar.cpp" line="120"/>
<source>First main phase</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="119"/>
<location filename="../src/phasestoolbar.cpp" line="121"/>
<source>Beginning of combat step</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="120"/>
<location filename="../src/phasestoolbar.cpp" line="122"/>
<source>Declare attackers step</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="121"/>
<location filename="../src/phasestoolbar.cpp" line="123"/>
<source>Declare blockers step</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="122"/>
<location filename="../src/phasestoolbar.cpp" line="124"/>
<source>Combat damage step</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="123"/>
<location filename="../src/phasestoolbar.cpp" line="125"/>
<source>End of combat step</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="124"/>
<location filename="../src/phasestoolbar.cpp" line="126"/>
<source>Second main phase</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/phasestoolbar.cpp" line="125"/>
<location filename="../src/phasestoolbar.cpp" line="127"/>
<source>End of turn step</source>
<translation type="unfinished"></translation>
</message>
@ -1463,7 +1473,7 @@
</message>
<message>
<location filename="../src/player.cpp" line="430"/>
<location filename="../src/player.cpp" line="965"/>
<location filename="../src/player.cpp" line="964"/>
<source>Number:</source>
<translation type="unfinished"></translation>
</message>
@ -1488,7 +1498,7 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/player.cpp" line="965"/>
<location filename="../src/player.cpp" line="964"/>
<source>Set counters</source>
<translation type="unfinished"></translation>
</message>
@ -1552,17 +1562,17 @@
<context>
<name>RemoteDeckList_TreeModel</name>
<message>
<location filename="../src/remotedecklist_treewidget.cpp" line="153"/>
<location filename="../src/remotedecklist_treewidget.cpp" line="157"/>
<source>Name</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/remotedecklist_treewidget.cpp" line="154"/>
<location filename="../src/remotedecklist_treewidget.cpp" line="158"/>
<source>ID</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/remotedecklist_treewidget.cpp" line="155"/>
<location filename="../src/remotedecklist_treewidget.cpp" line="159"/>
<source>Upload time</source>
<translation type="unfinished"></translation>
</message>