]>
Commit | Line | Data |
---|---|---|
8eda5e35 RD |
1 | <?xml version="1.0" encoding="iso-8859-1" ?> |
2 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | |
3 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> | |
4 | <head> | |
5 | <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> | |
6 | <meta name="generator" content="Docutils 0.3.1: http://docutils.sourceforge.net/" /> | |
73adcb01 | 7 | <title>Recent Changes for wxPython</title> |
8eda5e35 RD |
8 | <link rel="stylesheet" href="default.css" type="text/css" /> |
9 | </head> | |
10 | <body> | |
73adcb01 RD |
11 | <div class="document" id="recent-changes-for-wxpython"> |
12 | <h1 class="title">Recent Changes for wxPython</h1> | |
fc33e5e1 | 13 | <div class="section" id="id1"> |
9004ba6a | 14 | <h1><a name="id1">2.5.3.1</a></h1> |
60b517c1 RD |
15 | <p>wxMac focus and border refreshes corrected.</p> |
16 | <p>Updated internal PNG library.</p> | |
17 | <p>wxMac fix for metal appearance on wx.ToolBar.</p> | |
18 | <p>wx.grid.Grid fix allowing DoGetBestSize to be called before CreateGrid | |
19 | (which means that a min size doesn't need to be specified.)</p> | |
20 | <p>wxMac fix for not sending a native click to a control if it is not | |
21 | enabled (does an enable itself)</p> | |
22 | <p>Added wx.lib.ogl.DrawnShape, and fixed various little bugs in the new | |
23 | OGL.</p> | |
24 | <p>Added support to XRC and XRCed for the 3-state checkbox flags and also | |
25 | for wx.ToggleButton. Updated the generic window styles supported by | |
26 | XRCed.</p> | |
27 | <p>It is now possible to create "stock" buttons. Basically this means | |
28 | that you only have to provide one of the stock IDs (and either an | |
29 | empty label or a label that matches the stock label) when creating the | |
30 | button and wxWidgets will choose the stock label to go with it | |
31 | automatically. Additionally on the platforms that have a native | |
32 | concept of a stock button (currently only GTK2) then the native stock | |
33 | button will be used. For example, the following will result in a | |
34 | button with "Cancel" as the label and an accelerator on the "C", and | |
35 | if run on wxGTK2 then there will also be an image of a red X:</p> | |
36 | <pre class="literal-block"> | |
37 | b = wx.Button(parent, wx.ID_CANCEL) | |
38 | </pre> | |
39 | <p>Added wx.lib.ticker.Ticker class from Chris Mellon.</p> | |
40 | <p>Fix some incorrect clipping regions in wxSTC on wxGTK.</p> | |
41 | <p>Added wrapper for wx.grid.Grid.GetOrCreateCellAttr.</p> | |
42 | <p>Removed my copy of distutils from the wxPython source tree. Now that | |
43 | I am no longer doing builds on Python 2.1 the newest distutils is no | |
44 | longer needed. (There is still one small bug in Python 2.2 distutils | |
45 | on win32, but it is easily worked around.) This sovles the problem of | |
46 | incorrect builds on some systems where the system installed distutils | |
47 | has been patched to behave slightly differently, for example SuSE on | |
48 | x86_64 or Chandler's build.</p> | |
49 | <p>Updated to SWIG 1.3.22 (plus my patch.) See wxPython/SWIG/README.txt | |
50 | in the source tree if you need to use SWIG when building your own copy | |
51 | of wxPython, or other extension modules that need to integrate with | |
52 | the wxPython modules.</p> | |
53 | <p>Added wx.Frame.RequestUserAttention which, if the platform suports it, | |
54 | will do something (such as flash the task bar item) to suggest to the | |
55 | user that they should look at that window.</p> | |
56 | <p>"Fixed" wx.grid.Grid.SetDefaultEditor and SetDefaultRenderer by making | |
57 | them register the editor or renderer for the "string" data type.</p> | |
58 | <p>Added depth param to wx.Image.ConvertToBitmap.</p> | |
59 | <p>Extended the wx.calendar.CalendarCtrl class with methods that get/set | |
60 | a Python datetime or date object. (These will only work with Python | |
61 | 2.3+) The methods are PySetDate, PyGetDate, PySetLowerDateLimit, | |
62 | PySetUpperDateLimit, PySetDateRange, PyGetLowerDateLimit, and | |
63 | PyGetUpperDateLimit. Also, CalendarEvent was extended with PySetDate | |
64 | and PyGetDate methods.</p> | |
65 | <p>wxMSW: SetBackgroundColour on a wx.Choice or a wx.ComboBox will now | |
66 | also set the colour of the dropdown.</p> | |
67 | <p>wxMac: MessageDialog now supports wx.NO_DEFAULT style</p> | |
68 | <p>wxMSW: added AssociateHandle and DissociateHandle to wx.Window</p> | |
69 | <p>wxMac: fix for toolbar tooltips</p> | |
70 | <p>wx.Sizer.Show (and Hide) now take an optional parameter specifying if | |
71 | the item to be shown should be searched for recursivly in subsizers, | |
72 | and return a boolean value indicating if the item was found.</p> | |
73 | <p>wxMSW: fixed MaximizeEvent generation in wx.Frame</p> | |
74 | <p>wxMSW: fixed sending duplicate EVT_COMBOBOX events</p> | |
75 | <p>Smoother time estimation updates in wx.ProgressDialog (patch 992813)</p> | |
76 | <p>Made wx.Listbook events more consistent with wx.Notebook ones (patch | |
77 | 1001271)</p> | |
78 | <p>Fixed rounding errors in variable status bar panes widths computation | |
79 | (patch 1030021)</p> | |
80 | <p>Added possibility to specify printer bin (patch 910272)</p> | |
81 | <p>wxMSW: fixed wx.ListCtrl's SetWindowStyleFlag() to not remove | |
82 | WS_VISIBLE; also refresh the control automatically (closes bug | |
83 | 1019440)</p> | |
84 | <p>Added wx.Choicebook, yet another notebook-like control.</p> | |
85 | <p>wxMSW: Make radiobutton tab behaviour the same on MSW as in standard | |
86 | MSW app, i.e. tab into the activated, not necessarily the first radio | |
87 | button.</p> | |
88 | <p>Added limited support for wxEventLoop (you can't derive from a | |
89 | wx.PyEventLoop version yet...) Updated and moved the sample showing | |
90 | how to replace the MainLoop to samples/mainloop/mainloop.py.</p> | |
91 | <p>The C++ xrc lib has been moved out of contrib and into the core, so it | |
92 | is always built by default. wxPython's build has also changed | |
93 | accordingly and will build the xrc module as part of the core set of | |
94 | modules built by default. If you were axplicitly using BUILD_XRC then | |
95 | it will no longer be recognized as a build option, otherwise you | |
96 | should notice no difference.</p> | |
97 | <p>wxMac: Fixed radio toolbar buttons to correctly untoggle the others | |
98 | when a new one is selected.</p> | |
99 | <p>wxMac: Fixed GetLineLength and GetLineText for MLTE text controls</p> | |
100 | <p>wxMac: wx.TaskBarIcon is implemented by allowing you to change the | |
101 | app's icon on the Dock and also specifying a menu that should be | |
102 | merged with the normal dock popup menu. See the MigrationGuide for | |
103 | more details and a warning.</p> | |
104 | <p>Added wx.TopLevelWindow.IsActive() which tells you if the frame or | |
105 | dialog is or containts the active window with the keyboard focus.</p> | |
106 | <p>Added ability to create a font based on pixel size rather than point | |
107 | size via the FontFromPixelSize constructor.</p> | |
108 | <p>Updated the Scintilla used by StyledTextCtrl to version 1.61</p> | |
109 | <p>Improved image HitTest for TreeListCtrl.</p> | |
110 | <p>Added wx.App.IsMainLoopRunning.</p> | |
111 | <p>wxGTK: Make wxComboBox spit out a bit fewer surplus events when | |
112 | holding down the mouse button.</p> | |
113 | <p>wxGTK: Enable key based navigation through notebook tabs as in the | |
114 | native control with Left and right keys. Support for vetoing.</p> | |
115 | <p>FloatCanvas updates from Chris Barker</p> | |
116 | <dl> | |
117 | <dt>PyPlot updates from Gordon Williams:</dt> | |
118 | <dd><ul class="first last simple"> | |
119 | <li>Added bar graph demo</li> | |
120 | <li>Modified line end shape from round to square.</li> | |
121 | <li>Removed FloatDCWrapper for conversion to ints and ints in | |
122 | arguments</li> | |
123 | <li>Imported modules given leading underscore to name.</li> | |
124 | <li>Added Cursor Line Tracking and User Point Labels.</li> | |
125 | <li>Demo for Cursor Line Tracking and Point Labels.</li> | |
126 | <li>Size of plot preview frame adjusted to show page better.</li> | |
127 | <li>Added helper functions PositionUserToScreen and | |
128 | PositionScreenToUser in PlotCanvas.</li> | |
129 | <li>Added functions GetClosestPoints (all curves) and GetClosestPoint | |
130 | (only closest curve) can be in either user coords or screen | |
131 | coords.</li> | |
132 | </ul> | |
133 | </dd> | |
134 | <dt>MaskedEdit updates from Will Sadkin:</dt> | |
135 | <dd><ul class="first last simple"> | |
136 | <li>Added '*' mask char that means "all ansii chars" (ords 32-255)</li> | |
137 | <li>Added proper unicode support to masked controls and wx.tools.dbg</li> | |
138 | <li>Fixed two reported missing import bugs introduced by package | |
139 | creation</li> | |
140 | <li>Converted masked package doc strings to reST format for better | |
141 | epydoc support</li> | |
142 | <li>lots of doc string improvements and function hiding to better | |
143 | reflect package's public contents.</li> | |
144 | </ul> | |
145 | </dd> | |
146 | </dl> | |
147 | <p>Restructured the installer packages slightly to help facilitate having | |
148 | multiple versions of wxPython installed at the same time. See the | |
149 | Migrarion Guide for more information.</p> | |
150 | <dl> | |
151 | <dt>Applied patch from Pim Van Heuven that modifies 4 files:</dt> | |
152 | <dd><ul class="first last simple"> | |
153 | <li>wxPython/demo/ListCtrl_edit.py (new demo)</li> | |
154 | <li>wxPython/demo/Main.py (include new demo in demo app)</li> | |
155 | <li>wxPython/wx/lib/mixins/listctrl.py (several improvements to | |
156 | TextEditMixin)</li> | |
157 | <li>wxPython/wx/lib/wxpTag.py (some small fixes)</li> | |
158 | </ul> | |
159 | </dd> | |
160 | </dl> | |
161 | <p>Added (thanks to Kevin Ollivier!) wrappers for wx.WebKitCtrl for the | |
162 | OSX build. Other platforms will raise an exception if you try to use | |
163 | it.</p> | |
164 | <p>wxPython on OSX can now be built in Unicode mode, can support multiple | |
165 | version installs, and comes with an uninstaller script.</p> | |
166 | </div> | |
167 | <div class="section" id="id2"> | |
168 | <h1><a name="id2">2.5.2.8</a></h1> | |
df1a2934 RD |
169 | <p>Predominantly a bug-fix release.</p> |
170 | <blockquote> | |
171 | <ul class="simple"> | |
172 | <li>Fixed fatal error due to improper wrapping of wx.FSFile.</li> | |
173 | <li>Fixed return type of EditableListBox.GetListCtrl</li> | |
174 | <li>Give generic tree and list controls a DoGetBestSize so they play | |
175 | nicer with sizers when there is no minimal size.</li> | |
176 | <li>Some tweaks in the demo and samples to correct layout, some | |
177 | flicker problems, and namespace use.</li> | |
178 | <li>Add wx.Image.ConvertAlphaToMask</li> | |
179 | <li>Minor corrections in wx.lib.dialogs</li> | |
180 | <li>wx.FileHistory constructor now accepts the documented 2nd | |
181 | parameter.</li> | |
182 | <li>Corrections for exceptions in the new ogl</li> | |
183 | <li>Fixed XRCed to not use reparenting of windows to implement caching | |
184 | of property panels, since Reparent on wxMac is not implemented.</li> | |
185 | <li>Add support for wxTAB_TRAVERSAL to the XRC handler for | |
186 | wxScrolledWindow.</li> | |
187 | <li>Add support for all wxListBox styles to the XRC handler for | |
188 | wxCheckListBox.</li> | |
189 | <li>Fix for wx.Listbook.DeleteAllPages to really delete everything.</li> | |
190 | <li>wxGTK2 now supports alpha blended bitmap drawing</li> | |
191 | <li>Made wx.grid.Grid play nicer with sizers.</li> | |
192 | <li>etc.</li> | |
193 | </ul> | |
194 | </blockquote> | |
195 | </div> | |
60b517c1 RD |
196 | <div class="section" id="id3"> |
197 | <h1><a name="id3">2.5.2.7</a></h1> | |
40efbdda RD |
198 | <p>wx.ADJUST_MINSIZE is now the default behaviour for window items in |
199 | sizers. This means that the item's GetMinSize and/or GetBestSize will | |
200 | be called when calculating layout and the return value from that will | |
201 | be used for the minimum size used by the sizer. The wx.FIXED_MINSIZE | |
202 | flag was added that will cause the sizer to use the old behaviour in | |
203 | that it will <em>not</em> call the window's methods to determine the new best | |
204 | size, instead the minsize that the window had when added to the sizer | |
da2c7672 RD |
205 | (or the size the window was created with) will always be used. Please |
206 | see the Sizers section in the Migration Guide for more details.</p> | |
40efbdda RD |
207 | <p>Added new MaskedEditControl code from Will Sadkin. The modules are |
208 | now locaed in their own sub-package, wx.lib.masked. Demos updated.</p> | |
209 | <p>The changes that implemented the incompatible wx.DC methods in 2.5.1.5 | |
210 | have been reverted. The wx.DC methods are now compatible with the 2.4 | |
211 | implemetation. In addition a set of renamed methods have been added | |
212 | that take wx.Point and/or wx.Size objects instead of individual | |
213 | parameters.</p> | |
214 | <p>Added wx.lib.mixins.listctrl.TextEditMixin, a mixin class that allows | |
215 | all columns of a wx.ListCtrl in report mode to be edited.</p> | |
216 | <p>Deprecated the wx.iewin module.</p> | |
217 | <p>Deprecated the wx.Sizer.AddWindow, AddSizer, AddSpacer methods as well | |
218 | as their Insert* and Prepend* counterparts.</p> | |
219 | <p>Added a generic StaticBitmap class in wx.lib.statbmp for the same | |
220 | reasons that stattext was created, so it could be mouse sensitive on | |
221 | all platforms like normal windows. Also updated stattext.py and | |
222 | buttons.py to handle attribute (font & colour) defaults and | |
223 | inheritance the new way. If you have custom controls of your own you | |
224 | should review stattxt.py or one of the others to see how it is to be | |
225 | done.</p> | |
226 | <p>wx.InitAllImageHandlers is now an empty function that does nothing but | |
227 | exist for backwards compatibility. The C++ version is now called | |
228 | automatically when wxPython is initialized. Since all the handlers | |
229 | are included in the wxWidgets shared library anyway, this imposes only | |
230 | a very small amount of overhead and removes several unneccessary | |
231 | problems.</p> | |
232 | <p>Replaced wx/lib/pubsub.py with a version that uses weak references to | |
233 | track the subscribers, plus other fixes/additions. Thanks go to | |
234 | Oliver Schoenborn and Robb Shecter.</p> | |
235 | <p>wxGTK now uses gtk_init_check so wxPython can raise an exception if | |
236 | there is no DISPLAY available or other initializaion problem.</p> | |
237 | <p>wx.GetKeyState now has an implementation for wxGTK and is able to | |
238 | detect the up/down or toggle state of modifier and toggle keys.</p> | |
239 | <p>The LC_NUMERIC locale is now reset back to "C" (compatibility) when | |
240 | running on wxGTK to work around the fact that GTK requires the locale | |
241 | to be set to the system settings but Python depends on LC_NUMERIC | |
242 | remaining compatible with "C".</p> | |
243 | <p>Switched gizmos.TreeListCtrl to the newer version of the code from the | |
244 | wxCode project.</p> | |
245 | <p>OGL is dead! LONG LIVE OGL! (Oops, sorry. A bit of my dramatic side | |
246 | leaked out there...) The wx.ogl module has been deprecated in favor | |
247 | of the new Python port of the OGL library located at wx.lib.ogl | |
248 |