[wxPython] wxPython 2.3.3pre6

Hi all,

I've just uploaded 2.3.3 preview6 to SourceForge, and have removed the pre5
files to help avoid confusion. You can get to the files via this link:

http://sf.net/project/showfiles.php?group_id=10718&release_id=83146

Since the release of wxWindows 2.3.3 is imminent this will most likely be
the last preview release of wxPython. If you have contributed code that is
in the wxPython library, now is the time to ensure that it is working
properly and to send any updates to me. If you've already sent an update or
a new contrib that is not in this preview please resend it as I've had
corruption troubles with the mail folder where I was keeping them and lost
several messages.

The OSX version still has a few known problems, but many others have been
fixed and it is getting close to the level of capabilities of the GTK and
WIN32 versions. In addition to general bug fixing, cleanup, tweaking, and
etc., the following changes have happend since pre5:

···

----------------------

Added a generic static text control to wxPython.lib.stattext. This is
so things like Boa and PythonCard can have a static text that can
respond to mouse events and etc.

Changed the wxDateTime.Parse* methods to return an int that will be -1
on failure, and the index where parsing stopped otherwise.

Moved tools to be a Python package in wxPython.tools, added scripts to
import and launch each tool. This will let you import and use the
tools in your own scripts or apps as needed. On Linux and OS X the
tool scripts are installed to {prefix}/bin so you should be able to
easily launch them from the command line. For example, PyCrust can be
started with just the "pycrust" command.

Added a sample to the demo that catches various key events and
displays the details of the event.

Added wxWizard, wxWizardPage, wxWizardPageSimple and wxPyWizardPage.

Added wxXmlResourceHandler which allows you to create custom handlers
for nonstandard class types in XRC resources. See the demo for an
example.

----------------------

For a list of changes since 2.3.2.1 please see the CHANGES.txt file in the
distribution.

In the grand tradition of the Python masters, I am headed out of town
tomorrow for about a week, (Guido and others always leave town the day after
a release! :wink: and I will be unvailable to answer email. If there are issues
that are specific to this preview please report them to the mail list and
also go ahead and enter bug reports about them at SourceForge. Put them in
the "wxPython specific" category and they will automatically be assigned to
me.

http://sf.net/tracker/?group_id=9863&atid=109863

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Robin Dunn wrote:

If you have contributed code that is
in the wxPython library, now is the time to ensure that it is working
properly and to send any updates to me.

Robin,

Would you like to add my FloatCanvas to the wxPython library? If so,
I'll download pre6 and make sure it works there, and then send it on.
How much time would I have to do this?

-Chris

Here's a brief description:

FloatCanvas.py

This is a high level window for drawing maps and anything else in an
arbitrary coordinate system.

The goal is to provide a convenient way to draw stuff on the screen
without having to deal with handling OnPaint events, converting to pixel
coordinates, knowing about wxWindows brushes, pens, and colors, etc. It
also provides virtually unlimited zooming and scrolling

I am using it for two things:
1) general purpose drawing in floating point coordinates
2) displaying map data in Lat-long coordinates

If the projection is set to None, it will draw in general purpose
floating point coordinates. If the projection is set to 'FlatEarth', it
will draw a FlatEarth projection, centered on the part of the map that
you are viewing. You can also pass in your own projection function.

It is double buffered, so re-draws after the window is uncovered by
something
else are very quick.

It relies on NumPy, which is needed for speed

Bugs and Limitations:
    Lots: patches, fixes welcome

For Map drawing: It ignores the fact that the world is, in fact, a
sphere, so it will do strange things if you are looking at stuff near
the poles or the date line. so far I don't have a need to do that, so I
havn't bothered to add any checks for that yet.

Zooming:
I have set no zoom limits. What this means is that if you zoom in really
far, you can get integer overflows, and get wierd results. It
doesn't seem to actually cause any problems other than wierd output, at
least when I have run it.

Speed:
I have done little to improve speed in this app. The one thing I have
done is used NumPy Arrays to store the coordinates of the points of the
objects. This allowed me to use array oriented functions when doing
transformations, and should provide some speed improvement for objects
with a lot of points (big polygons, polylines, pointsets).

