mirror of
https://github.com/python/cpython.git
synced 2025-07-18 16:55:20 +00:00
Patch #621891: Add askopenfile{name}s.
This commit is contained in:
parent
2ec362717b
commit
b24e3477dc
2 changed files with 38 additions and 5 deletions
|
@ -29,12 +29,16 @@
|
||||||
#
|
#
|
||||||
# - title: dialog title
|
# - title: dialog title
|
||||||
#
|
#
|
||||||
|
# - multiple: if true user may select more than one file
|
||||||
|
#
|
||||||
# options for the directory chooser:
|
# options for the directory chooser:
|
||||||
#
|
#
|
||||||
# - initialdir, parent, title: see above
|
# - initialdir, parent, title: see above
|
||||||
#
|
#
|
||||||
# - mustexist: if true, user must pick an existing directory
|
# - mustexist: if true, user must pick an existing directory
|
||||||
#
|
#
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
from tkCommonDialog import Dialog
|
from tkCommonDialog import Dialog
|
||||||
|
|
||||||
|
@ -98,7 +102,18 @@ def asksaveasfilename(**options):
|
||||||
|
|
||||||
return SaveAs(**options).show()
|
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):
|
def askopenfile(mode = "r", **options):
|
||||||
"Ask for a filename to open, and returned the opened file"
|
"Ask for a filename to open, and returned the opened file"
|
||||||
|
@ -108,6 +123,23 @@ def askopenfile(mode = "r", **options):
|
||||||
return open(filename, mode)
|
return open(filename, mode)
|
||||||
return None
|
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):
|
def asksaveasfile(mode = "w", **options):
|
||||||
"Ask for a filename to save as, and returned the opened file"
|
"Ask for a filename to save as, and returned the opened file"
|
||||||
|
|
||||||
|
|
|
@ -348,11 +348,12 @@ Extension modules
|
||||||
Library
|
Library
|
||||||
-------
|
-------
|
||||||
|
|
||||||
- Various features of Tk 8.4 are exposed in Tkinter.py.
|
- Various features of Tk 8.4 are exposed in Tkinter.py. The multiple
|
||||||
|
option of tkFileDialog is exposed as function askopenfile{,name}s.
|
||||||
|
|
||||||
- Various configure methods of Tkinter have been stream-lined, so
|
- Various configure methods of Tkinter have been stream-lined, so that
|
||||||
that tag_configure, image_configure, window_configure now return
|
tag_configure, image_configure, window_configure now return a
|
||||||
a dictionary when invoked with no argument.
|
dictionary when invoked with no argument.
|
||||||
|
|
||||||
- Importing the readline module now no longer has the side effect of
|
- Importing the readline module now no longer has the side effect of
|
||||||
calling setlocale(LC_CTYPE, ""). The initial "C" locale, or
|
calling setlocale(LC_CTYPE, ""). The initial "C" locale, or
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue