[Chandler-dev] New wx tarball, r177
robin at alldunn.com
Tue Jun 12 16:38:35 PDT 2007
I'm rolling out a new wx tarball to Chandler that contains a new merge
from the upstream wx source tree. You can get it by doing a "make
install" in your chandler directory. This brings us up to the released
version 220.127.116.11 of the code, plus a few weeks worth of additional fixes
and enhancements. Major changes since the last upstream merge are
wxGTK: Make wx.NO_BORDER style work with wx.RadioBox (patch
Update to 1.0 of TreeMixin.
wx.lib.customtreectrl: Patch from Andrea that fixes the following
* ZeroDivisionError when using the Vista selection style and
calling SelectItem; for some strange reason, sometimes the
item rect is not initialized and that generates the
ZeroDivisionError when painting the selection rectangle;
* Added a DeleteWindow method to GenericTreeItem class, for
items that hold a widget next to them;
* Renamed CustomTreeCtrl method IsEnabled to IsItemEnabled,
otherwise it conflicts with wx.Window.IsEnabled;
* Now CustomTreeCtrl behaves correctly when the widget attached
to an item is narrower (in height) than the item text;
wx.lib.flatnotebook: Patch from Andrea that implements the
* A new style FNB_FF2: my intentions were to make it like
Firefox 2, however it turned out to be an hybrid between wxAUI
notebook glose style & FF2 ...I still think it looks OK. The
main purpose for making it more like wxAUI is to allow
applications that uses both to have same look and feel (or as
close as it can get...);
* Changed the behavior of the left/right rotation arrows to
rotate single tab at a time and not bulk of tabs;
* Updated the demo module.
XRCed now uses a wx.FileHistory object for managing the recent
wx.DateSpan and wx.TimeSpan now use lower case property names in
order to not conflict with the same named static methods that
wx.aui.PyAuiDocArt and wx.aui.PyAuiTabArt can now be derived from
in wxPython and plugged in to wx.AUI.
XRCed has a new experimental feature to add controls by draging
icons from the tool palette to the test window. Mouse position is
tracked to highlight the future parent of the new item.
Updates to MaskedEdit controls from Will Sadkin:
Added parameter option stopFieldChangeIfInvalid, which can be
used to relax the validation rules for a control, but make
best efforts to stop navigation out of that field should its
current value be invalid. Note: this does not prevent the
value from remaining invalid if focus for the control is
lost, via mousing etc.
numctrl.py, demo / MaskedNumCtrl.py:
In response to user request, added limitOnFieldChange
feature, so that out-of-bounds values can be temporarily
added to the control, but should navigation be attempted out
of an invalid field, it will not navigate, and if focus is
lost on a control so limited with an invalid value, it will
change the value to the nearest bound.
Added handler for EVT_COMBOBOX to address apparently
inconsistent behavior of control when the dropdown control is
used to do a selection.
Added support for ChangeValue() function, similar to that of
the base control, added in wxPython 18.104.22.168.
Update to latest FloatCanvas from Chris Barker.
The pywxrc tool now properly supports generating classes for
menus and menubars, and also creating attributes for menus,
menubars and menu items.
Lots of changes to XRCed from Roman Rolinsky:
* Preferences for default "sizeritem" parameters for new panels
and controls can be configured ("File">"Preferences...").
* Implemented comment object for including simple one-line
comments and comment directives as tree nodes. No validation
is performed for a valid XML string so comments must not
contain "-->". Comment directive is a special comment
starting with '%' character, followed by a line of python
code. It is executed using 'exec' when the resource file is
opened. This is useful to import plugin modules containing
custom handlers which are specific to the resource file,
hovewer this is of course a security hole if you use foreign
XRC files. A warning is displayed if the preference option
'ask' is selected (by default).
* Added support for custom controls and plugin modules. Refer
to this wxPythonWiki for the details:
* Tool panel sections can be collapsed/expanded by clicking on
the label of a tool group.
* Some undo/redo and other fixes.
* Fixes for wxMSW (notebook highlighting, control sizes, tree Unselect).
* Notebook page highlighting fix. Highlight resizes when the
window is resized. ParamUnit spin button detects event
handler re-entry (wxGTK probably has a bug in wxSpinButton
with repeated events).
* Fix for dealing with empty 'growable' property, using
MiniFrame for properties panel, the panel is restored
together with the main window.
Added some SWIG magic that allows wx C++ lists to be exposed to
wxPython as sequence-like wrappers around the real list, instead
of making a Python list that is a copy of the real list as was
done before. These sequence-like objects support indexing,
iteration and containment tests ("obj in seq") but not anything
that would modify the sequence. If you need to have a real list
object like before you can pass the sequence to Python's list()
function to convert it. Current functions that are affected by
this are wx.Window.GetChildren, wx.GetTopLevelWindows,
wx.Sizer.GetChildren, and wx.Menu.GetMenuItems. Care should be
taken to be sure that you don't try to use the sequence after the
C++ object the list belongs to has been destroyed.
Updated wrappers for the RichTextCtrl classes that were already
wrapped, and added support for loading rich xml files and saving
as HTML or XML.
Added wxRoses sample from Ric Werme.
Added better wrappers for wx.OutputStream and wxPython now deals
with them similarly to how it handles wx.InputStreams.
Specifically, any Python file-like object can be passed where a
wx.OutputStream is expected and the data will be written to the
file object appropriately.
http://wxPython.org Java give you jitters? Relax with wxPython!
More information about the chandler-dev