diff Lib/lib-tk/tkFileDialog.py @ 25755:6d35d4292dec legacy-trunk

Patch #621891: Add askopenfile{name}s.
author Martin v. Löwis <martin@v.loewis.de>
date Sun, 13 Oct 2002 10:28:04 +0000
parents 289ea1d5c5ac
children ef531482bb37
line wrap: on
line diff
--- a/Lib/lib-tk/tkFileDialog.py	Sun Oct 13 10:22:08 2002 +0000
+++ b/Lib/lib-tk/tkFileDialog.py	Sun Oct 13 10:28:04 2002 +0000
@@ -29,12 +29,16 @@
 #
 # - title: dialog title
 #
+# - multiple: if true user may select more than one file
+#
 # options for the directory chooser:
 #
 # - initialdir, parent, title: see above
 #
 # - mustexist: if true, user must pick an existing directory
 #
+#
+
 
 from tkCommonDialog import Dialog
 
@@ -98,7 +102,18 @@
 
     return SaveAs(**options).show()
 
-# FIXME: are the following two perhaps a bit too convenient?
+def askopenfilenames(**options):
+    """Ask for multiple filenames to open
+    
+    Returns a list of filenames or empty list if 
+    cancel button selected
+    """
+    options["multiple"]=1
+    files=Open(**options).show()
+    return files.split()
+
+
+# FIXME: are the following  perhaps a bit too convenient?
 
 def askopenfile(mode = "r", **options):
     "Ask for a filename to open, and returned the opened file"
@@ -108,6 +123,23 @@
         return open(filename, mode)
     return None
 
+def askopenfiles(mode = "r", **options):
+    """Ask for multiple filenames and return the open file
+    objects
+    
+    returns a list of open file objects or an empty list if 
+    cancel selected
+    """
+
+    files = askopenfilenames(**options)
+    if files:
+        ofiles=[]
+        for filename in files:
+            ofiles.append(open(filename, mode))
+        files=ofiles
+    return files
+
+
 def asksaveasfile(mode = "w", **options):
     "Ask for a filename to save as, and returned the opened file"