From: <umg...@us...> - 2007-06-25 09:46:38
|
Revision: 451 http://svn.sourceforge.net/pybridge/?rev=451&view=rev Author: umgangee Date: 2007-06-25 02:46:35 -0700 (Mon, 25 Jun 2007) Log Message: ----------- Add a confirmation dialog when user requests to leave table whilst playing a game. Modified Paths: -------------- trunk/pybridge/pybridge/ui/window_bridgetable.py Modified: trunk/pybridge/pybridge/ui/window_bridgetable.py =================================================================== --- trunk/pybridge/pybridge/ui/window_bridgetable.py 2007-06-24 16:28:19 UTC (rev 450) +++ trunk/pybridge/pybridge/ui/window_bridgetable.py 2007-06-25 09:46:35 UTC (rev 451) @@ -615,10 +615,30 @@ def on_leavetable_clicked(self, widget, *args): - d = client.leaveTable(self.table.id) - d.addErrback(self.errback) + # If user is currently playing a game, request confirmation. + if self.player and self.table.game.inProgress(): + dialog = gtk.MessageDialog(parent=self.window, flags=gtk.DIALOG_MODAL, + type=gtk.MESSAGE_QUESTION) + dialog.set_title(_('Leave table?')) + dialog.add_button(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL) + dialog.add_button(_('Leave Table'), gtk.RESPONSE_OK) + dialog.set_markup(_('Are you sure you wish to leave this table?')) + dialog.format_secondary_text(_('You are currently playing a game. Leaving may forfeit the game, or incur penalties.')) + def dialog_response_cb(dialog, response_id): + dialog.destroy() + if response_id == gtk.RESPONSE_OK: + d = client.leaveTable(self.table.id) + d.addErrback(self.errback) + dialog.connect('response', dialog_response_cb) + dialog.show() + + else: + d = client.leaveTable(self.table.id) + d.addErrback(self.errback) + + def on_chat_message_changed(self, widget, *args): sensitive = self.chat_message.get_text() != '' self.chat_send.set_property('sensitive', sensitive) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |