symbian-qemu-0.9.1-12/python-2.6.1/Lib/idlelib/ChangeLog
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 Please refer to the IDLEfork and IDLE CVS repositories for
       
     2 change details subsequent to the 0.8.1 release.
       
     3 
       
     4 
       
     5 IDLEfork ChangeLog
       
     6 ==================
       
     7 
       
     8 2001-07-20 11:35  elguavas
       
     9 
       
    10 	* README.txt, NEWS.txt: bring up to date for 0.8.1 release
       
    11 
       
    12 2001-07-19 16:40  elguavas
       
    13 
       
    14 	* IDLEFORK.html: replaced by IDLEFORK-index.html
       
    15 
       
    16 2001-07-19 16:39  elguavas
       
    17 
       
    18 	* IDLEFORK-index.html: updated placeholder idlefork homepage
       
    19 
       
    20 2001-07-19 14:49  elguavas
       
    21 
       
    22 	* ChangeLog, EditorWindow.py, INSTALLATION, NEWS.txt, README.txt,
       
    23 	TODO.txt, idlever.py: 
       
    24 	minor tidy-ups ready for 0.8.1 alpha tarball release
       
    25 
       
    26 2001-07-17 15:12  kbk
       
    27 
       
    28 	* INSTALLATION, setup.py: INSTALLATION: Remove the coexist.patch
       
    29 	instructions
       
    30 	
       
    31 	**************** setup.py:
       
    32 	
       
    33 	Remove the idles script, add some words on IDLE Fork to the
       
    34 	long_description, and clean up some line spacing.
       
    35 
       
    36 2001-07-17 15:01  kbk
       
    37 
       
    38 	* coexist.patch: Put this in the attic, at least for now...
       
    39 
       
    40 2001-07-17 14:59  kbk
       
    41 
       
    42 	* PyShell.py, idle, idles: Implement idle command interface as
       
    43 	suggested by GvR [idle-dev] 16 July **************** PyShell: Added
       
    44 	functionality:
       
    45 	
       
    46 	usage: idle.py [-c command] [-d] [-i] [-r script] [-s] [-t title]
       
    47 	[arg] ...
       
    48 	
       
    49 	idle file(s)	(without options) edit the file(s)
       
    50 	
       
    51 	-c cmd	   run the command in a shell -d	 enable the
       
    52 	debugger -i	    open an interactive shell -i file(s) open a
       
    53 	shell and also an editor window for each file -r script  run a file
       
    54 	as a script in a shell -s	  run $IDLESTARTUP or
       
    55 	$PYTHONSTARTUP before anything else -t title   set title of shell
       
    56 	window
       
    57 	
       
    58 	Remaining arguments are applied to the command (-c) or script (-r).
       
    59 	
       
    60 	****************** idles: Removed the idles script, not needed
       
    61 	
       
    62 	****************** idle:  Removed the IdleConf references, not
       
    63 	required anymore
       
    64 
       
    65 2001-07-16 17:08  kbk
       
    66 
       
    67 	* INSTALLATION, coexist.patch: Added installation instructions.
       
    68 	
       
    69 	Added a patch which modifies idlefork so that it can co-exist with
       
    70 	"official" IDLE in the site-packages directory. This patch is not
       
    71 	necessary if only idlefork IDLE is installed. See INSTALLATION for
       
    72 	further details.
       
    73 
       
    74 2001-07-16 15:50  kbk
       
    75 
       
    76 	* idles: Add a script "idles" which opens a Python Shell window.
       
    77 	
       
    78 	The default behaviour of idlefork idle is to open an editor window
       
    79 	instead of a shell. Complex expressions may be run in a fresh
       
    80 	environment by selecting "run".  There are times, however, when a
       
    81 	shell is desired.  Though one can be started by "idle -t 'foo'",
       
    82 	this script is more convenient.  In addition, a shell and an editor
       
    83 	window can be started in parallel by "idles -e foo.py".
       
    84 
       
    85 2001-07-16 15:25  kbk
       
    86 
       
    87 	* PyShell.py: Call out IDLE Fork in startup message.
       
    88 
       
    89 2001-07-16 14:00  kbk
       
    90 
       
    91 	* PyShell.py, setup.py: Add a script "idles" which opens a Python
       
    92 	Shell window.
       
    93 	
       
    94 	The default behaviour of idlefork idle is to open an editor window
       
    95 	instead of a shell. Complex expressions may be run in a fresh
       
    96 	environment by selecting "run".  There are times, however, when a
       
    97 	shell is desired.  Though one can be started by "idle -t 'foo'",
       
    98 	this script is more convenient.  In addition, a shell and an editor
       
    99 	window can be started in parallel by "idles -e foo.py".
       
   100 
       
   101 2001-07-15 03:06  kbk
       
   102 
       
   103 	* pyclbr.py, tabnanny.py: tabnanny and pyclbr are now found in /Lib
       
   104 
       
   105 2001-07-15 02:29  kbk
       
   106 
       
   107 	* BrowserControl.py: Remove, was retained for 1.5.2 support
       
   108 
       
   109 2001-07-14 15:48  kbk
       
   110 
       
   111 	* setup.py: Installing Idle to site-packages via Distutils does not
       
   112 	copy the Idle help.txt file.
       
   113 	
       
   114 	Ref SF Python Patch 422471
       
   115 
       
   116 2001-07-14 15:26  kbk
       
   117 
       
   118 	* keydefs.py: py-cvs-2001_07_13 (Rev 1.3) merge
       
   119 	
       
   120 	"Make copy, cut and paste events case insensitive.  Reported by
       
   121 	Patrick K. O'Brien on idle-dev. (Should other bindings follow
       
   122 	suit?)" --GvR
       
   123 
       
   124 2001-07-14 15:21  kbk
       
   125 
       
   126 	* idle.py: py-cvs-2001_07_13 (Rev 1.4) merge
       
   127 	
       
   128 	"Move the action of loading the configuration to the IdleConf
       
   129 	module rather than the idle.py script.	This has advantages and
       
   130 	disadvantages; the biggest advantage being that we can more easily
       
   131 	have an alternative main program."  --GvR
       
   132 
       
   133 2001-07-14 15:18  kbk
       
   134 
       
   135 	* extend.txt: py-cvs-2001_07_13 (Rev 1.4) merge
       
   136 	
       
   137 	"Quick update to the extension mechanism (extend.py is gone, long
       
   138 	live config.txt)" --GvR
       
   139 
       
   140 2001-07-14 15:15  kbk
       
   141 
       
   142 	* StackViewer.py: py-cvs-2001_07_13 (Rev 1.16) merge
       
   143 	
       
   144 	"Refactored, with some future plans in mind. This now uses the new
       
   145 	gotofileline() method defined in FileList.py"  --GvR
       
   146 
       
   147 2001-07-14 15:10  kbk
       
   148 
       
   149 	* PyShell.py: py-cvs-2001_07_13 (Rev 1.34) merge
       
   150 	
       
   151 	"Amazing.  A very subtle change in policy in descr-branch actually
       
   152 	found a bug here.  Here's the deal: Class PyShell derives from
       
   153 	class OutputWindow.  Method PyShell.close() wants to invoke its
       
   154 	parent method, but because PyShell long ago was inherited from
       
   155 	class PyShellEditorWindow, it invokes
       
   156 	PyShelEditorWindow.close(self).  Now, class PyShellEditorWindow
       
   157 	itself derives from class OutputWindow, and inherits the close()
       
   158 	method from there without overriding it.  Under the old rules,
       
   159 	PyShellEditorWindow.close would return an unbound method restricted
       
   160 	to the class that defined the implementation of close(), which was
       
   161 	OutputWindow.close.  Under the new rules, the unbound method is
       
   162 	restricted to the class whose method was requested, that is
       
   163 	PyShellEditorWindow, and this was correctly trapped as an error."
       
   164 	--GvR
       
   165 
       
   166 2001-07-14 14:59  kbk
       
   167 
       
   168 	* PyParse.py: py-cvs-2001_07_13 (Rel 1.9) merge
       
   169 	
       
   170 	"Taught IDLE's autoident parser that "yield" is a keyword that
       
   171 	begins a stmt.	Along w/ the preceding change to keyword.py, making
       
   172 	all this work w/ a future-stmt just looks harder and harder."
       
   173 	--tim_one
       
   174 	
       
   175 	(From Rel 1.8: "Hack to make this still work with Python 1.5.2. 
       
   176 	;-( " --fdrake)
       
   177 
       
   178 2001-07-14 14:51  kbk
       
   179 
       
   180 	* IdleConf.py: py-cvs-2001_07_13 (Rel 1.7) merge
       
   181 	
       
   182 	"Move the action of loading the configuration to the IdleConf
       
   183 	module rather than the idle.py script.	This has advantages and
       
   184 	disadvantages; the biggest advantage being that we can more easily
       
   185 	have an alternative main program." --GvR
       
   186 
       
   187 2001-07-14 14:45  kbk
       
   188 
       
   189 	* FileList.py: py-cvs-2000_07_13 (Rev 1.9) merge
       
   190 	
       
   191 	"Delete goodname() method, which is unused. Add gotofileline(), a
       
   192 	convenience method which I intend to use in a variant. Rename
       
   193 	test() to _test()."  --GvR
       
   194 	
       
   195 	This was an interesting merge. The join completely missed removing
       
   196 	goodname(), which was adjacent, but outside of, a small conflict. 
       
   197 	I only caught it by comparing the 1.1.3.2/1.1.3.3 diff.  CVS ain't
       
   198 	infallible.
       
   199 
       
   200 2001-07-14 13:58  kbk
       
   201 
       
   202 	* EditorWindow.py: py-cvs-2000_07_13 (Rev 1.38) merge "Remove
       
   203 	legacy support for the BrowserControl module; the webbrowser module
       
   204 	has been included since Python 2.0, and that is the preferred
       
   205 	interface." --fdrake
       
   206 
       
   207 2001-07-14 13:32  kbk
       
   208 
       
   209 	* EditorWindow.py, FileList.py, IdleConf.py, PyParse.py,
       
   210 	PyShell.py, StackViewer.py, extend.txt, idle.py, keydefs.py: Import
       
   211 	the 2001 July 13 23:59 GMT version of Python CVS IDLE on the
       
   212 	existing 1.1.3 vendor branch named py-cvs-vendor-branch. Release
       
   213 	tag is py-cvs-2001_07_13.
       
   214 
       
   215 2001-07-14 12:02  kbk
       
   216 
       
   217 	* Icons/python.gif: py-cvs-rel2_1 (Rev 1.2) merge Copied py-cvs rev
       
   218 	1.2 changed file to idlefork MAIN
       
   219 
       
   220 2001-07-14 11:58  kbk
       
   221 
       
   222 	* Icons/minusnode.gif: py-cvs-rel2_1 (Rev 1.2) merge Copied py-cvs
       
   223 	1.2 changed file to idlefork MAIN
       
   224 
       
   225 2001-07-14 11:23  kbk
       
   226 
       
   227 	* ScrolledList.py: py-cvs-rel2_1 (rev 1.5) merge - whitespace
       
   228 	normalization
       
   229 
       
   230 2001-07-14 11:20  kbk
       
   231 
       
   232 	* Separator.py: py-cvs-rel2_1 (Rev 1.3) merge - whitespace
       
   233 	normalization
       
   234 
       
   235 2001-07-14 11:16  kbk
       
   236 
       
   237 	* StackViewer.py: py-cvs-rel2_1 (Rev 1.15) merge - whitespace
       
   238 	normalization
       
   239 
       
   240 2001-07-14 11:14  kbk
       
   241 
       
   242 	* ToolTip.py: py-cvs-rel2_1 (Rev 1.2) merge - whitespace
       
   243 	normalization
       
   244 
       
   245 2001-07-14 10:13  kbk
       
   246 
       
   247 	* PyShell.py: cvs-py-rel2_1 (Rev 1.29 - 1.33) merge
       
   248 	
       
   249 	Merged the following py-cvs revs without conflict: 1.29 Reduce
       
   250 	copyright text output at startup 1.30 Delay setting sys.args until
       
   251 	Tkinter is fully initialized 1.31 Whitespace normalization 1.32
       
   252 	Turn syntax warning into error when interactive 1.33 Fix warning
       
   253 	initialization bug
       
   254 	
       
   255 	Note that module is extensively modified wrt py-cvs
       
   256 
       
   257 2001-07-14 06:33  kbk
       
   258 
       
   259 	* PyParse.py: py-cvs-rel2_1 (Rev 1.6 - 1.8) merge Fix autoindent
       
   260 	bug and deflect Unicode from text.get()
       
   261 
       
   262 2001-07-14 06:00  kbk
       
   263 
       
   264 	* Percolator.py: py-cvs-rel2_1 (Rev 1.3) "move "from Tkinter import
       
   265 	*" to module level" --jhylton
       
   266 
       
   267 2001-07-14 05:57  kbk
       
   268 
       
   269 	* PathBrowser.py: py-cvs-rel2_1 (Rev 1.6) merge - whitespace
       
   270 	normalization
       
   271 
       
   272 2001-07-14 05:49  kbk
       
   273 
       
   274 	* ParenMatch.py: cvs-py-rel2_1 (Rev 1.5) merge - whitespace
       
   275 	normalization
       
   276 
       
   277 2001-07-14 03:57  kbk
       
   278 
       
   279 	* ObjectBrowser.py: py-cvs-rel2_1 (Rev 1.3) merge "Make the test
       
   280 	program work outside IDLE."  -- GvR
       
   281 
       
   282 2001-07-14 03:52  kbk
       
   283 
       
   284 	* MultiStatusBar.py: py-cvs-rel2_1 (Rev 1.2) merge - whitespace
       
   285 	normalization
       
   286 
       
   287 2001-07-14 03:44  kbk
       
   288 
       
   289 	* MultiScrolledLists.py: py-cvs-rel2_1 (Rev 1.2) merge - whitespace
       
   290 	normalization
       
   291 
       
   292 2001-07-14 03:40  kbk
       
   293 
       
   294 	* IdleHistory.py: py-cvs-rel2_1 (Rev 1.4) merge - whitespace
       
   295 	normalization
       
   296 
       
   297 2001-07-14 03:38  kbk
       
   298 
       
   299 	* IdleConf.py: py-cvs-rel2_1 (Rev 1.6) merge - whitespace
       
   300 	normalization
       
   301 
       
   302 2001-07-13 14:18  kbk
       
   303 
       
   304 	* IOBinding.py: py-cvs-rel2_1 (Rev 1.4) merge - move "import *" to
       
   305 	module level
       
   306 
       
   307 2001-07-13 14:12  kbk
       
   308 
       
   309 	* FormatParagraph.py: py-cvs-rel2_1 (Rev 1.9) merge - whitespace
       
   310 	normalization
       
   311 
       
   312 2001-07-13 14:07  kbk
       
   313 
       
   314 	* FileList.py: py-cvs-rel2_1 (Rev 1.8) merge - whitespace
       
   315 	normalization
       
   316 
       
   317 2001-07-13 13:35  kbk
       
   318 
       
   319 	* EditorWindow.py: py-cvs-rel2_1 (Rev 1.33 - 1.37) merge
       
   320 	
       
   321 	VP IDLE version depended on VP's ExecBinding.py and spawn.py to get
       
   322 	the path to the Windows Doc directory (relative to python.exe).
       
   323 	Removed this conflicting code in favor of py-cvs updates which on
       
   324 	Windows use a hard coded path relative to the location of this
       
   325 	module. py-cvs updates include support for webbrowser.py.  Module
       
   326 	still has BrowserControl.py for 1.5.2 support.
       
   327 	
       
   328 	At this point, the differences wrt py-cvs relate to menu
       
   329 	functionality.
       
   330 
       
   331 2001-07-13 11:30  kbk
       
   332 
       
   333 	* ConfigParser.py: py-cvs-rel2_1 merge - Remove, lives in /Lib
       
   334 
       
   335 2001-07-13 10:10  kbk
       
   336 
       
   337 	* Delegator.py: py-cvs-rel2_1 (Rev 1.3) merge - whitespace
       
   338 	normalization
       
   339 
       
   340 2001-07-13 10:07  kbk
       
   341 
       
   342 	* Debugger.py: py-cvs-rel2_1 (Rev 1.15) merge - whitespace
       
   343 	normalization
       
   344 
       
   345 2001-07-13 10:04  kbk
       
   346 
       
   347 	* ColorDelegator.py: py-cvs-rel2_1 (Rev 1.11 and 1.12) merge
       
   348 	Colorize "as" after "import" / use DEBUG instead of __debug__
       
   349 
       
   350 2001-07-13 09:54  kbk
       
   351 
       
   352 	* ClassBrowser.py: py-cvs-rel2_1 (Rev 1.12) merge - whitespace
       
   353 	normalization
       
   354 
       
   355 2001-07-13 09:41  kbk
       
   356 
       
   357 	* BrowserControl.py: py-cvs-rel2_1 (Rev 1.1) merge - New File -
       
   358 	Force HEAD to trunk with -f Note: browser.py was renamed
       
   359 	BrowserControl.py 10 May 2000. It provides a collection of classes
       
   360 	and convenience functions to control external browsers "for 1.5.2
       
   361 	support". It was removed from py-cvs 18 April 2001.
       
   362 
       
   363 2001-07-13 09:10  kbk
       
   364 
       
   365 	* CallTips.py: py-cvs-rel2_1 (Rev 1.8) merge - whitespace
       
   366 	normalization
       
   367 
       
   368 2001-07-13 08:26  kbk
       
   369 
       
   370 	* CallTipWindow.py: py-cvs-rel2_1 (Rev 1.3) merge - whitespace
       
   371 	normalization
       
   372 
       
   373 2001-07-13 08:13  kbk
       
   374 
       
   375 	* AutoExpand.py: py-cvs-rel1_2 (Rev 1.4) merge, "Add Alt-slash to
       
   376 	Unix keydefs (I somehow need it on RH 6.2).  Get rid of assignment
       
   377 	to unused self.text.wordlist."	--GvR
       
   378 
       
   379 2001-07-12 16:54  elguavas
       
   380 
       
   381 	* ReplaceDialog.py: py-cvs merge, python 1.5.2 compatibility
       
   382 
       
   383 2001-07-12 16:46  elguavas
       
   384 
       
   385 	* ScriptBinding.py: py-cvs merge, better error dialog
       
   386 
       
   387 2001-07-12 16:38  elguavas
       
   388 
       
   389 	* TODO.txt: py-cvs merge, additions
       
   390 
       
   391 2001-07-12 15:35  elguavas
       
   392 
       
   393 	* WindowList.py: py-cvs merge, correct indentation
       
   394 
       
   395 2001-07-12 15:24  elguavas
       
   396 
       
   397 	* config.txt: py-cvs merge, correct typo
       
   398 
       
   399 2001-07-12 15:21  elguavas
       
   400 
       
   401 	* help.txt: py-cvs merge, update colour changing info
       
   402 
       
   403 2001-07-12 14:51  elguavas
       
   404 
       
   405 	* idle.py: py-cvs merge, idle_dir loading changed
       
   406 
       
   407 2001-07-12 14:44  elguavas
       
   408 
       
   409 	* idlever.py: py-cvs merge, version update
       
   410 
       
   411 2001-07-11 12:53  kbk
       
   412 
       
   413 	* BrowserControl.py: Initial revision
       
   414 
       
   415 2001-07-11 12:53  kbk
       
   416 
       
   417 	* AutoExpand.py, BrowserControl.py, CallTipWindow.py, CallTips.py,
       
   418 	ClassBrowser.py, ColorDelegator.py, Debugger.py, Delegator.py,
       
   419 	EditorWindow.py, FileList.py, FormatParagraph.py, IOBinding.py,
       
   420 	IdleConf.py, IdleHistory.py, MultiScrolledLists.py,
       
   421 	MultiStatusBar.py, ObjectBrowser.py, OutputWindow.py,
       
   422 	ParenMatch.py, PathBrowser.py, Percolator.py, PyParse.py,
       
   423 	PyShell.py, RemoteInterp.py, ReplaceDialog.py, ScriptBinding.py,
       
   424 	ScrolledList.py, Separator.py, StackViewer.py, TODO.txt,
       
   425 	ToolTip.py, WindowList.py, config.txt, help.txt, idle, idle.bat,
       
   426 	idle.py, idlever.py, setup.py, Icons/minusnode.gif,
       
   427 	Icons/python.gif: Import the release 2.1 version of Python CVS IDLE
       
   428 	on the existing 1.1.3 vendor branch named py-cvs-vendor-branch,
       
   429 	with release tag py-cvs-rel2_1.
       
   430 
       
   431 2001-07-11 12:34  kbk
       
   432 
       
   433 	* AutoExpand.py, AutoIndent.py, Bindings.py, CallTipWindow.py,
       
   434 	CallTips.py, ChangeLog, ClassBrowser.py, ColorDelegator.py,
       
   435 	Debugger.py, Delegator.py, EditorWindow.py, FileList.py,
       
   436 	FormatParagraph.py, FrameViewer.py, GrepDialog.py, IOBinding.py,
       
   437 	IdleConf.py, IdleHistory.py, MultiScrolledLists.py,
       
   438 	MultiStatusBar.py, NEWS.txt, ObjectBrowser.py, OldStackViewer.py,
       
   439 	OutputWindow.py, ParenMatch.py, PathBrowser.py, Percolator.py,
       
   440 	PyParse.py, PyShell.py, README.txt, RemoteInterp.py,
       
   441 	ReplaceDialog.py, ScriptBinding.py, ScrolledList.py,
       
   442 	SearchBinding.py, SearchDialog.py, SearchDialogBase.py,
       
   443 	SearchEngine.py, Separator.py, StackViewer.py, TODO.txt,
       
   444 	ToolTip.py, TreeWidget.py, UndoDelegator.py, WidgetRedirector.py,
       
   445 	WindowList.py, ZoomHeight.py, __init__.py, config-unix.txt,
       
   446 	config-win.txt, config.txt, eventparse.py, extend.txt, help.txt,
       
   447 	idle.bat, idle.py, idle.pyw, idlever.py, keydefs.py, pyclbr.py,
       
   448 	tabnanny.py, testcode.py, Icons/folder.gif, Icons/minusnode.gif,
       
   449 	Icons/openfolder.gif, Icons/plusnode.gif, Icons/python.gif,
       
   450 	Icons/tk.gif: Import the 9 March 2000 version of Python CVS IDLE as
       
   451 	1.1.3 vendor branch named py-cvs-vendor-branch.
       
   452 
       
   453 2001-07-04 13:43  kbk
       
   454 
       
   455 	* Icons/: folder.gif, minusnode.gif, openfolder.gif, plusnode.gif,
       
   456 	python.gif, tk.gif: Null commit with -f option to force an uprev
       
   457 	and put HEADs firmly on the trunk.
       
   458 
       
   459 2001-07-04 13:15  kbk
       
   460 
       
   461 	* AutoExpand.py, AutoIndent.py, Bindings.py, CallTipWindow.py,
       
   462 	CallTips.py, ChangeLog, ClassBrowser.py, ColorDelegator.py,
       
   463 	ConfigParser.py, Debugger.py, Delegator.py, EditorWindow.py,
       
   464 	ExecBinding.py, FileList.py, FormatParagraph.py, FrameViewer.py,
       
   465 	GrepDialog.py, IDLEFORK.html, IOBinding.py, IdleConf.py,
       
   466 	IdleHistory.py, MultiScrolledLists.py, MultiStatusBar.py, NEWS.txt,
       
   467 	ObjectBrowser.py, OldStackViewer.py, OutputWindow.py,
       
   468 	ParenMatch.py, PathBrowser.py, Percolator.py, PyParse.py,
       
   469 	PyShell.py, README.txt, Remote.py, RemoteInterp.py,
       
   470 	ReplaceDialog.py, ScriptBinding.py, ScrolledList.py,
       
   471 	SearchBinding.py, SearchDialog.py, SearchDialogBase.py,
       
   472 	SearchEngine.py, Separator.py, StackViewer.py, TODO.txt,
       
   473 	ToolTip.py, TreeWidget.py, UndoDelegator.py, WidgetRedirector.py,
       
   474 	WindowList.py, ZoomHeight.py, __init__.py, config-unix.txt,
       
   475 	config-win.txt, config.txt, eventparse.py, extend.txt, help.txt,
       
   476 	idle, idle.bat, idle.py, idle.pyw, idlever.py, keydefs.py,
       
   477 	loader.py, protocol.py, pyclbr.py, setup.py, spawn.py, tabnanny.py,
       
   478 	testcode.py: Null commit with -f option to force an uprev and put
       
   479 	HEADs firmly on the trunk.
       
   480 
       
   481 2001-06-27 10:24  elguavas
       
   482 
       
   483 	* IDLEFORK.html: updated contact details
       
   484 
       
   485 2001-06-25 17:23  elguavas
       
   486 
       
   487 	* idle, RemoteInterp.py, setup.py: Initial revision
       
   488 
       
   489 2001-06-25 17:23  elguavas
       
   490 
       
   491 	* idle, RemoteInterp.py, setup.py: import current python cvs idle
       
   492 	as a vendor branch
       
   493 
       
   494 2001-06-24 15:10  elguavas
       
   495 
       
   496 	* IDLEFORK.html: tiny change to test new syncmail setup
       
   497 
       
   498 2001-06-24 14:41  elguavas
       
   499 
       
   500 	* IDLEFORK.html: change to new developer contact, also a test
       
   501 	commit for new syncmail setup
       
   502 
       
   503 2001-06-23 18:15  elguavas
       
   504 
       
   505 	* IDLEFORK.html: tiny test update for revitalised idle-fork
       
   506 
       
   507 2000-09-24 17:29  nriley
       
   508 
       
   509 	* protocol.py: Fixes for Python 1.6 compatibility - socket bind and
       
   510 	connect get a tuple instead two arguments.
       
   511 
       
   512 2000-09-24 17:28  nriley
       
   513 
       
   514 	* spawn.py: Change for Python 1.6 compatibility - UNIX's 'os'
       
   515 	module defines 'spawnv' now, so we check for 'fork' first.
       
   516 
       
   517 2000-08-15 22:51  nowonder
       
   518 
       
   519 	* IDLEFORK.html: 
       
   520 	corrected email address
       
   521 
       
   522 2000-08-15 22:47  nowonder
       
   523 
       
   524 	* IDLEFORK.html: 
       
   525 	added .html file for http://idlefork.sourceforge.net
       
   526 
       
   527 2000-08-15 11:13  dscherer
       
   528 
       
   529 	* AutoExpand.py, AutoIndent.py, Bindings.py, CallTipWindow.py,
       
   530 	CallTips.py, __init__.py, ChangeLog, ClassBrowser.py,
       
   531 	ColorDelegator.py, ConfigParser.py, Debugger.py, Delegator.py,
       
   532 	FileList.py, FormatParagraph.py, FrameViewer.py, GrepDialog.py,
       
   533 	IOBinding.py, IdleConf.py, IdleHistory.py, MultiScrolledLists.py,
       
   534 	MultiStatusBar.py, NEWS.txt, ObjectBrowser.py, OldStackViewer.py,
       
   535 	OutputWindow.py, ParenMatch.py, PathBrowser.py, Percolator.py,
       
   536 	PyParse.py, PyShell.py, README.txt, ReplaceDialog.py,
       
   537 	ScriptBinding.py, ScrolledList.py, SearchBinding.py,
       
   538 	SearchDialog.py, SearchDialogBase.py, SearchEngine.py,
       
   539 	Separator.py, StackViewer.py, TODO.txt, ToolTip.py, TreeWidget.py,
       
   540 	UndoDelegator.py, WidgetRedirector.py, WindowList.py, help.txt,
       
   541 	ZoomHeight.py, config-unix.txt, config-win.txt, config.txt,
       
   542 	eventparse.py, extend.txt, idle.bat, idle.py, idle.pyw, idlever.py,
       
   543 	keydefs.py, loader.py, pyclbr.py, tabnanny.py, testcode.py,
       
   544 	EditorWindow.py, ExecBinding.py, Remote.py, protocol.py, spawn.py,
       
   545 	Icons/folder.gif, Icons/minusnode.gif, Icons/openfolder.gif,
       
   546 	Icons/plusnode.gif, Icons/python.gif, Icons/tk.gif: Initial
       
   547 	revision
       
   548 
       
   549 2000-08-15 11:13  dscherer
       
   550 
       
   551 	* AutoExpand.py, AutoIndent.py, Bindings.py, CallTipWindow.py,
       
   552 	CallTips.py, __init__.py, ChangeLog, ClassBrowser.py,
       
   553 	ColorDelegator.py, ConfigParser.py, Debugger.py, Delegator.py,
       
   554 	FileList.py, FormatParagraph.py, FrameViewer.py, GrepDialog.py,
       
   555 	IOBinding.py, IdleConf.py, IdleHistory.py, MultiScrolledLists.py,
       
   556 	MultiStatusBar.py, NEWS.txt, ObjectBrowser.py, OldStackViewer.py,
       
   557 	OutputWindow.py, ParenMatch.py, PathBrowser.py, Percolator.py,
       
   558 	PyParse.py, PyShell.py, README.txt, ReplaceDialog.py,
       
   559 	ScriptBinding.py, ScrolledList.py, SearchBinding.py,
       
   560 	SearchDialog.py, SearchDialogBase.py, SearchEngine.py,
       
   561 	Separator.py, StackViewer.py, TODO.txt, ToolTip.py, TreeWidget.py,
       
   562 	UndoDelegator.py, WidgetRedirector.py, WindowList.py, help.txt,
       
   563 	ZoomHeight.py, config-unix.txt, config-win.txt, config.txt,
       
   564 	eventparse.py, extend.txt, idle.bat, idle.py, idle.pyw, idlever.py,
       
   565 	keydefs.py, loader.py, pyclbr.py, tabnanny.py, testcode.py,
       
   566 	EditorWindow.py, ExecBinding.py, Remote.py, protocol.py, spawn.py,
       
   567 	Icons/folder.gif, Icons/minusnode.gif, Icons/openfolder.gif,
       
   568 	Icons/plusnode.gif, Icons/python.gif, Icons/tk.gif: Modified IDLE
       
   569 	from VPython 0.2
       
   570 
       
   571 
       
   572 original IDLE ChangeLog:
       
   573 ========================
       
   574 
       
   575 Tue Feb 15 18:08:19 2000  Guido van Rossum  <guido@cnri.reston.va.us>
       
   576 
       
   577 	* NEWS.txt: Notice status bar and stack viewer.
       
   578 
       
   579 	* EditorWindow.py: Support for Moshe's status bar.
       
   580 
       
   581 	* MultiStatusBar.py: Status bar code -- by Moshe Zadka.
       
   582 
       
   583 	* OldStackViewer.py:
       
   584 	Adding the old stack viewer implementation back, for the debugger.
       
   585 
       
   586 	* StackViewer.py: New stack viewer, uses a tree widget.
       
   587 	(XXX: the debugger doesn't yet use this.)
       
   588 
       
   589 	* WindowList.py:
       
   590 	Correct a typo and remove an unqualified except that was hiding the error.
       
   591 
       
   592 	* ClassBrowser.py: Add an XXX comment about the ClassBrowser AIP.
       
   593 
       
   594 	* ChangeLog: Updated change log.
       
   595 
       
   596 	* NEWS.txt: News update.  Probably incomplete; what else is new?
       
   597 
       
   598 	* README.txt:
       
   599 	Updated for pending IDLE 0.5 release (still very rough -- just getting
       
   600 	it out in a more convenient format than CVS).
       
   601 
       
   602 	* TODO.txt: Tiny addition.
       
   603 
       
   604 Thu Sep  9 14:16:02 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   605 
       
   606 	* TODO.txt: A few new TODO entries.
       
   607 
       
   608 Thu Aug 26 23:06:22 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   609 
       
   610 	* Bindings.py: Add Python Documentation entry to Help menu.
       
   611 
       
   612 	* EditorWindow.py:
       
   613 	Find the help.txt file relative to __file__ or ".", not in sys.path.
       
   614 	(Suggested by Moshe Zadka, but implemented differently.)
       
   615 
       
   616 	Add <<python-docs>> event which, on Unix, brings up Netscape pointing
       
   617 	to http://www.python.doc/current/ (a local copy would be nice but its
       
   618 	location can't be predicted).  Windows solution TBD.
       
   619 
       
   620 Wed Aug 11 14:55:43 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   621 
       
   622 	* TreeWidget.py:
       
   623 	Moshe noticed an inconsistency in his comment, so I'm rephrasing it to
       
   624 	be clearer.
       
   625 
       
   626 	* TreeWidget.py:
       
   627 	Patch inspired by Moshe Zadka to search for the Icons directory in the
       
   628 	same directory as __file__, rather than searching for it along sys.path.
       
   629 	This works better when idle is a package.
       
   630 
       
   631 Thu Jul 15 13:11:02 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   632 
       
   633 	* TODO.txt: New wishes.
       
   634 
       
   635 Sat Jul 10 13:17:35 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   636 
       
   637 	* IdlePrefs.py:
       
   638 	Make the color for stderr red (i.e. the standard warning/danger/stop
       
   639 	color) rather than green.  Suggested by Sam Schulenburg.
       
   640 
       
   641 Fri Jun 25 17:26:34 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   642 
       
   643 	* PyShell.py: Close debugger when closing.  This may break a cycle.
       
   644 
       
   645 	* Debugger.py: Break cycle on close.
       
   646 
       
   647 	* ClassBrowser.py: Destroy the tree when closing.
       
   648 
       
   649 	* TreeWidget.py: Add destroy() method to recursively destroy a tree.
       
   650 
       
   651 	* PyShell.py: Extend _close() to break cycles.
       
   652 	Break some other cycles too (and destroy the root when done).
       
   653 
       
   654 	* EditorWindow.py:
       
   655 	Add _close() method that does the actual cleanup (close() asks the
       
   656 	user what they want first if there's unsaved stuff, and may cancel).
       
   657 	It closes more than before.
       
   658 
       
   659 	Add unload_extensions() method to unload all extensions; called from
       
   660 	_close().  It calls an extension's close() method if it has one.
       
   661 
       
   662 	* Percolator.py: Add close() method that breaks cycles.
       
   663 
       
   664 	* WidgetRedirector.py: Add unregister() method.
       
   665 	Unregister everything at closing.
       
   666 	Don't call close() in __del__, rely on explicit call to close().
       
   667 
       
   668 	* IOBinding.py, FormatParagraph.py, CallTips.py:
       
   669 	Add close() method that breaks a cycle.
       
   670 
       
   671 Fri Jun 11 15:03:00 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   672 
       
   673 	* AutoIndent.py, EditorWindow.py, FormatParagraph.py:
       
   674 	Tim Peters smart.patch:
       
   675 
       
   676 	EditorWindow.py:
       
   677 
       
   678 	+ Added get_tabwidth & set_tabwidth "virtual text" methods, that get/set the
       
   679 	widget's view of what a tab means.
       
   680 
       
   681 	+ Moved TK_TABWIDTH_DEFAULT here from AutoIndent.
       
   682 
       
   683 	+ Renamed Mark's get_selection_index to get_selection_indices (sorry, Mark,
       
   684 	but the name was plain wrong <wink>).
       
   685 
       
   686 	FormatParagraph.py:  renamed use of get_selection_index.
       
   687 
       
   688 	AutoIndent.py:
       
   689 
       
   690 	+ Moved TK_TABWIDTH_DEFAULT to EditorWindow.
       
   691 
       
   692 	+ Rewrote set_indentation_params to use new VTW get/set_tabwidth methods.
       
   693 
       
   694 	+ Changed smart_backspace_event to delete whitespace back to closest
       
   695 	preceding virtual tab stop or real character (note that this may require
       
   696 	inserting characters if backspacing over a tab!).
       
   697 
       
   698 	+ Nuked almost references to the selection tag, in favor of using
       
   699 	get_selection_indices.  The sole exception is in set_region, for which no
       
   700 	"set_selection" abstraction has yet been agreed upon.
       
   701 
       
   702 	+ Had too much fun using the spiffy new features of the format-paragraph
       
   703 	cmd.
       
   704 
       
   705 Thu Jun 10 17:48:02 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   706 
       
   707 	* FormatParagraph.py:
       
   708 	Code by Mark Hammond to format paragraphs embedded in comments.
       
   709 	Read the comments (which I reformatted using the new feature :-)
       
   710 	for some limitations.
       
   711 
       
   712 	* EditorWindow.py:
       
   713 	Added abstraction get_selection_index() (Mark Hammond).  Also
       
   714 	reformatted some comment blocks to show off a cool feature I'm about
       
   715 	to check in next.
       
   716 
       
   717 	* ClassBrowser.py:
       
   718 	Adapt to the new pyclbr's support of listing top-level functions.  If
       
   719 	this functionality is not present (e.g. when used with a vintage
       
   720 	Python 1.5.2 installation) top-level functions are not listed.
       
   721 
       
   722 	(Hmm...  Any distribution of IDLE 0.5 should probably include a copy
       
   723 	of the new pyclbr.py!)
       
   724 
       
   725 	* AutoIndent.py:
       
   726 	Fix off-by-one error in Tim's recent change to comment_region(): the
       
   727 	list of lines returned by get_region() contains an empty line at the
       
   728 	end representing the start of the next line, and this shouldn't be
       
   729 	commented out!
       
   730 
       
   731 	* CallTips.py:
       
   732 	Mark Hammond writes: Here is another change that allows it to work for
       
   733 	class creation - tries to locate an __init__ function.  Also updated
       
   734 	the test code to reflect your new "***" change.
       
   735 
       
   736 	* CallTipWindow.py:
       
   737 	Mark Hammond writes: Tim's suggestion of copying the font for the
       
   738 	CallTipWindow from the text control makes sense, and actually makes
       
   739 	the control look better IMO.
       
   740 
       
   741 Wed Jun  9 20:34:57 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   742 
       
   743 	* CallTips.py:
       
   744 	Append "..." if the appropriate flag (for varargs) in co_flags is set.
       
   745 	Ditto "***" for kwargs.
       
   746 
       
   747 Tue Jun  8 13:06:07 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   748 
       
   749 	* ReplaceDialog.py:
       
   750 	Hmm...  Tim didn't turn "replace all" into a single undo block.
       
   751 	I think I like it better if it os, so here.
       
   752 
       
   753 	* ReplaceDialog.py: Tim Peters: made replacement atomic for undo/redo.
       
   754 
       
   755 	* AutoIndent.py: Tim Peters:
       
   756 
       
   757 	+ Set usetabs=1.  Editing pyclbr.py was driving me nuts <0.6 wink>.
       
   758 	usetabs=1 is the Emacs pymode default too, and thanks to indentwidth !=
       
   759 	tabwidth magical usetabs disabling, new files are still created with tabs
       
   760 	turned off.  The only implication is that if you open a file whose first
       
   761 	indent is a single tab, IDLE will now magically use tabs for that file (and
       
   762 	set indentwidth to 8).  Note that the whole scheme doesn't work right for
       
   763 	PythonWin, though, since Windows users typically set tabwidth to 4; Mark
       
   764 	probably has to hide the IDLE algorithm from them (which he already knows).
       
   765 
       
   766 	+ Changed comment_region_event to stick "##" in front of every line.  The
       
   767 	"holes" previously left on blank lines were visually confusing (made it
       
   768 	needlessly hard to figure out what to uncomment later).
       
   769 
       
   770 Mon Jun  7 15:38:40 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   771 
       
   772 	* TreeWidget.py, ObjectBrowser.py:
       
   773 	Remove unnecessary reference to pyclbr from test() code.
       
   774 
       
   775 	* PyParse.py: Tim Peters:
       
   776 
       
   777 	Smarter logic for finding a parse synch point.
       
   778 
       
   779 	Does a half to a fifth the work in normal cases; don't notice the speedup,
       
   780 	but makes  more breathing room for other extensions.
       
   781 
       
   782 	Speeds terrible cases by at least a factor of 10. "Terrible" == e.g. you put
       
   783 	""" at the start of Tkinter.py, undo it, zoom to the bottom, and start
       
   784 	typing in code.  Used to take about 8 seconds for ENTER to respond, now some
       
   785 	large fraction of a second.  The new code gets indented correctly, despite
       
   786 	that it all remains "string colored" until the colorizer catches up (after
       
   787 	which, ENTER appears instantaneous again).
       
   788 
       
   789 Fri Jun  4 19:21:19 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   790 
       
   791 	* extend.py: Might as well enable CallTips by default.
       
   792 	If there are too many complaints I'll remove it again or fix it.
       
   793 
       
   794 Thu Jun  3 14:32:16 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   795 
       
   796 	* AutoIndent.py, EditorWindow.py, PyParse.py:
       
   797 	New offerings by Tim Peters; he writes:
       
   798 
       
   799 	IDLE is now the first Python editor in the Universe not confused by my
       
   800 	doctest.py <wink>.
       
   801 
       
   802 	As threatened, this defines IDLE's is_char_in_string function as a
       
   803 	method of EditorWindow.  You just need to define one similarly in
       
   804 	whatever it is you pass as editwin to AutoIndent; looking at the
       
   805 	EditorWindow.py part of the patch should make this clear.
       
   806 
       
   807 	* GrepDialog.py: Enclose pattern in quotes in status message.
       
   808 
       
   809 	* CallTips.py:
       
   810 	Mark Hammond fixed some comments and improved the way the tip text is
       
   811 	constructed.
       
   812 
       
   813 Wed Jun  2 18:18:57 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   814 
       
   815 	* CallTips.py:
       
   816 	My fix to Mark's code: restore the universal check on <KeyRelease>.
       
   817 	Always cancel on <Key-Escape> or <ButtonPress>.
       
   818 
       
   819 	* CallTips.py:
       
   820 	A version that Mark Hammond posted to the newsgroup.  Has some newer
       
   821 	stuff for getting the tip.  Had to fix the Key-( and Key-) events
       
   822 	for Unix.  Will have to re-apply my patch for catching KeyRelease and
       
   823 	ButtonRelease events.
       
   824 
       
   825 	* CallTipWindow.py, CallTips.py:
       
   826 	Call tips by Mark Hammond (plus tiny fix by me.)
       
   827 
       
   828 	* IdleHistory.py:
       
   829 	Changes by Mark Hammond: (1) support optional output_sep argument to
       
   830 	the constructor so he can eliminate the sys.ps2 that PythonWin leaves
       
   831 	in the source; (2) remove duplicate history items.
       
   832 
       
   833 	* AutoIndent.py:
       
   834 	Changes by Mark Hammond to allow using IDLE extensions in PythonWin as
       
   835 	well: make three dialog routines instance variables.
       
   836 
       
   837 	* EditorWindow.py:
       
   838 	Change by Mark Hammond to allow using IDLE extensions in PythonWin as
       
   839 	well: make three dialog routines instance variables.
       
   840 
       
   841 Tue Jun  1 20:06:44 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   842 
       
   843 	* AutoIndent.py: Hah!  A fix of my own to Tim's code!
       
   844 	Unix bindings for <<toggle-tabs>> and <<change-indentwidth>> were
       
   845 	missing, and somehow that meant the events were never generated,
       
   846 	even though they were in the menu.  The new Unix bindings are now
       
   847 	the same as the Windows bindings (M-t and M-u).
       
   848 
       
   849 	* AutoIndent.py, PyParse.py, PyShell.py: Tim Peters again:
       
   850 
       
   851 	The new version (attached) is fast enough all the time in every real module
       
   852 	I have <whew!>.  You can make it slow by, e.g., creating an open list with
       
   853 	5,000 90-character identifiers (+ trailing comma) each on its own line, then
       
   854 	adding an item to the end -- but that still consumes less than a second on
       
   855 	my P5-166.  Response time in real code appears instantaneous.
       
   856 
       
   857 	Fixed some bugs.
       
   858 
       
   859 	New feature:  when hitting ENTER and the cursor is beyond the line's leading
       
   860 	indentation, whitespace is removed on both sides of the cursor; before
       
   861 	whitespace was removed only on the left; e.g., assuming the cursor is
       
   862 	between the comma and the space:
       
   863 
       
   864 	def something(arg1, arg2):
       
   865 	                   ^ cursor to the left of here, and hit ENTER
       
   866 	               arg2):   # new line used to end up here
       
   867 	              arg2):    # but now lines up the way you expect
       
   868 
       
   869 	New hack:  AutoIndent has grown a context_use_ps1 Boolean config option,
       
   870 	defaulting to 0 (false) and set to 1 (only) by PyShell.  Reason:  handling
       
   871 	the fancy stuff requires looking backward for a parsing synch point; ps1
       
   872 	lines are the only sensible thing to look for in a shell window, but are a
       
   873 	bad thing to look for in a file window (ps1 lines show up in my module
       
   874 	docstrings often).  PythonWin's shell should set this true too.
       
   875 
       
   876 	Persistent problem:  strings containing def/class can still screw things up
       
   877 	completely.  No improvement.  Simplest workaround is on the user's head, and
       
   878 	consists of inserting e.g.
       
   879 
       
   880 	def _(): pass
       
   881 
       
   882 	(or any other def/class) after the end of the multiline string that's
       
   883 	screwing them up.  This is especially irksome because IDLE's syntax coloring
       
   884 	is *not* confused, so when this happens the colors don't match the
       
   885 	indentation behavior they see.
       
   886 
       
   887 	* AutoIndent.py: Tim Peters again:
       
   888 
       
   889 	[Tim, after adding some bracket smarts to AutoIndent.py]
       
   890 	> ...
       
   891 	> What it can't possibly do without reparsing large gobs of text is
       
   892 	> suggest a reasonable indent level after you've *closed* a bracket
       
   893 	> left open on some previous line.
       
   894 	> ...
       
   895 
       
   896 	The attached can, and actually fast enough to use -- most of the time.  The
       
   897 	code is tricky beyond belief to achieve that, but it works so far; e.g.,
       
   898 
       
   899 	        return len(string.expandtabs(str[self.stmt_start :
       
   900 	                                         ^ indents to caret
       
   901 	                                         i],
       
   902 	                                     ^ indents to caret
       
   903 	                                     self.tabwidth)) + 1
       
   904 	    ^ indents to caret
       
   905 
       
   906 	It's about as smart as pymode now, wrt both bracket and backslash
       
   907 	continuation rules.  It does require reparsing large gobs of text, and if it
       
   908 	happens to find something that looks like a "def" or "class" or sys.ps1
       
   909 	buried in a multiline string, but didn't suck up enough preceding text to
       
   910 	see the start of the string, it's completely hosed.  I can't repair that --
       
   911 	it's just too slow to reparse from the start of the file all the time.
       
   912 
       
   913 	AutoIndent has grown a new num_context_lines tuple attribute that controls
       
   914 	how far to look back, and-- like other params --this could/should be made
       
   915 	user-overridable at startup and per-file on the fly.
       
   916 
       
   917 	* PyParse.py: New file by Tim Peters:
       
   918 
       
   919 	One new file in the attached, PyParse.py.  The LineStudier (whatever it was
       
   920 	called <wink>) class was removed from AutoIndent; PyParse subsumes its
       
   921 	functionality.
       
   922 
       
   923 	* AutoIndent.py: Tim Peters keeps revising this module (more to come):
       
   924 
       
   925 	Removed "New tabwidth" menu binding.
       
   926 
       
   927 	Added "a tab means how many spaces?" dialog to block tabify and untabify.  I
       
   928 	think prompting for this is good now:  they're usually at-most-once-per-file
       
   929 	commands, and IDLE can't let them change tabwidth from the Tk default
       
   930 	anymore, so IDLE can no longer presume to have any idea what a tab means.
       
   931 
       
   932 	Irony:  for the purpose of keeping comments aligned via tabs, Tk's
       
   933 	non-default approach is much nicer than the Emacs/Notepad/Codewright/vi/etc
       
   934 	approach.
       
   935 
       
   936 	* EditorWindow.py:
       
   937 	1. Catch NameError on import (could be raised by case mismatch on Windows).
       
   938 	2. No longer need to reset pyclbr cache and show watch cursor when calling
       
   939 	   ClassBrowser -- the ClassBrowser takes care of pyclbr and the TreeWidget
       
   940 	   takes care of the watch cursor.
       
   941 	3. Reset the focus to the current window after error message about class
       
   942 	   browser on buffer without filename.
       
   943 
       
   944 	* Icons/minusnode.gif, Icons/plusnode.gif: Missed a few.
       
   945 
       
   946 	* ClassBrowser.py, PathBrowser.py: Rewritten based on TreeWidget.py
       
   947 
       
   948 	* ObjectBrowser.py: Object browser, based on TreeWidget.py.
       
   949 
       
   950 	* TreeWidget.py: Tree widget done right.
       
   951 
       
   952 	* ToolTip.py: As yet unused code for tool tips.
       
   953 
       
   954 	* ScriptBinding.py:
       
   955 	Ensure sys.argv[0] is the script name on Run Script.
       
   956 
       
   957 	* ZoomHeight.py: Move zoom height functionality to separate function.
       
   958 
       
   959 	* Icons/folder.gif, Icons/openfolder.gif, Icons/python.gif, Icons/tk.gif:
       
   960 	A few icons used by ../TreeWidget.py and its callers.
       
   961 
       
   962 	* AutoIndent.py: New version by Tim Peters improves block opening test.
       
   963 
       
   964 Fri May 21 04:46:17 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   965 
       
   966 	* Attic/History.py, PyShell.py: Rename History to IdleHistory.
       
   967 	Add isatty() to pseudo files.
       
   968 
       
   969 	* StackViewer.py: Make initial stack viewer wider
       
   970 
       
   971 	* TODO.txt: New wishes
       
   972 
       
   973 	* AutoIndent.py, EditorWindow.py, PyShell.py:
       
   974 	Much improved autoindent and handling of tabs,
       
   975 	by Tim Peters.
       
   976 
       
   977 Mon May  3 15:49:52 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
   978 
       
   979 	* AutoIndent.py, EditorWindow.py, FormatParagraph.py, UndoDelegator.py:
       
   980 	Tim Peters writes:
       
   981 
       
   982 	I'm still unsure, but couldn't stand the virtual event trickery so tried a
       
   983 	different sin (adding undo_block_start/stop methods to the Text instance in
       
   984 	EditorWindow.py).  Like it or not, it's efficient and works <wink>.  Better
       
   985 	idea?
       
   986 
       
   987 	Give the attached a whirl.  Even if you hate the implementation, I think
       
   988 	you'll like the results.  Think I caught all the "block edit" cmds,
       
   989 	including Format Paragraph, plus subtler ones involving smart indents and
       
   990 	backspacing.
       
   991 
       
   992 	* WidgetRedirector.py: Tim Peters writes:
       
   993 
       
   994 	[W]hile trying to dope out how redirection works, stumbled into two
       
   995 	possible glitches.  In the first, it doesn't appear to make sense to try to
       
   996 	rename a command that's already been destroyed; in the second, the name
       
   997 	"previous" doesn't really bring to mind "ignore the previous value" <wink>.
       
   998 
       
   999 Fri Apr 30 19:39:25 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1000 
       
  1001 	* __init__.py: Support for using idle as a package.
       
  1002 
       
  1003 	* PathBrowser.py:
       
  1004 	Avoid listing files more than once (e.g. foomodule.so has two hits:
       
  1005 	once for foo + module.so, once for foomodule + .so).
       
  1006 
       
  1007 Mon Apr 26 22:20:38 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1008 
       
  1009 	* ChangeLog, ColorDelegator.py, PyShell.py: Tim Peters strikes again:
       
  1010 
       
  1011 	Ho ho ho -- that's trickier than it sounded!  The colorizer is working with
       
  1012 	"line.col" strings instead of Text marks, and the absolute coordinates of
       
  1013 	the point of interest can change across the self.update call (voice of
       
  1014 	baffled experience, when two quick backspaces no longer fooled it, but a
       
  1015 	backspace followed by a quick ENTER did <wink>).
       
  1016 
       
  1017 	Anyway, the attached appears to do the trick.  CPU usage goes way up when
       
  1018 	typing quickly into a long triple-quoted string, but the latency is fine for
       
  1019 	me (a relatively fast typist on a relatively slow machine).  Most of the
       
  1020 	changes here are left over from reducing the # of vrbl names to help me
       
  1021 	reason about the logic better; I hope the code is a *little* easier to
       
  1022 
       
  1023 Fri Apr 23 14:01:25 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1024 
       
  1025 	* EditorWindow.py:
       
  1026 	Provide full arguments to __import__ so it works in packagized IDLE.
       
  1027 
       
  1028 Thu Apr 22 23:20:17 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1029 
       
  1030         * help.txt:
       
  1031         Bunch of updates necessary due to recent changes; added docs for File
       
  1032         menu, command line and color preferences.
       
  1033 
       
  1034         * Bindings.py: Remove obsolete 'script' menu.
       
  1035 
       
  1036 	* TODO.txt: Several wishes fulfilled.
       
  1037 
       
  1038 	* OutputWindow.py:
       
  1039 	Moved classes OnDemandOutputWindow and PseudoFile here,
       
  1040 	from ScriptBinding.py where they are no longer needed.
       
  1041 
       
  1042 	* ScriptBinding.py:
       
  1043 	Mostly rewritten.  Instead of the old Run module and Debug module,
       
  1044 	there are two new commands:
       
  1045 
       
  1046 	Import module (F5) imports or reloads the module and also adds its
       
  1047 	name to the __main__ namespace.  This gets executed in the PyShell
       
  1048 	window under control of its debug settings.
       
  1049 
       
  1050 	Run script (Control-F5) is similar but executes the contents of the
       
  1051 	file directly in the __main__ namespace.
       
  1052 
       
  1053 	* PyShell.py: Nits: document use of $IDLESTARTUP; display idle version
       
  1054 
       
  1055 	* idlever.py: New version to celebrate new command line
       
  1056 
       
  1057 	* OutputWindow.py: Added flush(), for completeness.
       
  1058 
       
  1059 	* PyShell.py:
       
  1060 	A lot of changes to make the command line more useful.  You can now do:
       
  1061 	  idle.py -e file ...    -- to edit files
       
  1062 	  idle.py script arg ... -- to run a script
       
  1063 	  idle.py -c cmd arg ... -- to run a command
       
  1064 	Other options, see also the usage message (also new!) for more details:
       
  1065 	  -d       -- enable debugger
       
  1066 	  -s       -- run $IDLESTARTUP or $PYTHONSTARTUP
       
  1067 	  -t title -- set Python Shell window's title
       
  1068 	sys.argv is set accordingly, unless -e is used.
       
  1069 	sys.path is absolutized, and all relevant paths are inserted into it.
       
  1070 
       
  1071 	Other changes:
       
  1072 	- the environment in which commands are executed is now the
       
  1073 	  __main__ module
       
  1074 	- explicitly save sys.stdout etc., don't restore from sys.__stdout__
       
  1075 	- new interpreter methods execsource(), execfile(), stuffsource()
       
  1076 	- a few small nits
       
  1077 
       
  1078 	* TODO.txt:
       
  1079 	Some more TODO items.  Made up my mind about command line args,
       
  1080 	Run/Import, __main__.
       
  1081 
       
  1082 	* ColorDelegator.py:
       
  1083 	Super-elegant patch by Tim Peters that speeds up colorization
       
  1084 	dramatically (up to 15 times he claims).  Works by reading more than
       
  1085 	one line at a time, up to 100-line chunks (starting with one line and
       
  1086 	then doubling up to the limit).  On a typical machine (e.g. Tim's
       
  1087 	P5-166) this doesn't reduce interactive responsiveness in a noticeable
       
  1088 	way.
       
  1089 
       
  1090 Wed Apr 21 15:49:34 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1091 
       
  1092 	* ColorDelegator.py:
       
  1093 	Patch by Tim Peters to speed up colorizing of big multiline strings.
       
  1094 
       
  1095 Tue Apr 20 17:32:52 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1096 
       
  1097 	* extend.txt:
       
  1098 	For an event 'foo-bar', the corresponding method must be called
       
  1099 	foo_bar_event().  Therefore, fix the references to zoom_height() in
       
  1100 	the example.
       
  1101 
       
  1102 	* IdlePrefs.py: Restored the original IDLE color scheme.
       
  1103 
       
  1104 	* PyShell.py, IdlePrefs.py, ColorDelegator.py, EditorWindow.py:
       
  1105 	Color preferences code by Loren Luke (massaged by me somewhat)
       
  1106 
       
  1107 	* SearchEngine.py:
       
  1108 	Patch by Mark Favas: it fixes the search engine behaviour where an
       
  1109 	unsuccessful search wraps around and re-searches that part of the file
       
  1110 	between the start of the search and the end of the file - only really
       
  1111 	an issue for very large files, but... (also removes a redundant
       
  1112 	m.span() call).
       
  1113 
       
  1114 Mon Apr 19 16:26:02 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1115 
       
  1116 	* TODO.txt: A few wishes are now fulfilled.
       
  1117 
       
  1118 	* AutoIndent.py: Tim Peters implements some of my wishes:
       
  1119 
       
  1120 	o Makes the tab key intelligently insert spaces when appropriate
       
  1121 	(see Help list banter twixt David Ascher and me; idea stolen from
       
  1122 	every other editor on earth <wink>).
       
  1123 
       
  1124 	o newline_and_indent_event trims trailing whitespace on the old
       
  1125 	line (pymode and Codewright).
       
  1126 
       
  1127 	o newline_and_indent_event no longer fooled by trailing whitespace or
       
  1128 	comment after ":" (pymode, PTUI).
       
  1129 
       
  1130 	o newline_and_indent_event now reduces the new line's indentation after
       
  1131 	return, break, continue, raise and pass stmts (pymode).
       
  1132 
       
  1133 	The last two are easy to fool in the presence of strings &
       
  1134 	continuations, but pymode requires Emacs's high-powered C parsing
       
  1135 	functions to avoid that in finite time.
       
  1136 
       
  1137 ======================================================================
       
  1138 	Python release 1.5.2c1, IDLE version 0.4
       
  1139 ======================================================================
       
  1140 
       
  1141 Wed Apr  7 18:41:59 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1142 
       
  1143 	* README.txt, NEWS.txt: New version.
       
  1144 
       
  1145 	* idlever.py: Version bump awaiting impending new release.
       
  1146 	(Not much has changed :-( )
       
  1147 
       
  1148 Mon Mar 29 14:52:28 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1149 
       
  1150 	* ScriptBinding.py, PyShell.py:
       
  1151 	At Tim Peters' recommendation, add a dummy flush() method to
       
  1152 	PseudoFile.
       
  1153 
       
  1154 Thu Mar 11 23:21:23 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1155 
       
  1156 	* PathBrowser.py: Don't crash when sys.path contains an empty string.
       
  1157 
       
  1158 	* Attic/Outline.py: This file was never supposed to be part of IDLE.
       
  1159 
       
  1160 	* PathBrowser.py:
       
  1161 	- Don't crash in the case where a superclass is a string instead of a
       
  1162 	pyclbr.Class object; this can happen when the superclass is
       
  1163 	unrecognizable (to pyclbr), e.g. when module renaming is used.
       
  1164 
       
  1165 	- Show a watch cursor when calling pyclbr (since it may take a while
       
  1166 	recursively parsing imported modules!).
       
  1167 
       
  1168 Wed Mar 10 05:18:02 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1169 
       
  1170 	* EditorWindow.py, Bindings.py: Add PathBrowser to File module
       
  1171 
       
  1172 	* PathBrowser.py: "Path browser" - 4 scrolled lists displaying:
       
  1173 	    directories on sys.path
       
  1174 	    modules in selected directory
       
  1175 	    classes in selected module
       
  1176 	    methods of selected class
       
  1177 
       
  1178 	Sinlge clicking in a directory, module or class item updates the next
       
  1179 	column with info about the selected item.  Double clicking in a
       
  1180 	module, class or method item opens the file (and selects the clicked
       
  1181 	item if it is a class or method).
       
  1182 
       
  1183 	I guess eventually I should be using a tree widget for this, but the
       
  1184 	ones I've seen don't work well enough, so for now I use the old
       
  1185 	Smalltalk or NeXT style multi-column hierarchical browser.
       
  1186 
       
  1187 	* MultiScrolledLists.py:
       
  1188 	New utility: multiple scrolled lists in parallel
       
  1189 
       
  1190 	* ScrolledList.py: - White background.
       
  1191 	- Display "(None)" (or text of your choosing) when empty.
       
  1192 	- Don't set the focus.
       
  1193 
       
  1194 ======================================================================
       
  1195 	Python release 1.5.2b2, IDLE version 0.3
       
  1196 ======================================================================
       
  1197 	
       
  1198 Wed Feb 17 22:47:41 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1199 
       
  1200 	* NEWS.txt: News in 0.3.
       
  1201 
       
  1202 	* README.txt, idlever.py: Bump version to 0.3.
       
  1203 
       
  1204 	* EditorWindow.py:
       
  1205 	After all, we don't need to call the callbacks ourselves!
       
  1206 
       
  1207 	* WindowList.py:
       
  1208 	When deleting, call the callbacks *after* deleting the window from our list!
       
  1209 
       
  1210 	* EditorWindow.py:
       
  1211 	Fix up the Windows menu via the new callback mechanism instead of
       
  1212 	depending on menu post commands (which don't work when the menu is
       
  1213 	torn off).
       
  1214 
       
  1215 	* WindowList.py:
       
  1216 	Support callbacks to patch up Windows menus everywhere.
       
  1217 
       
  1218 	* ChangeLog: Oh, why not.  Checking in the Emacs-generated change log.
       
  1219 
       
  1220 Tue Feb 16 22:34:17 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1221 
       
  1222 	* ScriptBinding.py:
       
  1223 	Only pop up the stack viewer when requested in the Debug menu.
       
  1224 
       
  1225 Mon Feb  8 22:27:49 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1226 
       
  1227 	* WindowList.py: Don't crash if a window no longer exists.
       
  1228 
       
  1229 	* TODO.txt: Restructured a bit.
       
  1230 
       
  1231 Mon Feb  1 23:06:17 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1232 
       
  1233 	* PyShell.py: Add current dir or paths of file args to sys.path.
       
  1234 
       
  1235 	* Debugger.py: Add canonic() function -- for brand new bdb.py feature.
       
  1236 
       
  1237 	* StackViewer.py: Protect against accessing an empty stack.
       
  1238 
       
  1239 Fri Jan 29 20:44:45 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1240 
       
  1241 	* ZoomHeight.py:
       
  1242 	Use only the height to decide whether to zoom in or out.
       
  1243 
       
  1244 Thu Jan 28 22:24:30 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1245 
       
  1246 	* EditorWindow.py, FileList.py:
       
  1247 	Make sure the Tcl variables are shared between windows.
       
  1248 
       
  1249 	* PyShell.py, EditorWindow.py, Bindings.py:
       
  1250 	Move menu/key binding code from Bindings.py to EditorWindow.py,
       
  1251 	with changed APIs -- it makes much more sense there.
       
  1252 	Also add a new feature: if the first character of a menu label is
       
  1253 	a '!', it gets a checkbox.  Checkboxes are bound to Boolean Tcl variables
       
  1254 	that can be accessed through the new getvar/setvar/getrawvar API;
       
  1255 	the variable is named after the event to which the menu is bound.
       
  1256 
       
  1257 	* Debugger.py: Add Quit button to the debugger window.
       
  1258 
       
  1259 	* SearchDialog.py:
       
  1260 	When find_again() finds exactly the current selection, it's a failure.
       
  1261 
       
  1262 	* idle.py, Attic/idle: Rename idle -> idle.py
       
  1263 
       
  1264 Mon Jan 18 15:18:57 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1265 
       
  1266 	* EditorWindow.py, WindowList.py: Only deiconify when iconic.
       
  1267 
       
  1268 	* TODO.txt: Misc
       
  1269 
       
  1270 Tue Jan 12 22:14:34 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1271 
       
  1272 	* testcode.py, Attic/test.py:
       
  1273 	Renamed test.py to testcode.py so one can import Python's
       
  1274 	test package from inside IDLE.  (Suggested by Jack Jansen.)
       
  1275 
       
  1276 	* EditorWindow.py, ColorDelegator.py:
       
  1277 	Hack to close a window that is colorizing.
       
  1278 
       
  1279 	* Separator.py: Vladimir Marangozov's patch:
       
  1280 	The separator dances too much and seems to jump by arbitrary amounts
       
  1281 	in arbitrary directions when I try to move it for resizing the frames.
       
  1282 	This patch makes it more quiet.
       
  1283 
       
  1284 Mon Jan 11 14:52:40 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1285 
       
  1286 	* TODO.txt: Some requests have been fulfilled.
       
  1287 
       
  1288 	* EditorWindow.py:
       
  1289 	Set the cursor to a watch when opening the class browser (which may
       
  1290 	take quite a while, browsing multiple files).
       
  1291 
       
  1292 	Newer, better center() -- but assumes no wrapping.
       
  1293 
       
  1294 	* SearchBinding.py:
       
  1295 	Got rid of debug print statement in goto_line_event().
       
  1296 
       
  1297 	* ScriptBinding.py:
       
  1298 	I think I like it better if it prints the traceback even when it displays
       
  1299 	the stack viewer.
       
  1300 
       
  1301 	* Debugger.py: Bind ESC to close-window.
       
  1302 
       
  1303 	* ClassBrowser.py: Use a HSeparator between the classes and the items.
       
  1304 	Make the list of classes wider by default (40 chars).
       
  1305 	Bind ESC to close-window.
       
  1306 
       
  1307 	* Separator.py:
       
  1308 	Separator classes (draggable divider between two panes).
       
  1309 
       
  1310 Sat Jan  9 22:01:33 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1311 
       
  1312 	* WindowList.py:
       
  1313 	Don't traceback when wakeup() is called when the window has been destroyed.
       
  1314 	This can happen when a torn-of Windows menu references closed windows.
       
  1315 	And Tim Peters claims that the Windows menu is his favorite to tear off...
       
  1316 
       
  1317 	* EditorWindow.py: Allow tearing off of the Windows menu.
       
  1318 
       
  1319 	* StackViewer.py: Close on ESC.
       
  1320 
       
  1321 	* help.txt: Updated a bunch of things (it was mostly still 0.1!)
       
  1322 
       
  1323 	* extend.py: Added ScriptBinding to standard bindings.
       
  1324 
       
  1325 	* ScriptBinding.py:
       
  1326 	This now actually works.  See doc string.  It can run a module (i.e.
       
  1327 	import or reload) or debug it (same with debugger control).  Output
       
  1328 	goes to a fresh output window, only created when needed.
       
  1329 
       
  1330 ======================================================================
       
  1331 	Python release 1.5.2b1, IDLE version 0.2
       
  1332 ======================================================================
       
  1333 	
       
  1334 Fri Jan  8 17:26:02 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1335 
       
  1336 	* README.txt, NEWS.txt: What's new in this release.
       
  1337 
       
  1338 	* Bindings.py, PyShell.py:
       
  1339 	Paul Prescod's patches to allow the stack viewer to pop up when a
       
  1340 	traceback is printed.
       
  1341 
       
  1342 Thu Jan  7 00:12:15 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1343 
       
  1344 	* FormatParagraph.py:
       
  1345 	Change paragraph width limit to 70 (like Emacs M-Q).
       
  1346 
       
  1347 	* README.txt:
       
  1348 	Separating TODO from README.  Slight reformulation of features.  No
       
  1349 	exact release date.
       
  1350 
       
  1351 	* TODO.txt: Separating TODO from README.
       
  1352 
       
  1353 Mon Jan  4 21:19:09 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1354 
       
  1355 	* FormatParagraph.py:
       
  1356 	Hm.  There was a boundary condition error at the end of the file too.
       
  1357 
       
  1358 	* SearchBinding.py: Hm.  Add Unix binding for replace, too.
       
  1359 
       
  1360 	* keydefs.py: Ran eventparse.py again.
       
  1361 
       
  1362 	* FormatParagraph.py: Added Unix Meta-q key binding;
       
  1363 	fix find_paragraph when at start of file.
       
  1364 
       
  1365 	* AutoExpand.py: Added Meta-/ binding for Unix as alt for Alt-/.
       
  1366 
       
  1367 	* SearchBinding.py:
       
  1368 	Add unix binding for grep (otherwise the menu entry doesn't work!)
       
  1369 
       
  1370 	* ZoomHeight.py: Adjusted Unix height to work with fvwm96. :=(
       
  1371 
       
  1372 	* GrepDialog.py: Need to import sys!
       
  1373 
       
  1374 	* help.txt, extend.txt, README.txt: Formatted some paragraphs
       
  1375 
       
  1376 	* extend.py, FormatParagraph.py:
       
  1377 	Add new extension to reformat a (text) paragraph.
       
  1378 
       
  1379 	* ZoomHeight.py: Typo in Win specific height setting.
       
  1380 
       
  1381 Sun Jan  3 00:47:35 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1382 
       
  1383 	* AutoIndent.py: Added something like Tim Peters' backspace patch.
       
  1384 
       
  1385 	* ZoomHeight.py: Adapted to Unix (i.e., more hardcoded constants).
       
  1386 
       
  1387 Sat Jan  2 21:28:54 1999  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1388 
       
  1389 	* keydefs.py, idlever.py, idle.pyw, idle.bat, help.txt, extend.txt, extend.py, eventparse.py, ZoomHeight.py, WindowList.py, UndoDelegator.py, StackViewer.py, SearchEngine.py, SearchDialogBase.py, SearchDialog.py, ScrolledList.py, SearchBinding.py, ScriptBinding.py, ReplaceDialog.py, Attic/README, README.txt, PyShell.py, Attic/PopupMenu.py, OutputWindow.py, IOBinding.py, Attic/HelpWindow.py, History.py, GrepDialog.py, FileList.py, FrameViewer.py, EditorWindow.py, Debugger.py, Delegator.py, ColorDelegator.py, Bindings.py, ClassBrowser.py, AutoExpand.py, AutoIndent.py:
       
  1390 	Checking in IDLE 0.2.
       
  1391 
       
  1392 	Much has changed -- too much, in fact, to write down.
       
  1393 	The big news is that there's a standard way to write IDLE extensions;
       
  1394 	see extend.txt.  Some sample extensions have been provided, and
       
  1395 	some existing code has been converted to extensions.  Probably the
       
  1396 	biggest new user feature is a new search dialog with more options,
       
  1397 	search and replace, and even search in files (grep).
       
  1398 
       
  1399 	This is exactly as downloaded from my laptop after returning
       
  1400 	from the holidays -- it hasn't even been tested on Unix yet.
       
  1401 
       
  1402 Fri Dec 18 15:52:54 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1403 
       
  1404 	* FileList.py, ClassBrowser.py:
       
  1405 	Fix the class browser to work even when the file is not on sys.path.
       
  1406 
       
  1407 Tue Dec  8 20:39:36 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1408 
       
  1409 	* Attic/turtle.py: Moved to Python 1.5.2/Lib
       
  1410 
       
  1411 Fri Nov 27 03:19:20 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1412 
       
  1413 	* help.txt: Typo
       
  1414 
       
  1415 	* EditorWindow.py, FileList.py: Support underlining of menu labels
       
  1416 
       
  1417 	* Bindings.py:
       
  1418 	New approach, separate tables for menus (platform-independent) and key
       
  1419 	definitions (platform-specific), and generating accelerator strings
       
  1420 	automatically from the key definitions.
       
  1421 
       
  1422 Mon Nov 16 18:37:42 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1423 
       
  1424 	* Attic/README: Clarify portability and main program.
       
  1425 
       
  1426 	* Attic/README: Added intro for 0.1 release and append Grail notes.
       
  1427 
       
  1428 Mon Oct 26 18:49:00 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1429 
       
  1430 	* Attic/turtle.py: root is now a global called _root
       
  1431 
       
  1432 Sat Oct 24 16:38:38 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1433 
       
  1434 	* Attic/turtle.py: Raise the root window on reset().
       
  1435 	Different action on WM_DELETE_WINDOW is more likely to do the right thing,
       
  1436 	allowing us to destroy old windows.
       
  1437 
       
  1438 	* Attic/turtle.py:
       
  1439 	Split the goto() function in two: _goto() is the internal one,
       
  1440 	using Canvas coordinates, and goto() uses turtle coordinates
       
  1441 	and accepts variable argument lists.
       
  1442 
       
  1443 	* Attic/turtle.py: Cope with destruction of the window
       
  1444 
       
  1445 	* Attic/turtle.py: Turtle graphics
       
  1446 
       
  1447 	* Debugger.py: Use of Breakpoint class should be bdb.Breakpoint.
       
  1448 
       
  1449 Mon Oct 19 03:33:40 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1450 
       
  1451 	* SearchBinding.py:
       
  1452 	Speed up the search a bit -- don't drag a mark around...
       
  1453 
       
  1454 	* PyShell.py:
       
  1455 	Change our special entries from <console#N> to <pyshell#N>.
       
  1456 	Patch linecache.checkcache() to keep our special entries alive.
       
  1457 	Add popup menu to all editor windows to set a breakpoint.
       
  1458 
       
  1459 	* Debugger.py:
       
  1460 	Use and pass through the 'force' flag to set_dict() where appropriate.
       
  1461 	Default source and globals checkboxes to false.
       
  1462 	Don't interact in user_return().
       
  1463 	Add primitive set_breakpoint() method.
       
  1464 
       
  1465 	* ColorDelegator.py:
       
  1466 	Raise priority of 'sel' tag so its foreground (on Windows) will take
       
  1467 	priority over text colorization (which on Windows is almost the
       
  1468 	same color as the selection background).
       
  1469 
       
  1470 	Define a tag and color for breakpoints ("BREAK").
       
  1471 
       
  1472 	* Attic/PopupMenu.py: Disable "Open stack viewer" and "help" commands.
       
  1473 
       
  1474 	* StackViewer.py:
       
  1475 	Add optional 'force' argument (default 0) to load_dict().
       
  1476 	If set, redo the display even if it's the same dict.
       
  1477 
       
  1478 Fri Oct 16 21:10:12 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1479 
       
  1480 	* StackViewer.py: Do nothing when loading the same dict as before.
       
  1481 
       
  1482 	* PyShell.py: Details for debugger interface.
       
  1483 
       
  1484 	* Debugger.py:
       
  1485 	Restructured and more consistent.  Save checkboxes across instantiations.
       
  1486 
       
  1487 	* EditorWindow.py, Attic/README, Bindings.py:
       
  1488 	Get rid of conflicting ^X binding.  Use ^W.
       
  1489 
       
  1490 	* Debugger.py, StackViewer.py:
       
  1491 	Debugger can now show local and global variables.
       
  1492 
       
  1493 	* Debugger.py: Oops
       
  1494 
       
  1495 	* Debugger.py, PyShell.py: Better debugger support (show stack etc).
       
  1496 
       
  1497 	* Attic/PopupMenu.py: Follow renames in StackViewer module
       
  1498 
       
  1499 	* StackViewer.py:
       
  1500 	Rename classes to StackViewer (the widget) and StackBrowser (the toplevel).
       
  1501 
       
  1502 	* ScrolledList.py: Add close() method
       
  1503 
       
  1504 	* EditorWindow.py: Clarify 'Open Module' dialog text
       
  1505 
       
  1506 	* StackViewer.py: Restructured into a browser and a widget.
       
  1507 
       
  1508 Thu Oct 15 23:27:08 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1509 
       
  1510 	* ClassBrowser.py, ScrolledList.py:
       
  1511 	Generalized the scrolled list which is the base for the class and
       
  1512 	method browser into a separate class in its own module.
       
  1513 
       
  1514 	* Attic/test.py: Cosmetic change
       
  1515 
       
  1516 	* Debugger.py: Don't show function name if there is none
       
  1517 
       
  1518 Wed Oct 14 03:43:05 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1519 
       
  1520 	* Debugger.py, PyShell.py: Polish the Debugger GUI a bit.
       
  1521 	Closing it now also does the right thing.
       
  1522 
       
  1523 Tue Oct 13 23:51:13 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1524 
       
  1525 	* Debugger.py, PyShell.py, Bindings.py:
       
  1526 	Ad primitive debugger interface (so far it will step and show you the
       
  1527 	source, but it doesn't yet show the stack).
       
  1528 
       
  1529 	* Attic/README: Misc
       
  1530 
       
  1531 	* StackViewer.py: Whoops -- referenced self.top before it was set.
       
  1532 
       
  1533 	* help.txt: Added history and completion commands.
       
  1534 
       
  1535 	* help.txt: Updated
       
  1536 
       
  1537 	* FileList.py: Add class browser functionality.
       
  1538 
       
  1539 	* StackViewer.py:
       
  1540 	Add a close() method and bind to WM_DELETE_WINDOW protocol
       
  1541 
       
  1542 	* PyShell.py: Clear the linecache before printing a traceback
       
  1543 
       
  1544 	* Bindings.py: Added class browser binding.
       
  1545 
       
  1546 	* ClassBrowser.py: Much improved, much left to do.
       
  1547 
       
  1548 	* PyShell.py: Make the return key do what I mean more often.
       
  1549 
       
  1550 	* ClassBrowser.py:
       
  1551 	Adding the beginnings of a Class browser.  Incomplete, yet.
       
  1552 
       
  1553 	* EditorWindow.py, Bindings.py:
       
  1554 	Add new command, "Open module".  You select or type a module name,
       
  1555 	and it opens the source.
       
  1556 
       
  1557 Mon Oct 12 23:59:27 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1558 
       
  1559 	* PyShell.py: Subsume functionality from Popup menu in Debug menu.
       
  1560 	Other stuff so the PyShell window can be resurrected from the Windows menu.
       
  1561 
       
  1562 	* FileList.py: Get rid of PopUp menu.
       
  1563 	Create a simple Windows menu.  (Imperfect when Untitled windows exist.)
       
  1564 	Add wakeup() method: deiconify, raise, focus.
       
  1565 
       
  1566 	* EditorWindow.py: Generalize menu creation.
       
  1567 
       
  1568 	* Bindings.py: Add Debug and Help menu items.
       
  1569 
       
  1570 	* EditorWindow.py: Added a menu bar to every window.
       
  1571 
       
  1572 	* Bindings.py: Add menu configuration to the event configuration.
       
  1573 
       
  1574 	* Attic/PopupMenu.py: Pass a root to the help window.
       
  1575 
       
  1576 	* SearchBinding.py:
       
  1577 	Add parent argument to 'to to line number' dialog box.
       
  1578 
       
  1579 Sat Oct 10 19:15:32 1998  Guido van Rossum  <guido@cnri.reston.va.us>
       
  1580 
       
  1581 	* StackViewer.py:
       
  1582 	Add a label at the top showing (very basic) help for the stack viewer.
       
  1583 	Add a label at the bottom showing the exception info.
       
  1584 
       
  1585 	* Attic/test.py, Attic/idle: Add Unix main script and test program.
       
  1586 
       
  1587 	* idle.pyw, help.txt, WidgetRedirector.py, UndoDelegator.py, StackViewer.py, SearchBinding.py, Attic/README, PyShell.py, Attic/PopupMenu.py, Percolator.py, Outline.py, IOBinding.py, History.py, Attic/HelpWindow.py, FrameViewer.py, FileList.py, EditorWindow.py, Delegator.py, ColorDelegator.py, Bindings.py, AutoIndent.py, AutoExpand.py:
       
  1588 	Initial checking of Tk-based Python IDE.
       
  1589 	Features: text editor with syntax coloring and undo;
       
  1590 	subclassed into interactive Python shell which adds history.
       
  1591