[Zope] Fw: [ANNOUNCE] wxPython 2.3.0

Jason Cunliffe jasonic@nomadicsltd.com
Sat, 26 May 2001 10:50:48 -0400

From: "Robin Dunn" <robin@alldunn.com>
Newsgroups: comp.lang.python
To: <wx-announce@lists.wxwindows.org>; <python-announce-list@python.org>;
Sent: Friday, May 25, 2001 1:24 PM
Subject: [ANNOUNCE] wxPython 2.3.0

> wxPython 2.3.0 is now available for download.  Unfortunately the shell
> server at sourceforge is down for a few days and so I can't update the
> wxPython.org web page, but in the meantime you can get the files directly
> from
> http://sourceforge.net/project/showfiles.php?group_id=10718.
> Sources and binaries for win32 and Linux for Python 1.5.2, 2.0 and 2.1 are
> available.  (The win32 binaries with "-hybrid" in the name are built with
> extra debugging code enabled so some things that caused mysterious
> before will now pop-up a slightly less mysterious message dialog.)
> There have been a large number of changes for this release.  I'll include
> the relevant portion of CHANGES.txt here:
> Removed initial startup dependency on the OpenGL DLLs so only the
> glcanvasc.pyd depends on them, (on wxMSW.)
> Changed wxFont, wxPen, wxBrush to not implicitly use the
> wxThe[Font|Pen|Brush]List objects behind the scenes, but to use normal
> ctor and dtors.
> Exposed the wxThe[Font|Pen|Brush]List to wxPython.
> Also added wxTheColourDatabase and added a library module (in the
> wxPython.lib.colourdb module) to load LOTS more colour names into the
> colour database.
> Added wxWakeUpMainThread, wxMutexGuiEnter, wxMutexGuiLeave,
> wxMutexGuiLocker and wxThread_IsMain to assist with dealing with GUI
> access from non-GUI threads.
> wxPyOnDemandOutputWindow is now (more) thread safe if non-GUI threads
> use print, sys.stdout.write, etc.
> Added CreateTextSizer and CreateButtonSizer to wxDialog
> Added wxPython/lib/infoframe.py from Chris Fama.  It contains a class
> that can be used in place of wxPyOnDemandOutputWindow.
> Added colourselect.py, imagebrowser.py and an updated calendar.py to
> wxPython/lib from Lorne White.
> Added patch to wxPoint_LIST_helper from Tim Hochberg that should make
> it gobs faster in certain situations.
> Added tools that will take an image file in a wx supported format and
> convert it to data embedded in a Python source file.  The image is
> converted to XPM format which is essentially a list of strings
> containing info about each pixel.  The image's transparency mask is
> included, if there is one, or a mask can be added if a mask colour is
> specified on the command line.  It is then pickled and optionally
> compressed and written to a Python source file along with functions to
> convert it to either a wxBitmap or a wxImage.  See
> wxPython/demo/images.py for examples, and wxPython/Tools/img2py.py for
> the implementation.
> Fixed wxStyledTextCtrl to be much faster on wxGTK.  There was some
> experimental code that got left in place that ended up causing way too
> many refreshes.
> A couple more hacks in my_distutils.py so wxPython can be built with
> the distutils that comes with Python 2.1.
> Added a ton of missing methods for wxPrintData.
> Switched to InnoSetup for MSW distributions.
> Added wxToggleButton.
> Fixed bug that prevented wxTreeCtrl.OnCompareItems from being called.
> Added some methods to wxGrid:
>       GetCellHighlightPenWidth
>       GetCellHighlightROPenWidth
>       SetCellHighlightPenWidth
>       SetCellHighlightROPenWidth
>       GetGridWindow
>       GetGridRowLabelWindow
>       GetGridColLabelWindow
>       GetGridCornerLabelWindow
> Added wxGetClientDisplayRect which on wxMSW returns a wxRect
> representing the area on screen not occupied by the taskbar and such.
> On other platforms it is equivallent to wxGetDisplaySize.
> ***---***---***---***---***---***---***---***---***---***---***---
>    Implemented the first phase of OOR (Original Object Return).  See
>    the text in the demo for more details of what this means, but in a
>    nutshell methods such as wxWindow.GetParent or FindWindowById will
>    now return a shadow object of the proper type if it can.  By
>    "proper type" I mean that if the wxWindow pointer returned from
>    FindWindowById really points to a wxButton then the Python object
>    constructed will be of a wxButtonPtr class instead of wxWindowPtr
>    as before.  This should reduce or eliminiate the need for
>    wxPyTypeCast.  (Woo Hoo!)  The objects returned are still not the
>    original Python object, but that is the next step.  (Although it
>    will probably only work on Python 2.1 and beyond because it will
>    use weak references.)
>    This first phase of the OOR plan is fairly significant and has
>    required a lot of changes all over wxPython, most of which should
>    be transparent to you, however I'm not 100% sure that it didn't
>    introduce any new bugs that are hiding somewhere and didn't get
>    stomped on during my testing.  So please be sure to test everything
>    thoroughly when you install this version and be sure to report any
>    object-type related oddities to me.
> ***---***---***---***---***---***---***---***---***---***---***---
> There is now a wxObject class that most other classes derive from like
> in C++, but the methods provided don't really match but are wxPython
> specific.  It could have been added long ago but OOR required it so
> it finally got done.
> Finally added wxPyLineShape.GetLineControlPoints, which has been on my
> list for a while.  The above OOR modification made this easier.
> Fixed the __cmp__ methods for wxPoint and others.
> Added wxWave.
> Added the wxPython.lib.mixins package to the library, it is where
> useful mix-in classes can be placed.  Currently there is one to help
> make the columns in a wxListCtrl sortable, and the MagicIMageList
> from Mike Fletcher.  If you have any custom code that can be factored
> out of existing classes into a mix-in that would be useful to others
> please send it to me for inclusion in this package.
> Added a few little sample applications to help newbies to get started
> by having smaller functional apps to play with.  They can be found in
> wxPython/samples.
> --
> Robin Dunn
> Software Craftsman
> robin@AllDunn.com       Java give you jitters?
> http://wxPython.org      Relax with wxPython!