Pythonwin logo Pythonwin

Existing document

\Pythonwin\readme.html

Introduction

There are a few known problems (and probably lots of unknown ones)!

Todo

Do some abbr directives/roles for IDE, GUI, UI, MFC

Wire up links to \Pythonwin\pywin\Demos\readme.txt and \Pythonwin\pywin\Demos\*.py

What to do with \Pythonwin\pywin\idle\readme.txt

Add discussion of \Pythonwin\pywin\default.cfg and \Pythonwin\pywin\idle.cfg

Add discussion of \Pythonwin\start_pythonwin.pyw

What to do with \Pythonwin\Scintilla\

Pythonwin is a Windows-only IDE and GUI framework for Python. It has an integrated debugger and a rich Python editing environment.

Pythonwin is implemented as a wrapper for the Microsoft Foundation Class library. With it, you can use MFC in an interactive, interpreted environment, or write full-blown stand-alone applications tightly coupled with the Windows environment. Over 30 MFC objects are exposed, including Common Controls, Property Pages/Sheets, Control/Toolbars, Threads, etc.

Pythonwin could almost be considered a sample program for the MFC UI environment. This Python UI environment can be embedded in almost any other application - such as OLE clients/servers, Netscape plugins, as a Macro language, etc.

Todo

Remove Netscape plugins.

Recent changes can be found at the end of this document.

Demos

There are many demos in the pywin\demos directory. To see a list of all the demos, run the program pywin\demos\guidemo.py from inside Pythonwin.

Documentation

Todo

What is the role/directive for win32ui?

Almost all win32ui methods are document in the Pythonwin Help file. This is available from the Help Menu in the Pythonwin environment.

Below is a list of external Pythonwin-specific documentation.

Todo

Create pages and links for win32ui doc, doc/view arch, mfc arch

Known Problems

  • Some of the configuration options (eg, “Docking Windows”) do not take affect until you restart Pythonwin.

  • Under Windows 9x, any attempt to use Pythonwin features from an MS-DOS prompt seems to cause immediate death. This means that you can not use the Pythonwin debugger for programs running under Python.exe on Windows 9x. You should still be able to use the debugger normally from inside Pythonwin itself.

  • Pythonwin will occasionally crash upon exiting under Windows 9x. The crash is in “user.exe” (old 16 bit code) which makes debugging difficult. It does not happen on Windows NT, so I’m stumped on this one. If someone could even just narrow it down to exactly what code will cause the crash at exit I would really appreciate it.

  • Some of the menu items are always grey. This functionality is simply not yet implemented in Pythonwin.

Recent Changes

Fixed a lot of the interactive window formatting problems. Pythonwin now always prints output as it receives it - this should stop Pythonwin from looking like it has completely hung when in fact it is just waiting for some code to finish.

Support for Scintilla’s indentation guides, that gives a nice indication of the block structure.

Todo

Remove or replace the dead link to Neil Hodgson.

New, improved color editor, using the Scintilla control by Neil Hodgson (see http://hare.net.au/~neilh/ScintillaTide.html). The debugger now requires use of this editor.

Much better printing support from Roger Burnham. Pythonwin itself still can’t print anything, but the framework can (meaning some kind soul could now add the support to Pythonwin :-)

DDE support is complete.

Reference help file is far more complete.

Lots of new methods from Kleanthis Kleanthous.

Better tool-tip and region support