From: Kevin A. <al...@se...> - 2004-04-22 18:37:46
|
Since at a minimum we're a couple of weeks away from being able to make a 0.8 release I thought it would be good to give a progress report. The short story is that we're making a lot of progress and the framework is already much cleaner and the API exposed to user code is more consistent. I was able to build a set of docs using epydoc that are suitable for framework developers and we might put that online or at least describe how to do it yourself; the last epydoc release needs a small patch to work with wxPython. I'm still trying to figure out if I can suppress particular subclasses and/or CamelCase methods to make it suitable for generating some user docs from source. I have not started the migration guide yet, but it should be pretty clear from the changelog below where your own code will need to be changed. The nice thing about the new package name is that you can run PythonCardPrototype and PythonCard at the same time with the caveat that release 0.8 requires Python 2.3.x and wxPython 2.5.x. cvs is changing each day, usually multiple times a day, so if you're interested in keeping up with the changes and helping test stuff then you should probably contact me directly via email or the irc channel #pythoncard on irc.freenode.net. When cvs starts to stabilize I'll make another request for testers on various platforms. There is an additional complication with the files in the pythoncard_config dir such as the stc-styles.rc.cfg file which is not compatible between PythonCardPrototype and PythonCard; that file is used if you run the codeEditor or run any sample with the runtime tools. I may rename that file to avoid a conflict when upgrading, but I haven't decided yet. The same issue might arise with other config files. I'm in the midst of the 'selection' and 'stringSelection' attribute change below. It is a big change, so I'm doing it in stages. As always, comments and questions are welcome. Any decision I deem worthy of discussion will get posted here, for the most part the stuff below are things where Rowland and I already knew the "right answer" or it had been covered in an earlier list discussion. http://wiki.wxpython.org/index.cgi/PythonCard08 Release 0.8 2004-05-?? [progress as of 2004-04-22] updated Choice, ComboBox, List, RadioGroup to use 'selection' and 'stringSelection' attributes instead of mixed-capability 'selected' and 'selection' attribute see migration guide for more info added templates sub-package to hold common backgrounds and dialogs updated all samples and tools to use lowercase skip() removed CamelCase methods from BitmapCanvas (Draw -> draw) changed Component __init__ init underlying control before Widget class added makeNewId function removed postInit event binding is now part of component init removed getId() from Widget, using GetId() calls in framework *ROWLAND describe binding and spec changes here* added SetValue workaround for TextArea component on Windows removed dispatch.py and moved classes to event.py SetFocus -> setFocus Hide/Show -> visible attribute added visible, position, and size properties to tool windows added Tom Jacobs' montyhall sample added about.py module added About PythonCard dialog to codeEditor and resourceEditor added singleton.py module used by configuration.py, log.py, registry.py, and resource.py removed Ptr classes from isinstance checks removed old addresses052.py sample renamed res.py to resource.py replaced the use of __getattr__ and __setattr__ in Font, StatusBar, and Widget classes with property(), so those classes and components no longer have restrictive attribute access this change also eliminated the need for the _createAttributes and _getAttributeNames methods changed to wx.Frame for runtime tools on Windows to make them the same across platforms removed conditional code check PyCrust since PyCrust is a standard part of wxPython now added createStatusBar method to Background and CustomDialog classes so applications can override that method if they want to use a more complex StatusBar made statusbar.StatusBar a direct subclass of wx.StatusBar renamed PythonCardApp to Application refactored config.py to configuration.py removed PythonCardObject and all references to it removed ObjectMap and all references to it removed ObjectLookup and all references to it changed on_openBackground to on_initialize renamed pom.py to component.py added test.py added timer.py module and simple Timer wrapper added deactivate event to Background updated sound.py to use wx.Sound changed model.py to require Python >= 2.3 and wxPython >= 2.5 converted DC methods to use tuples instead of separate x, y and width, height args changed wx.NULL to None switched to wx package from wxPython import changed to import wx changed wx.wx style prefixes to wx. except for wx.wxEVT constants changed wx.wxHtmlEasyPrinting to wx.html.HtmlEasyPrinting changed default on Message Watcher to show unused events PythonCardPrototype package renamed to PythonCard all references to Prototype updated in source and docs ka |