[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
r6232 - trunk/gnue-forms/src/uidrivers/gtk2
From: |
johannes |
Subject: |
r6232 - trunk/gnue-forms/src/uidrivers/gtk2 |
Date: |
Mon, 30 Aug 2004 13:47:57 -0500 (CDT) |
Author: johannes
Date: 2004-08-30 13:47:56 -0500 (Mon, 30 Aug 2004)
New Revision: 6232
Modified:
trunk/gnue-forms/src/uidrivers/gtk2/UILoginHandler.py
Log:
Make sure the dialog is freed after fetching the results.
Modified: trunk/gnue-forms/src/uidrivers/gtk2/UILoginHandler.py
===================================================================
--- trunk/gnue-forms/src/uidrivers/gtk2/UILoginHandler.py 2004-08-30
14:05:38 UTC (rev 6231)
+++ trunk/gnue-forms/src/uidrivers/gtk2/UILoginHandler.py 2004-08-30
18:47:56 UTC (rev 6232)
@@ -46,82 +46,83 @@
(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL,
gtk.STOCK_OK , gtk.RESPONSE_OK))
- self.dialog.set_border_width (10)
+ try:
+ self.dialog.set_border_width (10)
- imageFile = gConfigForms('loginPNG')
- if not os.path.exists (imageFile):
- imageFile = os.path.join (os.path.normpath ( \
- GConfig.getInstalledBase ('forms_images', 'common_images')),
- gConfigForms ('loginPNG'))
+ imageFile = gConfigForms('loginPNG')
+ if not os.path.exists (imageFile):
+ imageFile = os.path.join (os.path.normpath ( \
+ GConfig.getInstalledBase ('forms_images', 'common_images')),
+ gConfigForms ('loginPNG'))
- bmp = gtk.Image ()
- bmp.set_from_file (imageFile)
- self.dialog.vbox.pack_start (bmp)
- bmp.show ()
+ bmp = gtk.Image ()
+ bmp.set_from_file (imageFile)
+ self.dialog.vbox.pack_start (bmp)
+ bmp.show ()
- text = u_('Login required for %(newline)s"%(description)s"') \
- % {'newline': len (description) and '\n' or '',
- 'description': description or connection}
- label = gtk.Label (text)
- label.set_line_wrap (True)
- label.set_justify (gtk.JUSTIFY_CENTER)
- self.dialog.vbox.pack_start (label, True, True, 20)
- label.show ()
-
- table = gtk.Table (len (fields), 2)
- self.textEntries = []
-
- for ix in range (len (fields)):
- item = fields [ix]
- text = "%s" % item [1]
- if isinstance (text, types.StringType):
- text = unicode (text, i18n.encoding)
+ text = u_('Login required for %(newline)s"%(description)s"') \
+ % {'newline': len (description) and '\n' or '',
+ 'description': description or connection}
label = gtk.Label (text)
- label.set_alignment (0, label.get_alignment () [1])
- table.attach (label, 0, 1, ix, ix + 1)
+ label.set_line_wrap (True)
+ label.set_justify (gtk.JUSTIFY_CENTER)
+ self.dialog.vbox.pack_start (label, True, True, 20)
label.show ()
- entry = gtk.Entry ()
- if item [2]:
- entry.set_visibility (0)
- table.attach (entry, 1, 2, ix, ix + 1)
- entry.connect ('key-press-event', self._keypress, ix + 1)
- entry.show ()
+ table = gtk.Table (len (fields), 2)
+ self.textEntries = []
- self.textEntries.append (entry)
+ for ix in range (len (fields)):
+ item = fields [ix]
+ text = "%s" % item [1]
+ if isinstance (text, types.StringType):
+ text = unicode (text, i18n.encoding)
+ label = gtk.Label (text)
+ label.set_alignment (0, label.get_alignment () [1])
+ table.attach (label, 0, 1, ix, ix + 1)
+ label.show ()
- table.show ()
- self.dialog.vbox.pack_start (table, True, True, 10)
+ entry = gtk.Entry ()
+ if item [2]:
+ entry.set_visibility (0)
+ table.attach (entry, 1, 2, ix, ix + 1)
+ entry.connect ('key-press-event', self._keypress, ix + 1)
+ entry.show ()
- # Add an error text if given
- if error is not None:
- if isinstance (error, types.StringType):
- print "Error:", error
- error = unicode (error, i18n.encoding)
- label = gtk.Label (error)
- label.set_line_wrap (True)
- label.modify_fg (gtk.STATE_NORMAL, gtk.gdk.color_parse ('red'))
- self.dialog.vbox.pack_start (label, True, True, 10)
- label.show ()
+ self.textEntries.append (entry)
- # focus first entry
- self.textEntries [0].grab_focus ()
+ table.show ()
+ self.dialog.vbox.pack_start (table, True, True, 10)
- self.dialog.set_position (1) # for center
- self.dialog.show_all ()
+ # Add an error text if given
+ if error is not None:
+ if isinstance (error, types.StringType):
+ error = unicode (error, i18n.encoding)
+ label = gtk.Label (error)
+ label.set_line_wrap (True)
+ label.modify_fg (gtk.STATE_NORMAL, gtk.gdk.color_parse ('red'))
+ self.dialog.vbox.pack_start (label, True, True, 10)
+ label.show ()
- result = self.dialog.run ()
- self.dialog.destroy ()
+ # focus first entry
+ self.textEntries [0].grab_focus ()
+
+ self.dialog.set_position (1) # for center
+ self.dialog.show_all ()
- self._completed = result == gtk.RESPONSE_OK
- if not self._completed:
- raise GLoginHandler.UserCanceledLogin
+ result = self.dialog.run ()
+ self._completed = result == gtk.RESPONSE_OK
+ if not self._completed:
+ raise GLoginHandler.UserCanceledLogin
- result = {}
- for ix in range (len (fields)):
- text = unicode (self.textEntries [ix].get_text (), 'utf-8')
- result [fields [ix][0]] = text
+ result = {}
+ for ix in range (len (fields)):
+ text = unicode (self.textEntries [ix].get_text (), 'utf-8')
+ result [fields [ix][0]] = text
+ finally:
+ self.dialog.destroy ()
+
return result
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- r6232 - trunk/gnue-forms/src/uidrivers/gtk2,
johannes <=