Author: esr
Date: Sun Oct 12 01:07:34 2008
New Revision: 30065
URL: http://svn.gna.org/viewcvs/wesnoth?rev=30065&view=rev
Log:
trackplacer: correctly modal file selector.
Modified:
trunk/data/tools/trackplacer
Modified: trunk/data/tools/trackplacer
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/data/tools/trackplacer?rev=30065&r1=30064&r2=30065&view=diff
==============================================================================
--- trunk/data/tools/trackplacer (original)
+++ trunk/data/tools/trackplacer Sun Oct 12 01:07:34 2008
@@ -93,28 +93,28 @@
self.track.pop()
class ModalFileSelector:
- def __init__(self, default):
+ def __init__(self, default, blocker=False):
self.default = default
self.filename = None
# Create a new file selection widget
self.filew = gtk.FileSelection("File selection")
-
- self.filew.connect("destroy", self.destroy)
- # Connect the ok_button to file_selected method
- self.filew.ok_button.connect("clicked", self.file_selected)
-
- # Connect the cancel_button to destroy the widget
- self.filew.cancel_button.connect("clicked",
- lambda w: self.filew.destroy())
-
+ self.filew.set_modal(True);
+
+ if blocker:
+ self.filew.connect("destroy", lambda w: sys.exit(0))
+
+ self.filew.ok_button.connect("clicked", self.selection_ok)
+ self.filew.cancel_button.connect("clicked", self.selection_canceled)
self.filew.set_filename(self.default)
self.filew.run()
- def file_selected(self, w):
+ def selection_canceled(self, widget):
+ self.filename = None
+ self.filew.destroy()
+
+ def selection_ok(self, widget):
self.filename = self.filew.get_filename()
-
- def destroy(self, widget):
- sys.exit(0)
+ self.filew.destroy()
# Backing pixmap for drawing area
pixmap = None
_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits