Welcome to mirror list, hosted at ThFree Co, Russian Federation.

dev.gajim.org/gajim/gajim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYann Leboulanger <asterix@lagaule.org>2008-08-11 12:47:06 +0400
committerYann Leboulanger <asterix@lagaule.org>2008-08-11 12:47:06 +0400
commitf36b1643abd9b18e067f5bd0baaea4fbc4b7c219 (patch)
treeb420fb419b64dfee90e47d7a59eb030c2166ad9d
parentf18d97b97a389c8254529b7fd9a2e80f792ca251 (diff)
better DubbleInputDialog
-rw-r--r--src/dialogs.py32
1 files changed, 22 insertions, 10 deletions
diff --git a/src/dialogs.py b/src/dialogs.py
index eb22368f2..4b1c1dd5b 100644
--- a/src/dialogs.py
+++ b/src/dialogs.py
@@ -1547,24 +1547,30 @@ class DubbleInputDialog:
self.input_entry2.set_text(input_str2)
self.input_entry2.select_region(0, -1) # select all
- self.is_modal = is_modal
- if not is_modal and ok_handler is not None:
- self.ok_handler = ok_handler
- okbutton = self.xml.get_widget('okbutton')
- okbutton.connect('clicked', self.on_okbutton_clicked)
- cancelbutton = self.xml.get_widget('cancelbutton')
- cancelbutton.connect('clicked', self.on_cancelbutton_clicked)
- self.xml.signal_autoconnect(self)
- self.dialog.show_all()
+ self.dialog.set_modal(is_modal)
+
+ self.ok_handler = ok_handler
+ okbutton = self.xml.get_widget('okbutton')
+ okbutton.connect('clicked', self.on_okbutton_clicked)
+ cancelbutton = self.xml.get_widget('cancelbutton')
+ cancelbutton.connect('clicked', self.on_cancelbutton_clicked)
+ self.xml.signal_autoconnect(self)
+ self.dialog.show_all()
def on_dubbleinput_dialog_destroy(self, widget):
- if self.cancel_handler:
+ if not cancel_handler:
+ return False
+ if isinstance(self.cancel_handler, tuple):
+ self.cancel_handler[0](*self.cancel_handler[1:])
+ else:
self.cancel_handler()
def on_okbutton_clicked(self, widget):
user_input1 = self.input_entry1.get_text().decode('utf-8')
user_input2 = self.input_entry2.get_text().decode('utf-8')
self.dialog.destroy()
+ if not ok_handler:
+ return
if isinstance(self.ok_handler, tuple):
self.ok_handler[0](user_input1, user_input2, *self.ok_handler[1:])
else:
@@ -1572,6 +1578,12 @@ class DubbleInputDialog:
def on_cancelbutton_clicked(self, widget):
self.dialog.destroy()
+ if not cancel_handler:
+ return
+ if isinstance(self.cancel_handler, tuple):
+ self.cancel_handler[0](*self.cancel_handler[1:])
+ else:
+ self.cancel_handler()
class SubscriptionRequestWindow:
def __init__(self, jid, text, account, user_nick=None):