Class around PixMap objects that allows more python-like access. By Joe Strout.
[python/dscho.git] / Tools / idle / ChangeLog
blobccec63e5831db65d3b470fa345265c1628a98885
1 ======================================================================
2         Python release 1.5.2c1, IDLE version 0.4
3 ======================================================================
5 Wed Apr  7 18:41:59 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
7         * README.txt, NEWS.txt: New version.
9         * idlever.py: Version bump awaiting impending new release.
10         (Not much has changed :-( )
12 Mon Mar 29 14:52:28 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
14         * ScriptBinding.py, PyShell.py:
15         At Tim Peters' recommendation, add a dummy flush() method to
16         PseudoFile.
18 Thu Mar 11 23:21:23 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
20         * PathBrowser.py: Don't crash when sys.path contains an empty string.
22         * Attic/Outline.py: This file was never supposed to be part of IDLE.
24         * PathBrowser.py:
25         - Don't crash in the case where a superclass is a string instead of a
26         pyclbr.Class object; this can happen when the superclass is
27         unrecognizable (to pyclbr), e.g. when module renaming is used.
29         - Show a watch cursor when calling pyclbr (since it may take a while
30         recursively parsing imported modules!).
32 Wed Mar 10 05:18:02 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
34         * EditorWindow.py, Bindings.py: Add PathBrowser to File module
36         * PathBrowser.py: "Path browser" - 4 scrolled lists displaying:
37             directories on sys.path
38             modules in selected directory
39             classes in selected module
40             methods of selected class
42         Sinlge clicking in a directory, module or class item updates the next
43         column with info about the selected item.  Double clicking in a
44         module, class or method item opens the file (and selects the clicked
45         item if it is a class or method).
47         I guess eventually I should be using a tree widget for this, but the
48         ones I've seen don't work well enough, so for now I use the old
49         Smalltalk or NeXT style multi-column hierarchical browser.
51         * MultiScrolledLists.py:
52         New utility: multiple scrolled lists in parallel
54         * ScrolledList.py: - White background.
55         - Display "(None)" (or text of your choosing) when empty.
56         - Don't set the focus.
58 ======================================================================
59         Python release 1.5.2b2, IDLE version 0.3
60 ======================================================================
61         
62 Wed Feb 17 22:47:41 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
64         * NEWS.txt: News in 0.3.
66         * README.txt, idlever.py: Bump version to 0.3.
68         * EditorWindow.py:
69         After all, we don't need to call the callbacks ourselves!
71         * WindowList.py:
72         When deleting, call the callbacks *after* deleting the window from our list!
74         * EditorWindow.py:
75         Fix up the Windows menu via the new callback mechanism instead of
76         depending on menu post commands (which don't work when the menu is
77         torn off).
79         * WindowList.py:
80         Support callbacks to patch up Windows menus everywhere.
82         * ChangeLog: Oh, why not.  Checking in the Emacs-generated change log.
84 Tue Feb 16 22:34:17 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
86         * ScriptBinding.py:
87         Only pop up the stack viewer when requested in the Debug menu.
89 Mon Feb  8 22:27:49 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
91         * WindowList.py: Don't crash if a window no longer exists.
93         * TODO.txt: Restructured a bit.
95 Mon Feb  1 23:06:17 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
97         * PyShell.py: Add current dir or paths of file args to sys.path.
99         * Debugger.py: Add canonic() function -- for brand new bdb.py feature.
101         * StackViewer.py: Protect against accessing an empty stack.
103 Fri Jan 29 20:44:45 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
105         * ZoomHeight.py:
106         Use only the height to decide whether to zoom in or out.
108 Thu Jan 28 22:24:30 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
110         * EditorWindow.py, FileList.py:
111         Make sure the Tcl variables are shared between windows.
113         * PyShell.py, EditorWindow.py, Bindings.py:
114         Move menu/key binding code from Bindings.py to EditorWindow.py,
115         with changed APIs -- it makes much more sense there.
116         Also add a new feature: if the first character of a menu label is
117         a '!', it gets a checkbox.  Checkboxes are bound to Boolean Tcl variables
118         that can be accessed through the new getvar/setvar/getrawvar API;
119         the variable is named after the event to which the menu is bound.
121         * Debugger.py: Add Quit button to the debugger window.
123         * SearchDialog.py:
124         When find_again() finds exactly the current selection, it's a failure.
126         * idle.py, Attic/idle: Rename idle -> idle.py
128 Mon Jan 18 15:18:57 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
130         * EditorWindow.py, WindowList.py: Only deiconify when iconic.
132         * TODO.txt: Misc
134 Tue Jan 12 22:14:34 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
136         * testcode.py, Attic/test.py:
137         Renamed test.py to testcode.py so one can import Python's
138         test package from inside IDLE.  (Suggested by Jack Jansen.)
140         * EditorWindow.py, ColorDelegator.py:
141         Hack to close a window that is colorizing.
143         * Separator.py: Vladimir Marangozov's patch:
144         The separator dances too much and seems to jump by arbitrary amounts
145         in arbitrary directions when I try to move it for resizing the frames.
146         This patch makes it more quiet.
148 Mon Jan 11 14:52:40 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
150         * TODO.txt: Some requests have been fulfilled.
152         * EditorWindow.py:
153         Set the cursor to a watch when opening the class browser (which may
154         take quite a while, browsing multiple files).
156         Newer, better center() -- but assumes no wrapping.
158         * SearchBinding.py:
159         Got rid of debug print statement in goto_line_event().
161         * ScriptBinding.py:
162         I think I like it better if it prints the traceback even when it displays
163         the stack viewer.
165         * Debugger.py: Bind ESC to close-window.
167         * ClassBrowser.py: Use a HSeparator between the classes and the items.
168         Make the list of classes wider by default (40 chars).
169         Bind ESC to close-window.
171         * Separator.py:
172         Separator classes (draggable divider between two panes).
174 Sat Jan  9 22:01:33 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
176         * WindowList.py:
177         Don't traceback when wakeup() is called when the window has been destroyed.
178         This can happen when a torn-of Windows menu references closed windows.
179         And Tim Peters claims that the Windows menu is his favorite to tear off...
181         * EditorWindow.py: Allow tearing off of the Windows menu.
183         * StackViewer.py: Close on ESC.
185         * help.txt: Updated a bunch of things (it was mostly still 0.1!)
187         * extend.py: Added ScriptBinding to standard bindings.
189         * ScriptBinding.py:
190         This now actually works.  See doc string.  It can run a module (i.e.
191         import or reload) or debug it (same with debugger control).  Output
192         goes to a fresh output window, only created when needed.
194 ======================================================================
195         Python release 1.5.2b1, IDLE version 0.2
196 ======================================================================
197         
198 Fri Jan  8 17:26:02 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
200         * README.txt, NEWS.txt: What's new in this release.
202         * Bindings.py, PyShell.py:
203         Paul Prescod's patches to allow the stack viewer to pop up when a
204         traceback is printed.
206 Thu Jan  7 00:12:15 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
208         * FormatParagraph.py:
209         Change paragraph width limit to 70 (like Emacs M-Q).
211         * README.txt:
212         Separating TODO from README.  Slight reformulation of features.  No
213         exact release date.
215         * TODO.txt: Separating TODO from README.
217 Mon Jan  4 21:19:09 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
219         * FormatParagraph.py:
220         Hm.  There was a boundary condition error at the end of the file too.
222         * SearchBinding.py: Hm.  Add Unix binding for replace, too.
224         * keydefs.py: Ran eventparse.py again.
226         * FormatParagraph.py: Added Unix Meta-q key binding;
227         fix find_paragraph when at start of file.
229         * AutoExpand.py: Added Meta-/ binding for Unix as alt for Alt-/.
231         * SearchBinding.py:
232         Add unix binding for grep (otherwise the menu entry doesn't work!)
234         * ZoomHeight.py: Adjusted Unix height to work with fvwm96. :=(
236         * GrepDialog.py: Need to import sys!
238         * help.txt, extend.txt, README.txt: Formatted some paragraphs
240         * extend.py, FormatParagraph.py:
241         Add new extension to reformat a (text) paragraph.
243         * ZoomHeight.py: Typo in Win specific height setting.
245 Sun Jan  3 00:47:35 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
247         * AutoIndent.py: Added something like Tim Peters' backspace patch.
249         * ZoomHeight.py: Adapted to Unix (i.e., more hardcoded constants).
251 Sat Jan  2 21:28:54 1999  Guido van Rossum  <guido@eric.cnri.reston.va.us>
253         * 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:
254         Checking in IDLE 0.2.
256         Much has changed -- too much, in fact, to write down.
257         The big news is that there's a standard way to write IDLE extensions;
258         see extend.txt.  Some sample extensions have been provided, and
259         some existing code has been converted to extensions.  Probably the
260         biggest new user feature is a new search dialog with more options,
261         search and replace, and even search in files (grep).
263         This is exactly as downloaded from my laptop after returning
264         from the holidays -- it hasn't even been tested on Unix yet.
266 Fri Dec 18 15:52:54 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
268         * FileList.py, ClassBrowser.py:
269         Fix the class browser to work even when the file is not on sys.path.
271 Tue Dec  8 20:39:36 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
273         * Attic/turtle.py: Moved to Python 1.5.2/Lib
275 Fri Nov 27 03:19:20 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
277         * help.txt: Typo
279         * EditorWindow.py, FileList.py: Support underlining of menu labels
281         * Bindings.py:
282         New approach, separate tables for menus (platform-independent) and key
283         definitions (platform-specific), and generating accelerator strings
284         automatically from the key definitions.
286 Mon Nov 16 18:37:42 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
288         * Attic/README: Clarify portability and main program.
290         * Attic/README: Added intro for 0.1 release and append Grail notes.
292 Mon Oct 26 18:49:00 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
294         * Attic/turtle.py: root is now a global called _root
296 Sat Oct 24 16:38:38 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
298         * Attic/turtle.py: Raise the root window on reset().
299         Different action on WM_DELETE_WINDOW is more likely to do the right thing,
300         allowing us to destroy old windows.
302         * Attic/turtle.py:
303         Split the goto() function in two: _goto() is the internal one,
304         using Canvas coordinates, and goto() uses turtle coordinates
305         and accepts variable argument lists.
307         * Attic/turtle.py: Cope with destruction of the window
309         * Attic/turtle.py: Turtle graphics
311         * Debugger.py: Use of Breakpoint class should be bdb.Breakpoint.
313 Mon Oct 19 03:33:40 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
315         * SearchBinding.py:
316         Speed up the search a bit -- don't drag a mark around...
318         * PyShell.py:
319         Change our special entries from <console#N> to <pyshell#N>.
320         Patch linecache.checkcache() to keep our special entries alive.
321         Add popup menu to all editor windows to set a breakpoint.
323         * Debugger.py:
324         Use and pass through the 'force' flag to set_dict() where appropriate.
325         Default source and globals checkboxes to false.
326         Don't interact in user_return().
327         Add primitive set_breakpoint() method.
329         * ColorDelegator.py:
330         Raise priority of 'sel' tag so its foreground (on Windows) will take
331         priority over text colorization (which on Windows is almost the
332         same color as the selection background).
334         Define a tag and color for breakpoints ("BREAK").
336         * Attic/PopupMenu.py: Disable "Open stack viewer" and "help" commands.
338         * StackViewer.py:
339         Add optional 'force' argument (default 0) to load_dict().
340         If set, redo the display even if it's the same dict.
342 Fri Oct 16 21:10:12 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
344         * StackViewer.py: Do nothing when loading the same dict as before.
346         * PyShell.py: Details for debugger interface.
348         * Debugger.py:
349         Restructured and more consistent.  Save checkboxes across instantiations.
351         * EditorWindow.py, Attic/README, Bindings.py:
352         Get rid of conflicting ^X binding.  Use ^W.
354         * Debugger.py, StackViewer.py:
355         Debugger can now show local and global variables.
357         * Debugger.py: Oops
359         * Debugger.py, PyShell.py: Better debugger support (show stack etc).
361         * Attic/PopupMenu.py: Follow renames in StackViewer module
363         * StackViewer.py:
364         Rename classes to StackViewer (the widget) and StackBrowser (the toplevel).
366         * ScrolledList.py: Add close() method
368         * EditorWindow.py: Clarify 'Open Module' dialog text
370         * StackViewer.py: Restructured into a browser and a widget.
372 Thu Oct 15 23:27:08 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
374         * ClassBrowser.py, ScrolledList.py:
375         Generalized the scrolled list which is the base for the class and
376         method browser into a separate class in its own module.
378         * Attic/test.py: Cosmetic change
380         * Debugger.py: Don't show function name if there is none
382 Wed Oct 14 03:43:05 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
384         * Debugger.py, PyShell.py: Polish the Debugger GUI a bit.
385         Closing it now also does the right thing.
387 Tue Oct 13 23:51:13 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
389         * Debugger.py, PyShell.py, Bindings.py:
390         Ad primitive debugger interface (so far it will step and show you the
391         source, but it doesn't yet show the stack).
393         * Attic/README: Misc
395         * StackViewer.py: Whoops -- referenced self.top before it was set.
397         * help.txt: Added history and completion commands.
399         * help.txt: Updated
401         * FileList.py: Add class browser functionality.
403         * StackViewer.py:
404         Add a close() method and bind to WM_DELETE_WINDOW protocol
406         * PyShell.py: Clear the linecache before printing a traceback
408         * Bindings.py: Added class browser binding.
410         * ClassBrowser.py: Much improved, much left to do.
412         * PyShell.py: Make the return key do what I mean more often.
414         * ClassBrowser.py:
415         Adding the beginnings of a Class browser.  Incomplete, yet.
417         * EditorWindow.py, Bindings.py:
418         Add new command, "Open module".  You select or type a module name,
419         and it opens the source.
421 Mon Oct 12 23:59:27 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
423         * PyShell.py: Subsume functionality from Popup menu in Debug menu.
424         Other stuff so the PyShell window can be resurrected from the Windows menu.
426         * FileList.py: Get rid of PopUp menu.
427         Create a simple Windows menu.  (Imperfect when Untitled windows exist.)
428         Add wakeup() method: deiconify, raise, focus.
430         * EditorWindow.py: Generalize menu creation.
432         * Bindings.py: Add Debug and Help menu items.
434         * EditorWindow.py: Added a menu bar to every window.
436         * Bindings.py: Add menu configuration to the event configuration.
438         * Attic/PopupMenu.py: Pass a root to the help window.
440         * SearchBinding.py:
441         Add parent argument to 'to to line number' dialog box.
443 Sat Oct 10 19:15:32 1998  Guido van Rossum  <guido@eric.cnri.reston.va.us>
445         * StackViewer.py:
446         Add a label at the top showing (very basic) help for the stack viewer.
447         Add a label at the bottom showing the exception info.
449         * Attic/test.py, Attic/idle: Add Unix main script and test program.
451         * 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:
452         Initial checking of Tk-based Python IDE.
453         Features: text editor with syntax coloring and undo;
454         subclassed into interactive Python shell which adds history.