Commit Graph

27 Commits

Author SHA1 Message Date
Guido van Rossum 205afb487a Add _close() method that does the actual cleanup (close() asks the
user what they want first if there's unsaved stuff, and may cancel).
It closes more than before.

Add unload_extensions() method to unload all extensions; called from
_close().  It calls an extension's close() method if it has one.
1999-06-25 16:06:29 +00:00
Guido van Rossum 13205609c5 Tim Peters smart.patch:
EditorWindow.py:

+ Added get_tabwidth & set_tabwidth "virtual text" methods, that get/set the
widget's view of what a tab means.

+ Moved TK_TABWIDTH_DEFAULT here from AutoIndent.

+ Renamed Mark's get_selection_index to get_selection_indices (sorry, Mark,
but the name was plain wrong <wink>).

FormatParagraph.py:  renamed use of get_selection_index.

AutoIndent.py:

+ Moved TK_TABWIDTH_DEFAULT to EditorWindow.

+ Rewrote set_indentation_params to use new VTW get/set_tabwidth methods.

+ Changed smart_backspace_event to delete whitespace back to closest
preceding virtual tab stop or real character (note that this may require
inserting characters if backspacing over a tab!).

+ Nuked almost references to the selection tag, in favor of using
get_selection_indices.  The sole exception is in set_region, for which no
"set_selection" abstraction has yet been agreed upon.

+ Had too much fun using the spiffy new features of the format-paragraph
cmd.
1999-06-11 15:03:00 +00:00
Guido van Rossum 85a36a5ff1 Added abstraction get_selection_index() (Mark Hammond). Also
reformatted some comment blocks to show off a cool feature I'm about
to check in next.
1999-06-10 17:43:17 +00:00
Guido van Rossum f4a15089a3 New offerings by Tim Peters; he writes:
IDLE is now the first Python editor in the Universe not confused by my
doctest.py <wink>.

As threatened, this defines IDLE's is_char_in_string function as a
method of EditorWindow.  You just need to define one similarly in
whatever it is you pass as editwin to AutoIndent; looking at the
EditorWindow.py part of the patch should make this clear.
1999-06-03 14:32:16 +00:00
Guido van Rossum d395aeeaa4 Change by Mark Hammond to allow using IDLE extensions in PythonWin as
well: make three dialog routines instance variables.
1999-06-02 11:04:29 +00:00
Guido van Rossum 74311b2c27 1. Catch NameError on import (could be raised by case mismatch on Windows).
2. No longer need to reset pyclbr cache and show watch cursor when calling
   ClassBrowser -- the ClassBrowser takes care of pyclbr and the TreeWidget
   takes care of the watch cursor.
3. Reset the focus to the current window after error message about class
   browser on buffer without filename.
1999-06-01 18:27:14 +00:00
Guido van Rossum def2c96718 Much improved autoindent and handling of tabs,
by Tim Peters.
1999-05-21 04:38:27 +00:00
Guido van Rossum 318a70d976 Tim Peters writes:
I'm still unsure, but couldn't stand the virtual event trickery so tried a
different sin (adding undo_block_start/stop methods to the Text instance in
EditorWindow.py).  Like it or not, it's efficient and works <wink>.  Better
idea?

Give the attached a whirl.  Even if you hate the implementation, I think
you'll like the results.  Think I caught all the "block edit" cmds,
including Format Paragraph, plus subtler ones involving smart indents and
backspacing.
1999-05-03 15:49:52 +00:00
Guido van Rossum 9dd52099fa Provide full arguments to __import__ so it works in packagized IDLE. 1999-04-23 14:01:25 +00:00
Guido van Rossum 7de697597e Color preferences code by Loren Luke (massaged by me somewhat) 1999-04-20 15:45:30 +00:00
Guido van Rossum d6e8713f81 Add PathBrowser to File module 1999-03-10 05:18:02 +00:00
Guido van Rossum 8f2918f4fa After all, we don't need to call the callbacks ourselves! 1999-02-17 17:34:58 +00:00
Guido van Rossum c4f752f803 Fix up the Windows menu via the new callback mechanism instead of
depending on menu post commands (which don't work when the menu is
torn off).
1999-02-17 17:20:50 +00:00
Guido van Rossum b7ebb83ad0 Make sure the Tcl variables are shared between windows. 1999-01-28 22:24:30 +00:00
Guido van Rossum 07ec896707 Move menu/key binding code from Bindings.py to EditorWindow.py,
with changed APIs -- it makes much more sense there.
Also add a new feature: if the first character of a menu label is
a '!', it gets a checkbox.  Checkboxes are bound to Boolean Tcl variables
that can be accessed through the new getvar/setvar/getrawvar API;
the variable is named after the event to which the menu is bound.
1999-01-28 22:02:47 +00:00
Guido van Rossum 36911a1ca9 Only deiconify when iconic. 1999-01-18 15:18:57 +00:00
Guido van Rossum 5051f4f80d Hack to close a window that is colorizing. 1999-01-12 22:09:57 +00:00
Guido van Rossum 245ddc4b88 Set the cursor to a watch when opening the class browser (which may
take quite a while, browsing multiple files).

Newer, better center() -- but assumes no wrapping.
1999-01-11 14:51:32 +00:00
Guido van Rossum f52cca9812 Allow tearing off of the Windows menu. 1999-01-09 22:00:10 +00:00
Guido van Rossum 504b0bf066 Checking in IDLE 0.2.
Much has changed -- too much, in fact, to write down.
The big news is that there's a standard way to write IDLE extensions;
see extend.txt.  Some sample extensions have been provided, and
some existing code has been converted to extensions.  Probably the
biggest new user feature is a new search dialog with more options,
search and replace, and even search in files (grep).

This is exactly as downloaded from my laptop after returning
from the holidays -- it hasn't even been tested on Unix yet.
1999-01-02 21:28:54 +00:00
Guido van Rossum b5eed0328f Support underlining of menu labels 1998-11-27 03:19:07 +00:00
Guido van Rossum baf53b4ea8 Get rid of conflicting ^X binding. Use ^W. 1998-10-16 20:08:34 +00:00
Guido van Rossum e1dedc096e Clarify 'Open Module' dialog text 1998-10-16 16:09:57 +00:00
Guido van Rossum b341888971 Add new command, "Open module". You select or type a module name,
and it opens the source.
1998-10-13 03:45:15 +00:00
Guido van Rossum e7b2e651df Generalize menu creation. 1998-10-12 23:56:08 +00:00
Guido van Rossum 2aeeb55949 Added a menu bar to every window. 1998-10-12 21:01:37 +00:00
Guido van Rossum 3b4ca0ddad Initial checking of Tk-based Python IDE.
Features: text editor with syntax coloring and undo;
subclassed into interactive Python shell which adds history.
1998-10-10 18:48:31 +00:00