mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 21:51:50 +00:00 
			
		
		
		
	bpo-37627: Initialize IDLE Custom Run dialog with previous entries (#14870)
Repeat the command line arguments most recently entered before so the user can edit them.
This commit is contained in:
		
							parent
							
								
									02c91f59b6
								
							
						
					
					
						commit
						35b87e6001
					
				
					 4 changed files with 22 additions and 10 deletions
				
			
		|  | @ -39,6 +39,8 @@ def __init__(self, editwin): | |||
|         # XXX This should be done differently | ||||
|         self.flist = self.editwin.flist | ||||
|         self.root = self.editwin.root | ||||
|         # cli_args is list of strings that extends sys.argv | ||||
|         self.cli_args = [] | ||||
| 
 | ||||
|         if macosx.isCocoaTk(): | ||||
|             self.editwin.text_frame.bind('<<run-module-event-2>>', self._run_module_event) | ||||
|  | @ -137,10 +139,11 @@ def _run_module_event(self, event, *, customize=False): | |||
|             return 'break' | ||||
|         if customize: | ||||
|             title = f"Customize {self.editwin.short_title()} Run" | ||||
|             run_args = CustomRun(self.shell.text, title).result | ||||
|             run_args = CustomRun(self.shell.text, title, | ||||
|                                  cli_args=self.cli_args).result | ||||
|             if not run_args:  # User cancelled. | ||||
|                 return 'break' | ||||
|         cli_args, restart = run_args if customize else ([], True) | ||||
|         self.cli_args, restart = run_args if customize else ([], True) | ||||
|         interp = self.shell.interp | ||||
|         if pyshell.use_subprocess and restart: | ||||
|             interp.restart_subprocess( | ||||
|  | @ -148,8 +151,8 @@ def _run_module_event(self, event, *, customize=False): | |||
|                     self.editwin._filename_to_unicode(filename)) | ||||
|         dirname = os.path.dirname(filename) | ||||
|         argv = [filename] | ||||
|         if cli_args: | ||||
|             argv += cli_args | ||||
|         if self.cli_args: | ||||
|             argv += self.cli_args | ||||
|         interp.runcommand(f"""if 1: | ||||
|             __file__ = {filename!r} | ||||
|             import sys as _sys | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Ngalim Siregar
						Ngalim Siregar