mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 21:21:22 +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
	
	 Martin v. Löwis
						Martin v. Löwis