The real slowdown comes when you have to draw a lot of objects, because
you have to call the wxDC.DrawSomething call each time. This is plenty
fast for tens of objects, OK for hundreds of objects, but pretty darn
slow for thousands of objects.

The solution is to be able to pass some sort of object set to the DC. It
takes advantage of DC.DrawPointList, and hopefully domeday I'll get
around to adding DrawOtherStuffList() methods as well.

Copyright: Christopher Barker

License: Same as wxPython

Please let me know if you're using this!!!

Contact me at:

Chris.Barker@noaa.gov

···

--
Christopher Barker, Ph.D.
Oceanographer
                                        
NOAA/OR&R/HAZMAT (206) 526-6959 voice
7600 Sand Point Way NE (206) 526-6329 fax
Seattle, WA 98115 (206) 526-6317 main reception

Chris.Barker@noaa.gov

Would you like to add my FloatCanvas to the wxPython library? If so,
I'll download pre6 and make sure it works there, and then send it on.

I'll take a look at it, actually another look since I played with an early
version way back when. If there is an easy way to still function if NumPy
is not installed, then please do that. Also, a sample ready to drop into
the demo would be nice.

How much time would I have to do this?

About a week. wxWindows is shooting for this weekend for a release, and
I'll start after that working on final fixes and such before doing the
wxPython release.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Robin Dunn wrote:

> Would you like to add my FloatCanvas to the wxPython library? If so,
> I'll download pre6 and make sure it works there, and then send it on.

I'll take a look at it, actually another look since I played with an early
version way back when. If there is an easy way to still function if NumPy
is not installed, then please do that.

Hmm. I'd forgotten about that. For me, Python is next to useless without
NumPy. There is not an easy way for me to extract the NumPy dependence.
I'd either have to put a lot of "if Numeric" clauses in, or create a
class that acts like a NumPy array for the operations I use, but is
written in pure Python. Come to think of it, that's not a bad idea, it
could prove useful elsewhere, and would be a good way to test how much
difference Numeric really makes to performance. In any case, I won't
have it done it a week.

Also, a sample ready to drop into
the demo would be nice.

Would you want it with the NumPy dependence in it? If so, I'll do it
early next week, otherwise, maybe the next release.

-Chris

···

--
Christopher Barker, Ph.D.
Oceanographer
                                        
NOAA/OR&R/HAZMAT (206) 526-6959 voice
7600 Sand Point Way NE (206) 526-6329 fax
Seattle, WA 98115 (206) 526-6317 main reception

Chris.Barker@noaa.gov

Would you want it with the NumPy dependence in it? If so, I'll do it
early next week,

Yeah, that's fine. I just thought that if it was easy to do it without
NumPy it would be nice, but if it takes too much work then it's okay as is.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Robin Dunn wrote:

Yeah, that's fine. I just thought that if it was easy to do it without
NumPy it would be nice, but if it takes too much work then it's okay as is.

I'll get on in on Monday

-Chris

···

--
Christopher Barker, Ph.D.
Oceanographer
                                        
NOAA/OR&R/HAZMAT (206) 526-6959 voice
7600 Sand Point Way NE (206) 526-6329 fax
Seattle, WA 98115 (206) 526-6317 main reception

Chris.Barker@noaa.gov

This dependence might go away soon; isn't NumPy supposed to get merged into the next version of Python (or maybe the version after next) ?
Bob

···

At 09:46 AM 9/5/2002 -0700, you wrote:

Robin Dunn wrote:
> > Would you like to add my FloatCanvas to the wxPython library? If so,
> > I'll download pre6 and make sure it works there, and then send it on.
>
> I'll take a look at it, actually another look since I played with an early
> version way back when. If there is an easy way to still function if NumPy
> is not installed, then please do that.

Hmm. I'd forgotten about that. For me, Python is next to useless without
NumPy. There is not an easy way for me to extract the NumPy dependence.
I'd either have to put a lot of "if Numeric" clauses in, or create a
class that acts like a NumPy array for the operations I use, but is
written in pure Python. Come to think of it, that's not a bad idea, it
could prove useful elsewhere, and would be a good way to test how much
difference Numeric really makes to performance. In any case, I won't
have it done it a week.

> Also, a sample ready to drop into
> the demo would be nice.

Would you want it with the NumPy dependence in it? If so, I'll do it
early next week, otherwise, maybe the next release.