]>
Commit | Line | Data |
---|---|---|
1 | Recent Changes for wxPython | |
2 | ===================================================================== | |
3 | ||
4 | 2.9.0.0 | |
5 | ------- | |
6 | * | |
7 | ||
8 | wxGTK: Implemented support for underlined fonts in wx.StaticText | |
9 | ||
10 | wxGTK: wx.TopLevelWindow.SetSizeHints size increments now work | |
11 | ||
12 | Added wx.EventBlocker class | |
13 | ||
14 | wxGTK: make wx.TopLevelWindow.GetSize() return the size of the window | |
15 | including the decorations and updated SetSize() to account for this as | |
16 | well. | |
17 | ||
18 | wxMSW: For consistency with wxGTK, when a top level window is | |
19 | minimized the size returned from GetSize will be the restored size, | |
20 | not the size of the icon window. | |
21 | ||
22 | wxGTK: For consistency with wxMSW, when a top level window is | |
23 | minimized the size returned from GetClientSize will be (0,0). | |
24 | ||
25 | wxGTK: Color cursors now supported. | |
26 | ||
27 | Added wx.DC.StretchBlit() for wxMac and wxMSW (Vince Harron) | |
28 | ||
29 | Added support for labels for toolbar controls (Vince Harron) | |
30 | ||
31 | wxGTK: Implemented support for underlined fonts in wx.StaticText. | |
32 | ||
33 | wxGTK: Setting foreground colour of single line wx.TextCtrl now works. | |
34 | ||
35 | wxMac: Corrected top border size for wxStaticBox with empty label (nusi) | |
36 | ||
37 | wx.Window.IsEnabled() now returns false even if the window parent, and | |
38 | not the window itself, is disabled and added IsThisEnabled() | |
39 | implementing the old IsEnabled() behaviour. | |
40 | ||
41 | wxGTK: Now using the native tab traversal functions instead of | |
42 | simulating it ourselves. | |
43 | ||
44 | Generating wx.NavigationKeyEvent events doesn't work any more under | |
45 | wxGTK (and other platforms in the future), use wx.Window.Navigate() or | |
46 | NavigateIn() instead. | |
47 | ||
48 | ||
49 | ||
50 | ||
51 | ||
52 | ||
53 | 2.8.3.1 | |
54 | ------- | |
55 | * | |
56 | ||
57 | wxGTK: Make wx.NO_BORDER style work with wx.RadioBox (patch 1525406) | |
58 | ||
59 | Update to 0.9.1 of TreeMixin. | |
60 | ||
61 | ||
62 | ||
63 | ||
64 | 2.8.3.0 | |
65 | ------- | |
66 | * 22-March-2007 | |
67 | ||
68 | Added wx.ToolBar.SetToolNormalBitmap and SetToolDisabledBitmap | |
69 | methods. (Keep in mind however that the disabled bitmap is currently | |
70 | generated on the fly by most native toolbar widgets, so this | |
71 | SetToolDisabledBitmap method won't have any affect on them...) | |
72 | ||
73 | Refactored the inspection tool such that it can be used as a wx.App | |
74 | mix-in class as it was used before (with the wx.lib.mixins.inspect | |
75 | module) and also as a non mix-in tool (using wx.lib.inspect.InspectionTool). | |
76 | ||
77 | Add wx.lib.mixins.treemixin from Frank Niessink. | |
78 | ||
79 | Added the wx.SizerFlags class, and also added AddF, InsertF and | |
80 | PrependF methods to wx.Sizer. The wxSizerFlags class provides a | |
81 | convienient and easier to read way to add items to a sizer. It was | |
82 | added as a new set of methods of the wx.Sizer class so as to not | |
83 | disturb existing code. For example, instead of writing:: | |
84 | ||
85 | sizer.Add(ctrl, 0, wx.EXPAND | wx.ALL, 10) | |
86 | ||
87 | you can now write:: | |
88 | ||
89 | sizer.AddF(ctrl, wx.SizerFlags().Expand().Border(wx.ALL,10)) | |
90 | ||
91 | ||
92 | Will Sadkin provided a patch for the wx.lib.masked package that fixes | |
93 | its support for using the navigation keys on the numeric keypad. | |
94 | ||
95 | wx.lib.plot: patch #1663937 to allow user to turn off scientific | |
96 | notation on plot. | |
97 | ||
98 | wxGTK: Most of the remaining TODOs for the wx.GraphicsContext on wxGTK | |
99 | have been done. This includes implementations for GetTextExtent, | |
100 | Clip, DrawBitmap, fixing the drawing position of text to be at the | |
101 | upper left corner instead of the baseline, etc. | |
102 | ||
103 | wx.lib.customtreectrl patches from Andrea: | |
104 | ||
105 | 1. ExpandAll has been renamed as ExpandAllChildren, and the new | |
106 | ExpandAll now takes no input arguments (consistent with | |
107 | wx.TreeCtrl) | |
108 | ||
109 | 2. ctstyle keyword is now defaulted to 0: every style related to | |
110 | CustomTreeCtrl and the underlying wx.PyScrolledWindow should be | |
111 | declared using the keyword "style" only. For backward | |
112 | compatibility, ctstyle continues to work as I merged ctstyle and | |
113 | style in the __init__ method. | |
114 | ||
115 | 3. GetClassDefaultAttributes is now a classmethod. | |
116 | ||
117 | 4. UnselectAll bug fixed. | |
118 | ||
119 | ||
120 | Renamed the wx.lib.inspect and wx.lib.mixins.inspect modules to | |
121 | inspection, in order to avoid conflicts with the inspect module in the | |
122 | standard Python library. | |
123 | ||
124 | Lots of changes to XRCed from Roman Rolinsky: | |
125 | ||
126 | * Preferences for default "sizeritem" parameters for new panels and | |
127 | controls can be configured ("File">"Preferences..."). | |
128 | ||
129 | * Implemented comment object for including simple one-line comments and | |
130 | comment directives as tree nodes. No validation is performed for a | |
131 | valid XML string so comments must not contain "-->". Comment directive | |
132 | is a special comment starting with '%' character, followed by a line | |
133 | of python code. It is executed using 'exec' when the resource file is | |
134 | opened. This is useful to import plugin modules containing custom | |
135 | handlers which are specific to the resource file, hovewer this is of | |
136 | course a security hole if you use foreign XRC files. A warning is | |
137 | displayed if the preference option 'ask' is selected (by default). | |
138 | ||
139 | * Added support for custom controls and plugin modules. Refer to this | |
140 | wxPythonWiki for the details: http://wiki.wxpython.org/index.cgi/XRCed#custom | |
141 | ||
142 | * Tool panel sections can be collapsed/expanded by clicking on the | |
143 | label of a tool group. | |
144 | ||
145 | * Some undo/redo and other fixes. | |
146 | ||
147 | * Fixes for wxMSW (notebook highlighting, control sizes, tree Unselect). | |
148 | ||
149 | * Notebook page highlighting fix. Highlight resizes when the window | |
150 | is resized. ParamUnit spin button detects event handler re-entry | |
151 | (wxGTK probably has a bug in wxSpinButton with repeated events). | |
152 | ||
153 | * Fix for dealing with empty 'growable' property, using MiniFrame | |
154 | for properties panel, the panel is restored together with the | |
155 | main window. | |
156 | ||
157 | ||
158 | ||
159 | ||
160 | 2.8.1.1 | |
161 | ------- | |
162 | * 19-Jan-2007 | |
163 | ||
164 | wxMSW: Fix lack of spin control update event when control lost focus | |
165 | ||
166 | Added a typeId property to the PyEventBinder class that holds the | |
167 | eventType ID used for that event. So when you need the eventType | |
168 | (such as when sending your own instance of standard events) you can | |
169 | use, for example, wx.EVT_BUTTON.typeId instead of | |
170 | wx.wxEVT_COMMAND_BUTTON_CLICKED. Note that there are a few composite | |
171 | events, such as EVT_MOUSE and EVT_SCROLL, that will actually bind | |
172 | multiple event types at once, and in these cases the typeId property | |
173 | may not give you what you want. You should use te component events in | |
174 | these cases. | |
175 | ||
176 | PyCrust now has an option for showing/hiding the notebook. | |
177 | ||
178 | wxMSW: Corrected drawing of bitmaps for disabled menu items. | |
179 | ||
180 | Enhanced the wx.lib.mixins.inspect module. In addition to showing a | |
181 | PyCrust window it is now a widget browser, which provides a tree | |
182 | loaded up with all the widgets in the app, optionally with the sizers | |
183 | too, and also a panel displaying the properties of the selected | |
184 | window. Run the demo and type Ctrl-Alt-I keystroke (or Cmd-Alt-I on | |
185 | the Mac) to see how it works. You can add this to your own apps with | |
186 | just a few lines of code. | |
187 | ||
188 | Added wx.SearchCtrl.[Get|Set]DescriptiveText | |
189 | ||
190 | wxMac: Added support for the wx.FRAME_FLOAT_ON_PARENT style. | |
191 | ||
192 | wxMac: the popups used for call tips and autocomplete lists in | |
193 | StyledTextCtrl (such as in PyShell) are now top-level float-on-parent | |
194 | windows so they are no longer clipped by the bounds of the stc window. | |
195 | ||
196 | ||
197 | ||
198 | ||
199 | ||
200 | 2.8.1.0 | |
201 | ------- | |
202 | * 8-Jan-2007 | |
203 | ||
204 | Added EVT_TASKBAR_CLICK and use it to show taskbar icon menu on right | |
205 | button release, not press, under MSW (bug 1623761) | |
206 | ||
207 | Added wx.TreeCtrl.CollapseAll[Children]() and IsEmpty() methods | |
208 | ||
209 | Fix wx.MDIChidFrame.GetPosition() (patch 1626610) | |
210 | ||
211 | Fix attribute memory leak in wx.grid.Grid::ShowCellEditControl() (patch | |
212 | 1629949) | |
213 | ||
214 | wxGTK: Fix for controls on a toolbar being the full height of the | |
215 | toolbar instead of their natural height. | |
216 | ||
217 | wx.lib.customtreectrl patches from Andrea Gavana. | |
218 | ||
219 | wxMac: Applied patch #1622389, fixing two memory leaks in | |
220 | GetPartialTextExtents. | |
221 | ||
222 | More fixes for the native wx.ListCtrl on Mac. | |
223 | ||
224 | Added wx.aui.AuiNotebook.GetAuiManager(). | |
225 | ||
226 | Added wx.aui.AuiMDIParentFrame and wx.aui.AuiMDIChildFrame, which | |
227 | essentially implement the MDI interface using a normal wx.Frame and a | |
228 | wx.aui.AuiNotebook. | |
229 | ||
230 | ||
231 | ||
232 | ||
233 | 2.8.0.1 | |
234 | ------- | |
235 | * 11-Dec-2006 | |
236 | ||
237 | Lots of fixes and updates to the AUI classes. | |
238 | ||
239 | Added wx.CollapsiblePane. On wxGTK it uses a native expander widget, | |
240 | on the other platforms a regular button is used to control the | |
241 | collapsed/expanded state. | |
242 | ||
243 | Added the wx.combo module, which contains the ComboCtrl and ComboPopup | |
244 | classes. These classes allow you to implement a wx.ComboBox-like | |
245 | widget where the popup can be nearly any kind of widget, and where you | |
246 | have a lot of control over other aspects of the combo widget as well. | |
247 | It works very well on GTK and MSW, using native renderers for drawing | |
248 | the combo button, but is unfortunatly still a bit klunky on OSX... | |
249 | ||
250 | Use system default paper size for printing instead of A4 by default. | |
251 | ||
252 | Added wx.combo.OwnerDrawnComboBox, which is a ComboCtrl that delegates | |
253 | the drawing of the items in the popup and in the control itself to | |
254 | overridden methods of a derived class, similarly to how wx.VListBox | |
255 | works. | |
256 | ||
257 | Added wx.combo.BitmapComboBox which is a combobox that displays a | |
258 | bitmap in front of the list items. | |
259 | ||
260 | Added the wx.lib.mixins.inspect module. It contains the InspectMixin | |
261 | class which can be mixed with a wx.App class and provides a PyCrust | |
262 | window that can be activated with a Ctrl-Alt-I keystroke (or Cmd-Alt-I | |
263 | on the Mac.) | |
264 | ||
265 | Added some modules from Riaan Booysen: | |
266 | ||
267 | * wx.lib.flagart: contains icons of the flags of many countries. | |
268 | ||
269 | * wx.lib.art.img2pyartprov: makes images embedded in a python file | |
270 | with img2py available via the wx.ArtProvider. | |
271 | ||
272 | * wx.lib.langlistctrl: A wx.ListCtrl for selecting a language, | |
273 | which uses the country flag icons. | |
274 | ||
275 | * An I18N sample for the demo. | |
276 | ||
277 | wx.lib.masked: Patch from Will Sadkin. Includes Unicode fixes, plus | |
278 | more helpful exceptions and ability to designate fields in mask | |
279 | without intervening fixed characters. | |
280 | ||
281 | Added wx.SearchCtrl, which is a composite of a wx.TextCtrl with optional | |
282 | bitmap buttons and a drop-down menu. Controls like this can typically | |
283 | be found on a toolbar of applications that support some form of search | |
284 | functionality. On the Mac this control is implemented using the | |
285 | native HISearchField control, on the other platforms a generic control | |
286 | is used, although that may change in the future as more platforms | |
287 | introduce native search widgets. | |
288 | ||
289 | Added a set of button classes to wx.lib.buttons from David Hughes that | |
290 | uses the native renderer to draw the button. | |
291 | ||
292 | ||
293 | ||
294 | ||
295 | 2.7.2.0 | |
296 | ------- | |
297 | * 7-Nov-2006 | |
298 | ||
299 | Patch [ 1583183 ] Fixes printing/print preview inconsistencies | |
300 | ||
301 | Add events API to wxHtmlWindow (patch #1504493 by Francesco Montorsi) | |
302 | ||
303 | Added wxTB_RIGHT style for right-aligned toolbars (Igor Korot) | |
304 | ||
305 | Added New Zealand NZST and NZDT timezone support to wx.DateTime. | |
306 | ||
307 | wx.Window.GetAdjustedBestSize is deprecated. In every conceivable | |
308 | scenario GetEffectiveMinSize is probably what you want to use instead. | |
309 | ||
310 | wx.Image: Gained support for TGA image file format. | |
311 | ||
312 | wx.aui: The classes in the wx.aui module have been renamed to be more | |
313 | consistent with each other, and make it easier to recognize in the | |
314 | docs and etc. that they belong together. | |
315 | ||
316 | FrameManager --> AuiManager | |
317 | FrameManagerEvent --> AuiManagerEvent | |
318 | PaneInfo --> AuiPaneInfo | |
319 | FloatingPane --> AuiFloatingPane | |
320 | DockArt --> AuiDockArt | |
321 | TabArt --> AuiTabArt | |
322 | AuiMultiNotebook --> AuiNotebook | |
323 | AuiNotebookEvent --> AuiNotebookEvent | |
324 | ||
325 | wx.lib.customtreectrl: A patch from Frank Niessink which adds an | |
326 | additional style (TR_AUTO_CHECK_PARENT) that (un)checks a parent when | |
327 | all children are (un)checked. | |
328 | ||
329 | wx.animate.AnimationCtrl fixed to display inactive bitmap at start | |
330 | (patch 1590192) | |
331 | ||
332 | Patch from Dj Gilcrease adding the FNB_HIDE_ON_SINGLE_TAB style flag | |
333 | for wx.lib.flatnotebook. | |
334 | ||
335 | wx.Window.GetBestFittingSize has been renamed to GetEffectiveMinSize. | |
336 | SetBestFittingSize has been renamed to SetInitialSize, since it is | |
337 | most often used only to set the initial (and minimal) size of a | |
338 | widget. | |
339 | ||
340 | The QuickTime backend for wx.media.MediaCtrl on MS Windows works | |
341 | again. Just pass szBackend=wx.media.MEDIABACKEND_QUICKTIME to the | |
342 | constructor to use it instead of the default ActiveMovie backend, | |
343 | (assuming the quicktime DLLs are available on the system.) | |
344 | ||
345 | ||
346 | ||
347 | ||
348 | ||
349 | ||
350 | 2.7.1.3 | |
351 | ------- | |
352 | * 26-Oct-2006 | |
353 | ||
354 | wxGTK: The wx.ALWAYS_SHOW_SB style is now supported. | |
355 | ||
356 | Fixed name errors in the old wxPython package namespace. As a | |
357 | reminder, use of this package is deprecated and you are encouraged to | |
358 | switch your programs over to the wx package. | |
359 | ||
360 | Fixed wx.glcanvas.GLCanvas.SetCurrent to be compatible with prevoius | |
361 | versons. | |
362 | ||
363 | Added wx.StandardPaths.GetTmpDir. | |
364 | ||
365 | Bug fixes in the wx.ListCtrl on Mac from Kevin Olivier, allowing it to | |
366 | send events properly again. There is also a new native implementation | |
367 | of wx.ListCtrl available, which will be used for wx.LC_REPORT style | |
368 | list controls if you set the "mac.listctrl.always_use_generic" | |
369 | SystemOption to zero. In a future release this will be the default. | |
370 | ||
371 | Added a sample to the demo that shows some of what can be done with | |
372 | the new wx.GraphicsContext and wx.GraphicsPath classes. | |
373 | ||
374 | ||
375 | ||
376 | ||
377 | 2.7.1.2 | |
378 | ------- | |
379 | * 21-Oct-2006 | |
380 | ||
381 | Fixed a bug in the MaskedEdit controls caused by conflicting IsEmpty | |
382 | methods. | |
383 | ||
384 | Patch #1579280: Some mimetype optimizations on unix-like systems. | |
385 | ||
386 | wxMac: Several wx.webkit.WebKitCtrl enhancements/fixes, including: | |
387 | ||
388 | - new methods for increasing/decreasing text size, getting | |
389 | selection, getting/setting scroll position, printing, enabling | |
390 | editing, and running JavaScripts on the page. | |
391 | ||
392 | - added new event (wx.webkit.WebKitBeforeLoadEvent) for catching, and | |
393 | possibly vetoing, load events before they occur. | |
394 | ||
395 | - wx.webkit.WebKitCtrl now fires mouse events for certain events | |
396 | that it was eating before. This improves wxSplitterWindow | |
397 | resizing behavior. | |
398 | ||
399 | - refactoring of the sizing logic to move the Cocoa view. Tested | |
400 | with splitter windows, panels, notebooks and all position | |
401 | correctly with this. | |
402 | ||
403 | Some improvements to the drawing code in CustomTreeCtrl. | |
404 | ||
405 | Fixed refcount leak in wx.Window.GetChildren. | |
406 | ||
407 | ||
408 | ||
409 | ||
410 | ||
411 | 2.7.1.1 | |
412 | ------- | |
413 | * 18-Oct-2006 | |
414 | ||
415 | The following deprecated items have been removed: | |
416 | ||
417 | * wx.Bitmap SetQuality and GetQuality methods | |
418 | ||
419 | * The wx.GetNumberFromUser function | |
420 | ||
421 | * wx.EVT_LIST_GET_INFO and wx.EVT_LIST_SET_INFO | |
422 | ||
423 | * wx.BookCtrlSizer and wx.NotebookSizer | |
424 | ||
425 | * The PostScript-specific methods of wx.PrintData | |
426 | ||
427 | * wx.PrintDialogData SetSetupDialog and GetSetupDialog methods | |
428 | ||
429 | * wx.FontMapper SetConfig method | |
430 | ||
431 | * wx.html.HtmlSearchStatus.GetContentsItem method | |
432 | ||
433 | * wx.html.HtmlHelpData.GetContents, GetContentsCnt, GetIndex, and | |
434 | GetIndexCnt methods | |
435 | ||
436 | ||
437 | wx.EventLoop is now implemented for wxMac. | |
438 | ||
439 | Added wxPython wrappers for the new wx.Treebook and wx.Toolbook | |
440 | classes. | |
441 | ||
442 | wx.DC.BeginDrawing and EndDrawing have been deprecated in the C++ | |
443 | code, so since they never really did anything before they are now just | |
444 | empty stubs in wxPython. | |
445 | ||
446 | Solved a problem that has been around for a very long time in how C++ | |
447 | methods are virtualized for overriding in derived Python classes. | |
448 | Previously we couldn't do it for methods that needed to also exist in | |
449 | the base class wrappers such that they could be called normally. (The | |
450 | reasons are long and complex, but suffice it to say that it was due to | |
451 | mixing C++'s dynamic dispatch, and Python's runtime lookup of the | |
452 | method attributes resulting in endless recursion of function calls.) | |
453 | Because of this problem I used a hack that I have always hated, and | |
454 | that is renaming the base class methods with a "base_*" prefix, for | |
455 | example wx.Printout.base_OnBeginDocument. Now that the problem has | |
456 | finally been solved I have replaced all the base_Whatever() methods | |
457 | with the real Whatever() method as well as a simple wrapper named | |
458 | base_Whatever that is marked as deprecated. So now instead of writing | |
459 | your overridden methods like this:: | |
460 | ||
461 | def OnBeginDocument(self, start, end): | |
462 | # do something here | |
463 | return self.base_OnBeginDocument(start, end) | |
464 | ||
465 | You can now call the base class method the normal way, like this:: | |
466 | ||
467 | def OnBeginDocument(self, start, end): | |
468 | # do something here | |
469 | return Printout.OnBeginDocument(self, start, end) | |
470 | ||
471 | Or like this with super():: | |
472 | ||
473 | def OnBeginDocument(self, start, end): | |
474 | # do something here | |
475 | return super(MyPrintout, self).OnBeginDocument(start, end) | |
476 | ||
477 | Note that the old way with the "base_*" function still works, but you | |
478 | will get a DeprecationWarning from calling base_OnBeginDocument. The | |
479 | classes affected by this are: | |
480 | ||
481 | * wx.DropSource | |
482 | * wx.DropTarget | |
483 | * wx.TextDropTarget | |
484 | * wx.FileDropTarget | |
485 | * wx.PyLog (also added the ability to override Flush) | |
486 | * wx.PyApp (also added the ability to override ExitMainLoop) | |
487 | * wx.Printout | |
488 | * wx.PyPrintPreview | |
489 | * wx.PyPreviewFrame | |
490 | * wx.PreviewControlBar | |
491 | * wx.Process | |
492 | * wx.PyControl | |
493 | * wx.PyPanel | |
494 | * wx.PyScrolledWindow | |
495 | * wx.PyWindow | |
496 | * wx.Timer | |
497 | * wx.grid.PyGridCellRenderer | |
498 | * wx.grid.PyGridCellEditor | |
499 | * wx.grid.PyGridCellAttrProvider | |
500 | * wx.grid.PyGridTableBase | |
501 | * wx.html.HtmlWindow | |
502 | * wx.wizard.PyWizardPage | |
503 | ||
504 | ||
505 | Added the wx.DC.GradientFillConcentric and wx.DC.GradientFillLinear | |
506 | methods. | |
507 | ||
508 | wxGTK: wx.ListBox and wx.CheckListBox are now using native GTK2 | |
509 | widgets. | |
510 | ||
511 | Added wx.ListBox.HitTest() from patch 1446207 | |
512 | ||
513 | Bumped up to SWIG 1.3.29. This provides some more runtime performance | |
514 | boosts, gets rid of the dreaded Ptr classes, and some other nice new | |
515 | things. | |
516 | ||
517 | Added wx.Window.GetScreenPosition and GetScreenRect which returns the | |
518 | position of the window in screen coordinates, even if the window is | |
519 | not a top-level window. | |
520 | ||
521 | Added GetResourcesDir and GetLocalizedResourcesDir to | |
522 | wx.StandardPaths. | |
523 | ||
524 | Added a GetReceivedFormat method to wx.DataObjectComposite. You can | |
525 | use this to find out what format of data object was recieved from the | |
526 | source of the clipboard or DnD operation, and then you'll know which | |
527 | of the component data objects to use to access the data. | |
528 | ||
529 | Changed how the stock objects (wx.RED, wx.RED_PEN, wx.RED_BRUSH, etc.) | |
530 | are initialized. They are now created as uninitialized instances | |
531 | using __new__. Then after the wx.App has been created, but before | |
532 | OnInit is called, the .this attribute of each object is initialized. | |
533 | This was needed because of some delayed initialization functionality | |
534 | that was implemented in wxWidgets, but the end result is cleaner for | |
535 | wxPython as well, and allowed me to remove some ugly code previously | |
536 | hidden under the covers. | |
537 | ||
538 | Added wx.StandardPaths.GetDocumentsDir. | |
539 | ||
540 | Added wx.RendererNative.DrawCheckButton. | |
541 | ||
542 | wx.ProgressDialog.Update now returns a tuple of two values. The first | |
543 | is a continue flag (what was returned before) and the second is a skip | |
544 | flag. If the dialog has the wx.PD_CAN_SKIP flag and if the Skip | |
545 | button is clicked, then the skip flag is set to True the next time | |
546 | Update is called. | |
547 | ||
548 | A DeprecationWarning is now issued when the old wxPython package is | |
549 | imported. If you are still using the old namespace please convert | |
550 | your code to use the new wx package instead. | |
551 | ||
552 | Added wrappers for Julian's new wxRichTextCtrl class, visible in | |
553 | wxPython as wx.richtext.RichTextCtrl window. It still needs some more | |
554 | work, but it is a great start. | |
555 | ||
556 | wx.lib.mixins.listctrl.TextEditMixin: Fixed the double END_LABEL_EDIT | |
557 | event problem in TextEditMixin by checking if the editor was already | |
558 | hidden before continuing with the CloseEditor method. Also added code | |
559 | to OpenEditor to send the BEGIN_LABEL_EDIT event and to not allow the | |
560 | opening of the editor to continue if the event handler doesn't allow | |
561 | it. | |
562 | ||
563 | wx.StaticBoxSizer now keeps better track of the wx.StaticBox, and it | |
564 | will destroy it if the sizer is destroyed before the parent window is. | |
565 | ||
566 | Added wx.HyperlinkCtrl. | |
567 | ||
568 | Added battery and power related functions and events (wxMSW only so | |
569 | far.) See wx.PowerEvent, wx.GetPowerType and wx.GetBatteryState. | |
570 | ||
571 | Added wx.ListCtrl.HitTestSubItem which returns the sub-item (i.e. the | |
572 | column in report mode) that was hit (if any) in addition to the item | |
573 | and flags. | |
574 | ||
575 | Added wrappers for wx.ColourPickerCtrl, wx.DirPickerCtrl, | |
576 | wx.FilePickerCtrl, and wx.FontPickerCtrl. | |
577 | ||
578 | Patch #1502016 wx.Image.ConvertToGreyscale now retains the alpha | |
579 | channel. | |
580 | ||
581 | Added wrappers for the wxAUI classes, in the wx.aui module. | |
582 | ||
583 | Added the PseudoDC class from Paul Lanier. It provides a way to | |
584 | record operations on a DC and then play them back later. | |
585 | ||
586 | Upgraded to Scintilla 1.70 for wx.stc.StyledTextCtrl. | |
587 | ||
588 | Added CanSetTransparent and SetTransparent methods to the | |
589 | wx.TopLevelWindow class, with implementations (so far) for wxMSW and | |
590 | wxMac. | |
591 | ||
592 | SetDefaultItem() and GetDefaultItem() are now members of | |
593 | wx.TopLevelWindow, not wx.Panel. | |
594 | ||
595 | wxGTK: Stock items (icons) will be used for menu items with stock | |
596 | IDs. | |
597 | ||
598 | Added wx.lib.combotreebox from Frank Niessink | |
599 | ||
600 | Added wx.ImageFromBuffer, wx.BitmapFromBuffer and | |
601 | wx.BitmapFromBufferRGBA factory functions. They enable loading of an | |
602 | image or bitmap directly from a Python object that implements the | |
603 | buffer interface, such as strings, arrays, etc. | |
604 | ||
605 | Added wx.App.IsDisplayAvailable() which can be used to determine if a | |
606 | GUI can be created in the current environment. (Still need an | |
607 | implementation for wxMSW...) | |
608 | ||
609 | The wx.html.HTML_FONT_SIZE_x constants are no longer available as the | |
610 | default sizes are now calculated at runtime based on the size of the | |
611 | normal GUI font. | |
612 | ||
613 | wx.Colour now includes an alpha component, which defaults to | |
614 | wx.ALPHA_OPAQUE. This is in preparation for allowing various new | |
615 | alpha blening functionality using wx.Colour objects, such as drawing | |
616 | with pens and brushes on a wx.DC. | |
617 | ||
618 | Added wx.NativePixelBuffer, wx.AlphPixelBuffer and related iterator | |
619 | and accessor classes. They allow platform independent direct access | |
620 | to the platform specific pixel buffer inside of a wx.Bitmap object. | |
621 | ||
622 | The beginnings of support for RTL languages has been added, thanks to | |
623 | a Google SoC project. | |
624 | ||
625 | Added wx.lib.dragscroller from Riaan Booysen. It provides a helper | |
626 | class that can used to scroll a wx.ScrolledWindow in response to a | |
627 | mouse drag. | |
628 | ||
629 | Applied patch 1551409: Adds support for indeterminate mode gauges. | |
630 | ||
631 | wxMac: I've turned on the compile option for using the native toolbar | |
632 | on the Mac now that it supports hosting of controls. If the toolbar | |
633 | is managed by the frame via either CreateToolBar() or SetToolBar() | |
634 | then the native toolbar will be used. Additional toolbars, or | |
635 | toolbars that are not children of the frame, are managed by sizers or | |
636 | what-not will still use the emulated toolbar because of platform | |
637 | restrictions in how/where the native toolbar can be used. | |
638 | ||
639 | Added Python properties for many of the getter/setter methods of wx | |
640 | classes. In order for the names to be predicatble for somebody | |
641 | already familiar with wxPython the property names are simply the name | |
642 | of the getter with the "Get" dropped. For example, wx.Window has a | |
643 | property named "Size" that maps to GetSize and SetSize. So far there | |
644 | is only one known name conflict using this naming convention, and that | |
645 | is wx.KeyEvent.KeyCode, however since KeyCode was formerly a | |
646 | compatibility alias for GetKeyCode (and has been for a long time) it | |
647 | was decided to just switch it to a property. If you want to use the | |
648 | method then change your calls to event.KeyCode() to | |
649 | event.GetKeyCode(), otherwise you can use it as a property just by | |
650 | dropping the parentheses. | |
651 | ||
652 | Updated the C++ code for wx.gizmos.TreeListCtrl from the wxCode | |
653 | project. This has resulted in some minor API changes, most of which | |
654 | were worked around in the wrapper code. | |
655 | ||
656 | Added wx.lib.delayedresult from Oliver Schoenborn. | |
657 | ||
658 | Added wx.lib.expando, a multi-line textctrl that expands as more lines | |
659 | are needed. | |
660 | ||
661 | wx.Image.Scale and Rescale methods now take an extra parameter | |
662 | specifying type of method to use for resampling the image. It | |
663 | defaults to the current behavior of just replicating pixels, if | |
664 | wx.IMAGE_QUALITY_HIGH is passed then it uses bicubic and box averaging | |
665 | resampling methods for upsampling and downsampling respectively. | |
666 | ||
667 | Added the wx.lib.buttonpanel module, which is a tweaked version of | |
668 | Andrea Gavana's FancyButtonPanel module. | |
669 | ||
670 | Added the wx.lib.flatnotebook module, from Andrea Gavana. | |
671 | ||
672 | Renamed wx.FutureCall to wx.CallLater so it is named more like | |
673 | wx.CallAfter. wx.FutureCall is now an empty subclass of wx.CallLater | |
674 | for compatibility of older code. | |
675 | ||
676 | Added the wx.lib.customtreectrl module from Andrea Gavana. | |
677 | ||
678 | Added ChangeSelection to wx.BookCtrl (the base class for wx.Notebook | |
679 | and other book controls) that is the same as SetSelection but doesn't | |
680 | send the change events. | |
681 | ||
682 | Added wx.TextCtrl.ChangeValue() which is the same as SetValue() but | |
683 | doesn't send the text changed event. | |
684 | ||
685 | For consistency, all classes having an Ok() method now also have | |
686 | IsOk(), use of the latter form is preferred although the former hasn't | |
687 | been deprecated yet | |
688 | ||
689 | Added the wx.AboutBox() function and wx.AboutDialogInfo class. They | |
690 | provide a way to show a standard About box for the application, which | |
691 | will either be a native dialog or a generic one depending on what info | |
692 | is provided and if it can all be shown with the native dialog. | |
693 | ||
694 | The code in the animate contrib has been moved into the core wxWidgets | |
695 | library, and refactored a bit along the way. For wxPython it still | |
696 | exists in the wx.animate module, but has basically been reduced to two | |
697 | classes, wx.animate.Animation, and wx.animate.AnimationCtrl. You load | |
698 | the animated GIF (and hopefully there will be other supported formats | |
699 | in the near future) in the Animation object, and then give that to the | |
700 | AnimatedCtrl for display. See the demo for an example. There is also | |
701 | still a GIFAnimationCtrl class that provides some level of backwards | |
702 | compatibility with the old implementation. | |
703 | ||
704 | wxMac: The compile option that turns on the use of CoreGraphics (a.k.a | |
705 | Quartz) for wxDC is now turned on by default. This means that all | |
706 | drawing via wxDC is done using the new APIs from apple, instead of the | |
707 | old Quick Draw API. There are, however, a few places where Quartz and | |
708 | wxDC don't fit together very well, mainly the lack of support for | |
709 | logical drawing operations such as XOR, but there is work in progress | |
710 | to provide other ways to do the same sort of thing that will work with | |
711 | Quartz and also on the other platforms. | |
712 | ||
713 | The first parts of a new 2D drawing API has been added with the | |
714 | wx.GraphicsPath and wx.GraphicsContext classes. They wrap GDI+ on | |
715 | Windows, Cairo on wxGTK and CoreGraphics on OS X. They allow path-based | |
716 | drawing with alpha-blending and anti-aliasing, and use a floating | |
717 | point cooridnate system. Currently they can only target drawing to | |
718 | windows, but other wx.DC backends are forthcoming. The APIs may | |
719 | evolve a bit more before they are finalaized with the 2.8 release, but | |
720 | there is enough there now to get a good feel for how things will work. | |
721 | There is also a transitional wx.GCDC class that provides the wx.DC API | |
722 | on top of wx.GraphicsContext. Docs and a demo are still MIA. | |
723 | ||
724 | Added a wx.AutoBufferedPaintDC that is a subclass of wx.PaintDC on | |
725 | platforms that do double buffering by default, and a subclass of | |
726 | wx.BufferedPaintDC on the platforms that don't. You can use this | |
727 | class to help avoid the overhead of buffering when it is not | |
728 | needed. There is also a wx.AutoBufferedPaintDCFactory function that | |
729 | does a little more and actually tests if the window has | |
730 | double-buffering enabled and then decides whether to return a | |
731 | wx.PaintDC or wx.BufferedPaintDC. This uses the new | |
732 | wx.Window.IsDoubleBuffered method. | |
733 | ||
734 | ||
735 | ||
736 | ||
737 | ||
738 | ||
739 | ||
740 | 2.6.3.3 | |
741 | ------- | |
742 | * 15-July-2006 | |
743 | ||
744 | wx.lib.pubsub updates from Oliver Schoenborn: | |
745 | - fixed the hash problem with non-hashable objects | |
746 | - now supports listeners that use \*args as an argument | |
747 | (listener(\*args) was not passing the validity test) | |
748 | - corrected some mistakes in documentation | |
749 | - added some clarifications (hopefully useful for first time | |
750 | users) | |
751 | - changed the way singleton is implemented since old way prevented | |
752 | pydoc etc from extracting docs for Publisher | |
753 | ||
754 | DocView and ActiveGrid IDE updates from Morgan Hua: | |
755 | New Features: In Tab-View mode, Ctrl-number will take the user to | |
756 | the numbered tab view. Modified files now show an '*' astrisk in | |
757 | the view title. Debugger framework can now support PHP debugging. | |
758 | Not important for python development, but at least that means the | |
759 | debugger framework is more generalized. | |
760 | ||
761 | wx.lib.mixins.listctrl.TextEditMixin: Fixed the double END_LABEL_EDIT | |
762 | event problem in TextEditMixin by checking if the editor was already | |
763 | hidden before continuing with the CloseEditor method. Also added code | |
764 | to OpenEditor to send the BEGIN_LABEL_EDIT event and to not allow the | |
765 | opening of the editor to continue if the event handler doesn't allow | |
766 | it. | |
767 | ||
768 | Undeprecated wx.GetNumberFromUser and added wx.NumberEntryDialog. | |
769 | ||
770 | Made necessaary changes for building wxPython for Python 2.5. There | |
771 | may still be some issues related to the new Py_ssize_t type and 64-bit | |
772 | machines, but at least all compile errors and warnings related to it | |
773 | have been resolved. | |
774 | ||
775 | ||
776 | ||
777 | ||
778 | 2.6.3.2 | |
779 | ------- | |
780 | * 3-April-2006 | |
781 | ||
782 | Fixed reference leak in wx.gizmos.TreeListCtrl.GetSelections. | |
783 | ||
784 | wxMSW: Fixed sizing issue with wx.Choice and wx.ComboBox. This change | |
785 | was implemented by reverting a prior fix for a different problem | |
786 | (contiuous painting/resizing when a combobox is used as a widget in a | |
787 | wx.html.HtmlWindow) so a method to fix both problems is still being | |
788 | investigated. | |
789 | ||
790 | wxGTK: Fixed potential buffer overrun when pasting from the | |
791 | clipboard. | |
792 | ||
793 | Fixed problem in wx.lib.splitter when used on 64-bit platforms. Used | |
794 | the current length of the list for specifying an append instead of | |
795 | sys.maxint. | |
796 | ||
797 | wxMSW: Support added for XP themed owner drawn buttons and bitmap | |
798 | buttons. For example, if you change the foreground color of a button | |
799 | it will now be drawn with the XP themed style rather than an ugly | |
800 | generic button style. | |
801 | ||
802 | XRCed: Fix for Copy/Paste objects with international characters. | |
803 | ||
804 | Fixed the equality and inequality operators for some of the basic | |
805 | data types (wx.Point, wx.Size, wx.Colour, etc.) to no longer raise a | |
806 | TypeError if the compared object is not compatible, but to just return | |
807 | a boolean as expected. For example:: | |
808 | ||
809 | wx.Colour(64,0,64) == 123 ==> False | |
810 | ||
811 | wxMSW: Fixed (again) sizing/positioning issues of calling Realize on | |
812 | a wx.ToolBar that is not manaaged directly by a frame and that is | |
813 | already shown. | |
814 | ||
815 | wxMSW: Fixed wx.Choice/wx.ComboBox so they send events when a new item | |
816 | is selected only with the keyboard. | |
817 | ||
818 | ||
819 | ||
820 | 2.6.3.0 | |
821 | ------- | |
822 | * 27-March-2006 | |
823 | ||
824 | Change the wx.ListCtrl InsertStringItem wrapper to use the form that | |
825 | takes an imageIndex, and set the default to -1. This ensures that on | |
826 | wxMSW that if there is an image list but they don't specify an image, | |
827 | the native control doesn't use one anyway. | |
828 | ||
829 | wxMSW: wx.ListCtrl in report mode is now able to support images in | |
830 | other columns besides the first one. Simply pass an image index to | |
831 | SetStringItem. For virtual list controls you can specify the image to | |
832 | use on the extra columns by overriding OnGetItemColumnImage in your | |
833 | derived class. It is passed the item number and the column number as | |
834 | parameters, and the default version simply calls OnGetItemImage for | |
835 | column zero, or returns -1 for other columns. | |
836 | ||
837 | Switched to using SWIG 1.3.27 for generating the wrapper code. There | |
838 | are some small changes needed to SWIG to work around some bugs that | |
839 | wxPython exposes, and to be able to generate code that matches that | |
840 | which wxPython is using. If you are building wxPython yourself and | |
841 | need to modify any of the \*.i files or to add your own, then you will | |
842 | want to be sure to use a matching SWIG. See wxPython/SWIG/README.txt | |
843 | in the source tarball for details. | |
844 | ||
845 | wx.Image.Copy, Mirror, and GetSubImage now also do the right thing | |
846 | with the alpha channel. | |
847 | ||
848 | wxMSW: Fixed problem in wx.TextCtrl where using SetValue and | |
849 | wx.TE_RICH2 would cause the control to be shown if it was hidden. | |
850 | ||
851 | wxMSW: Numpad special keys are now distinguished from normal keys in | |
852 | key events. | |
853 | ||
854 | wxMSW: Multiline notebook tab label change now resizes the control | |
855 | correctly if an extra row is removed or added. | |
856 | ||
857 | wxMSW: On XP fall back to unthemed wxNotebook if specified orientation | |
858 | not available in the themed version. | |
859 | ||
860 | Added wx.Toolbar.GetToolsCount. | |
861 | ||
862 | Added wx.GridSizer.CalcRowsCols. | |
863 | ||
864 | Added wx.OutputStream.LastWrite. | |
865 | ||
866 | wxGTK: EVT_SET_CURSOR is now sent. | |
867 | ||
868 | wxGTK: Fix RequestMore for idle events. | |
869 | ||
870 | wxGTK: Implement user dashes for PS and GNOME printing. | |
871 | ||
872 | wxGTK: Correct update region code. Don't always invalidate the whole | |
873 | window upon resize. Reenable support for thewx.NO_FULL_REPAINT_ON_RESIZE | |
874 | flag. Also disable refreshing custom controls when focusing in and out. | |
875 | ||
876 | wx.lib.pubsub: Publisher is now able to parse a dotted notation string | |
877 | into a topic tuple. For example: subscribing to "timer.clock.seconds" | |
878 | is the same as subscribing to ("timer", "clock", "seconds"). | |
879 | ||
880 | Applied patch #1441370: lib.plot - allow passing in wx.Colour() | |
881 | ||
882 | Added wx.CommandEvent.GetClientData. | |
883 | ||
884 | Updated wxStyledTextCtrl to use version 1.67 of Scintilla. | |
885 | NOTE: The STC_LEX_ASP and STC_LEX_PHP lexers have been deprecated, | |
886 | you should use STC_LEX_HTML instead. | |
887 | ||
888 | wxSTC: Implemented Fix for SF Bug #1436503. Delay the start of the | |
889 | DnD operation in case the user just intended to click, not drag. | |
890 | ||
891 | Updated the analogclock.py module to the new analogclock package from | |
892 | E. A. Tacao. | |
893 | ||
894 | Added the wx.lib.mixins.listctrl.CheckListCtrlMixin class from Bruce | |
895 | Who, which makes it easy to put checkboxes on list control items. | |
896 | ||
897 | Applied a patch from Christian Kristukat to wx.lib.plot that adds | |
898 | scrollbars when the plot is zoomed in, and also the ability to grab a | |
899 | zoomed plot and move it around with a mouse drag. | |
900 | ||
901 | XRCed updated to allow wxMenuBar to be created inside a wxFrame. | |
902 | ||
903 | Added wx.StandardPaths.GetDocumentsDir() (patch 1214360) | |
904 | ||
905 | ||
906 | ||
907 | ||
908 | ||
909 | ||
910 | 2.6.2.1 | |
911 | ------- | |
912 | * 10-Jan-2006 | |
913 | ||
914 | wxMSW: Fix for bug #1211907, popup menu indenting inconsistent with | |
915 | bitmaps. | |
916 | ||
917 | wxMac: Don't send an event for wx.RadioButton deselections, just the | |
918 | selections. This was done to make it consistent with the other | |
919 | platforms. | |
920 | ||
921 | wxMSW: Always set flat toolbar style, even under XP with themes: this | |
922 | is necessary or separators aren't shown at all. | |
923 | ||
924 | Fixes for bug #1217872, pydocview.DocService not correctly initialized. | |
925 | ||
926 | Fix for bug #1217874, Error in parameter name in DocManager.CreateView. | |
927 | ||
928 | Added wrappers for the wx.RendererNative class. | |
929 | ||
930 | Added the wx.lib.splitter module, which contains the | |
931 | MultiSplitterWindow class. This class is much like the standard | |
932 | wx.SplitterWindow class, except it allows more than one split, so it | |
933 | can manage more than two child windows. | |
934 | ||
935 | Docview and IDE patch from Morgan Hua with fix for bug #1217890 | |
936 | "Closing view crashes Python" plus some new features: | |
937 | ||
938 | New feature added to the IDE is 'Extensions'. Under | |
939 | Tools|Options|Extensions, you can add calls to external programs. | |
940 | For example you can add a "Notepad" extension (under windows) that | |
941 | will exec Notepad on the currently open file. A new "Notepad" | |
942 | menu item will appear under the Tools menu. | |
943 | ||
944 | Some fixes to XRCed to make encoding errors a bit more user friendly. | |
945 | ||
946 | XRCed changes from Roman Rolinsky: | |
947 | ||
948 | * Added new controls (Choicebook, Listbook, StatusBar, | |
949 | DatePicker), and completed style flags. Test window is opened | |
950 | for an available parent control if no specific view | |
951 | defined. Better handling of exceptions (highlighting does not | |
952 | 'stick' anymore). | |
953 | ||
954 | * Use system clipboard for Copy/Paste. | |
955 | ||
956 | * Improved some dialogs (window styles, growable cols). Changed | |
957 | the range for wxSpinCtrl min/max to all integers (default 0/100 | |
958 | is not always good). | |
959 | ||
960 | Updates for wx.lib.foldpanelbar and wx.lib.hyperlink from Andrea | |
961 | Gavana. | |
962 | ||
963 | Fix for Bug #1283496: wxPython TheClipboard class causes problems for | |
964 | pychecker. Ensure the app has been created before initializing | |
965 | wx.TheClipboard. | |
966 | ||
967 | Fix for Bug #1352602: FileBrowseButtonWithHistory can't type in Value. | |
968 | ||
969 | wxHTML: Added space after list item number. | |
970 | ||
971 | wx.lib.printout: Applied patch #1384440. | |
972 | ||
973 | wxMSW: Fix for Bug #1293225 Window_FromHWND crashes if parent is | |
974 | None. | |
975 | ||
976 | Fix for Bug #1261669, use a wx.TE_RICH2 style for the Process demo so | |
977 | it doesn't fill up too soon. | |
978 | ||
979 | Applied Patch #1354389: wxPython MenuItem SetBitmaps fix. | |
980 | ||
981 | Applied Patch #1239456: wxPython wx.DataObject.GetAllFormats fix. | |
982 | ||
983 | Applied Patch # #1230107 which allows image handlers to be written in | |
984 | Python by deriving from wx.PyImageHandler. | |
985 | ||
986 | Applied patch #1072210: generalize printout.py to allow text printing. | |
987 | ||
988 | Applied patch #1243907: Give Throbber much more flexibility by | |
989 | allowing the user to set the rest image, the direction, the current | |
990 | index, custom sequence. Allows user to manually step through the | |
991 | sequence with Next(), Previous(), Increment(), Decrement() & | |
992 | SetCurrent(). Very handy if you have multiple throbbers that you want | |
993 | to synchronize with a single timer. | |
994 | ||
995 | Fix for bug #1336711: wx.lib.calendar.CalenDlg can yield incorrect | |
996 | result. | |
997 | ||
998 | Applied patch from Morgan Hua for updates to ActiveGrid code | |
999 | (pydocview, ActiveGrid IDE, etc.) | |
1000 | ||
1001 | Applied patch #1326241: Supporting "setup.py install --install-headers=path" | |
1002 | ||
1003 | Applied patch from Morgan Hua to fix bug #1219423: CommandManager | |
1004 | should not repeat old commands after a branch. | |
1005 | ||
1006 | Applied patch #1238825 adding search backward capabilities to the | |
1007 | demo. Modified to use the up/down options in the wx.FindReplaceDialog | |
1008 | instead of a separate menu item. | |
1009 | ||
1010 | Fix for bug #1266745 and #1387725 in the wx.FindReplaceDialog on MSW. | |
1011 | Actually check we are using MSLU before doing the hack designed to | |
1012 | workaround a bug in MSLU! | |
1013 | ||
1014 | wxMSW: wx.lib.iewin.IEHtmlWindow now properly handles tabbing, return | |
1015 | and other special keys properly. | |
1016 | ||
1017 | Lots of PyCrust enhancments started by Franz Steinaeusler, Adi Sieker, | |
1018 | and Sebastian Haase, and which in turn were further enhanced, fixed | |
1019 | tweaked and finished up by me. The changes include the following: | |
1020 | ||
1021 | * The Autocomplete and Calltip windows can now be opened manually | |
1022 | with Ctrl-Space and Ctrl-Shift-Space. | |
1023 | ||
1024 | * In the stand alone PyCrust app the various option settings, | |
1025 | window size and position, and etc. are saved and restored at the | |
1026 | next run. | |
1027 | ||
1028 | * Added a help dialog bound to the F1 key that shows the key | |
1029 | bindings. | |
1030 | ||
1031 | * Added a new text completion function that suggests words from | |
1032 | the history. Bound to Shift-Return. | |
1033 | ||
1034 | * F11 will toggle the maximized state of the frame. | |
1035 | ||
1036 | * switched to Bind() from wx.EVT_*(). | |
1037 | ||
1038 | * Display of line numbers can be toggled. | |
1039 | ||
1040 | * F12 toggles a "free edit" mode of the shell buffer. This mode | |
1041 | is useful, for example, if you would like to remove some output | |
1042 | or errors or etc. from the buffer before doing a copy/paste. | |
1043 | The free edit mode is designated by the use of a red, | |
1044 | non-flashing caret. | |
1045 | ||
1046 | * Ctrl-Shift-F will fold/unfold (hide/show) the selected lines. | |
1047 | ||
1048 | * General code cleanup and fixes. | |
1049 | ||
1050 | * Use wx.StandardPaths to determine the location of the config | |
1051 | files. | |
1052 | ||
1053 | * Use wx.SP_LIVE_UPDATE on crust and filling windows. | |
1054 | ||
1055 | * Extended the saving of the config info and other new features to | |
1056 | the PyShell app too. Additionally, other apps that embed a | |
1057 | PyCrust or a PyShell can pass their own wx.Config object and | |
1058 | have the Py code save/restore its settings to/from there. | |
1059 | ||
1060 | * All of the classes with config info get an opportunity to | |
1061 | save/load their own settings instead of putting all the | |
1062 | save/load code in one place that then has to reach all over the | |
1063 | place to do anything. | |
1064 | ||
1065 | * Enable editing of the startup python code, which will either be | |
1066 | the file pointed to by PYTHONSTARTUP or a file in the config dir | |
1067 | if PYTHONSTARTUP is not set in the environment. | |
1068 | ||
1069 | * Added an option to skip the running of the startup code when | |
1070 | PyShell or PyCrust starts. | |
1071 | ||
1072 | * PyCrust adds a pp(item) function to the shell's namespace that | |
1073 | pretty prints the item in the Display tab of the notebook. | |
1074 | Added code to raise that tab when pp() is called. | |
1075 | ||
1076 | * Added an option for whether to insert text for function | |
1077 | parameters when popping up the call tip. | |
1078 | ||
1079 | * Added Find and Find-Next functions that use the | |
1080 | wx.FindReplaceDialog. | |
1081 | ||
1082 | ||
1083 | Applied patches from Will Sadkin for wx.lib.masked modules: | |
1084 | ||
1085 | * Now ignores kill focus events when being destroyed. | |
1086 | ||
1087 | * Added missing call to set insertion point on changing fields. | |
1088 | ||
1089 | * Modified SetKeyHandler() to accept None as means of removing | |
1090 | one. | |
1091 | ||
1092 | * Fixed keyhandler processing for group and decimal character | |
1093 | changes. | |
1094 | ||
1095 | * Fixed a problem that prevented input into the integer digit of a | |
1096 | integerwidth=1 numctrl, if the current value was 0. | |
1097 | ||
1098 | * Fixed logic involving processing of "_signOk" flag, to remove | |
1099 | default sign key handlers if false, so that | |
1100 | SetAllowNegative(False) in the NumCtrl works properly. | |
1101 | ||
1102 | * Fixed selection logic for numeric controls so that if | |
1103 | selectOnFieldEntry is true, and the integer portion of an | |
1104 | integer format control is selected and the sign position is | |
1105 | selected, the sign keys will always result in a negative value, | |
1106 | rather than toggling the previous sign. | |
1107 | ||
1108 | wx.FontMapper.SetConfig is deprecated. You should instead just set an | |
1109 | application-wide config object with wx.Config.Set, which wx.FontMapper | |
1110 | will use by default. | |
1111 | ||
1112 | Added wx.GetMouseState which returns the current state of the mouse. | |
1113 | It returns an instance of a wx.MouseState object that contains the | |
1114 | current position of the mouse pointer in screen coordinants, as well | |
1115 | as boolean values indicating the up/down status of the mouse buttons | |
1116 | and the modifier keys. | |
1117 | ||
1118 | Added wx.SizerItem.SetUserData | |
1119 | ||
1120 | A variety of updates to wx.lib.floatcanvas, including Added | |
1121 | DrawObjects, including a ScaledTextBox, with auto-wrapping, etc, and | |
1122 | Scaled and Unscaled Bitmap Objects. | |
1123 | ||
1124 | WARNING: Changed all DrawObjects to take an (x,y) pair rather | |
1125 | than individual x,y parameters. Also changed rectangles and | |
1126 | ellipses to take (w,h) pair. This is an API change, but should | |
1127 | be easy to accommodate, all you need to do is add a parenthesis | |
1128 | pair: (...x, y, ...) ---> (...(x,y), ...) | |
1129 | ||
1130 | ||
1131 | ||
1132 | ||
1133 | 2.6.1.0 | |
1134 | ------- | |
1135 | * 4-June-2005 | |
1136 | ||
1137 | wx.ListCtrl: patch #1210352, fixes editing in generic wx.ListCtrl with | |
1138 | wx.LC_EDIT_LABELS. | |
1139 | ||
1140 | Applied patch #208286, MediaCtrl DirectShow rewrite. | |
1141 | ||
1142 | DocView patches from Morgan Hua: bug fixes, and additional SVN | |
1143 | commands, also added a default template that uses the text editor for | |
1144 | any unknown file type. | |
1145 | ||
1146 | wxMSW: Use the system IDC_HAND cursor for wx.CURSOR_HAND and only fallback | |
1147 | to the strange wxWidgets version if the system one is not available. | |
1148 | ||
1149 | wx.grid.Grid: Merge the cell size attribute the same way that other | |
1150 | attributes are merged, e.g., if it is already set to a non-default | |
1151 | value in the current GridCellAttr object then don't merge from the | |
1152 | other. | |
1153 | ||
1154 | wx.lib.evtmgr: Fixed to use wx._core._wxPyDeadObject | |
1155 | ||
1156 | wx.lib.gridmovers: Don't scroll when the mouse is dragged outside of | |
1157 | the grid, unless the mouse is kept in motion. | |
1158 | ||
1159 | wxMSW: Applied patch #1213290 incorrect logic in | |
1160 | wx.TopLevelWindow.ShowFullScreen. | |
1161 | ||
1162 | Applied patch #1213066 correct device names for Joystick in Linux. | |
1163 | ||
1164 | wxGTK: Applied patch #1207162 wx.TextCtrl.SetStyle fix for overlapping | |
1165 | calls. | |
1166 | ||
1167 | wx.FileConfig: fixed DeleteEntry to set the dirty flag properly so the | |
1168 | change will get written at the next flush. | |
1169 | ||
1170 | ||
1171 | ||
1172 | ||
1173 | ||
1174 | 2.6.0.1 | |
1175 | ------- | |
1176 | * 30-May-2005 | |
1177 | ||
1178 | Added wx.BrushFromBitmap to create a stippled brush in a single step. | |
1179 | Also added missing brysh style flags: wx.STIPPLE_MASK | |
1180 | wx.STIPPLE_MASK_OPAQUE. | |
1181 | ||
1182 | wxMSW: Fix for default control colours when the system text fg colour | |
1183 | is not black. | |
1184 | ||
1185 | wxGTK: Patch #1171754, It is now possible to have a menu item that | |
1186 | both has an icon and is a submenu. | |
1187 | ||
1188 | wxMSW: Patch #1197009, better refreshes when windows are moved and | |
1189 | resized. | |
1190 | ||
1191 | wxMSW: Patch #1197468. Keeps track of pending size/position changes | |
1192 | in case there is more than one adjustment for a window in a single | |
1193 | DeferWindowPos set, then the pending values can be used for defaults | |
1194 | instead of current values. | |
1195 | ||
1196 | Fixed the typemap that converts a Python list of strings to a | |
1197 | wxArrayString so it uses the wxPython default encoding. | |
1198 | ||
1199 | Several docstrings added and updated. Lots more to go. | |
1200 | ||
1201 | wxMac: Strings added to the clipboard or used in DnD no longer have an | |
1202 | extra null character at the end. | |
1203 | ||
1204 | Added wx.GetXDisplay that returns a raw swigified pointer for the X11 | |
1205 | Display, or None for the non-X11 platforms. | |
1206 | ||
1207 | wxMenu: Don't send an event when selecting an already selected radio | |
1208 | item. | |
1209 | ||
1210 | Added wx.LaunchDefaultBrowser. | |
1211 | ||
1212 | wxMSW: Fixed erroneous selection of content in wx.ComboBox when within | |
1213 | a wx.StaticBox. | |
1214 | ||
1215 | wxMSW: Fixed alpha blitting to take into account source position. | |
1216 | ||
1217 | Ensure that Python is still in an initialized state before doing any | |
1218 | locking or unlocking in wxPyBeginBlockThreads and wxPyEndBlockThreads | |
1219 | as these can be triggered after Python has been finalized in embedding | |
1220 | situations. | |
1221 | ||
1222 | Added alternate constructors for wx.Font: wx.FontFromPixelSize, | |
1223 | wx.FFont, wx.FFontFromPixelSize. See the docstrings or new api docs | |
1224 | for details. | |
1225 | ||
1226 | Added wx.lib.hyperlink from Andrea Gavana. It is a control like | |
1227 | static text that acts like a hyper-link, launching the system's | |
1228 | default browser in response to the clicks. | |
1229 | ||
1230 | Added an optional parameter to wxversion.select that allows you to | |
1231 | specify that the extra components specified in the version string are | |
1232 | required. For example, if you ask for "2.6-unicode" but only the ansi | |
1233 | version is installed then by default the ansi version will be selected | |
1234 | as it considered close enough since the version numbers match. If you | |
1235 | want to force the options to be required then you can just add a True | |
1236 | parameter, like this:: | |
1237 | ||
1238 | import wxversion | |
1239 | wxversion.select("2.6-unicode", True) | |
1240 | import wx | |
1241 | ||
1242 | Tweaked wx.lib.buttons such that flat buttons (e.g. have no bevel and | |
1243 | a wx.BORDER_NONE style flag) paint themed backgrounds if there are | |
1244 | transparent areas and the parent is displaying a theme. | |
1245 | ||
1246 | wxMSW: Fix for wrong sash colour of wx.SplitterWindow in the silver | |
1247 | theme on XP. | |
1248 | ||
1249 | Added a wx.xrc.XmlResourceHandler for the Ticker class. See | |
1250 | wx/lib/ticker_xrc.py | |
1251 | ||
1252 | wxSTC: Fixed CmdKeyAssign key bindings for Ctrl-Backspace. | |
1253 | ||
1254 | wxMSW: Fixed a bug in wx.TextCtrl where all the lines were being used | |
1255 | to calculate the best size, instead of using a reasonable limit. | |
1256 | ||
1257 | XRCed: Use wx.GetDefaultPyEncoding/wx.SetDefaultPyEncoding for | |
1258 | changing active encoding. Fixed pasting siblings (Ctrl key pressed | |
1259 | while pasting). | |
1260 | ||
1261 | wx.lib.filebrowsebutton: Bug fix from Chad Netzer for when | |
1262 | self.history is None. | |
1263 | ||
1264 | wx.ogl: Patch from Davide Salomoni that adds an optional point | |
1265 | parameter to LineShape.InsertLineControlPoint allowing one to | |
1266 | optionally specify where the new control point has to be drawn. | |
1267 | ||
1268 | wxMSW: setting foreground colour for wx.CheckBox now works when using | |
1269 | XP themes. | |
1270 | ||
1271 | More updates to the docview library modules and sample apps from the | |
1272 | ActiveGrid folks. Their sample IDE is now able to integrate with | |
1273 | Subversion. | |
1274 | ||
1275 | wx.grid.Grid: Ensure that the grid gets the focus when it is | |
1276 | left-clicked. Note that if you have custom widgets that handle the | |
1277 | EVT_LEFT_DOWN event but do not call event.Skip() then you will | |
1278 | probably want to add a call to self.SetFocus in the event handler. | |
1279 | ||
1280 | wxGTK: Add wxSTAY_ON_TOP support [Patch 1206023] | |
1281 | ||
1282 | wx.TreeCtrl: wx.EVT_TREE_ITEM_MENU event made consistent on all | |
1283 | platforms. The location of the click or the item is included in the | |
1284 | event as well. | |
1285 | ||
1286 | wxGTK: Setting background colour of a window now only affects the | |
1287 | window itself, not the borders, scrollbars, etc. (Bug #1204069) | |
1288 | ||
1289 | Print framework: Add more paper sizes and code to fallback to an | |
1290 | explicit paper size if a known paper size is not found for the | |
1291 | printer. | |
1292 | ||
1293 | wxMac: Applied patch for bug #1206181 Option-key decodes are wrong, | |
1294 | also applied patch for bug #1205691 Modified Fn keys don't work. | |
1295 | ||
1296 | wx.Image: Fixed to preserve alpha channel in Rotate90 method. | |
1297 | ||
1298 | wxMSW: Fixed incorrect background colour on wx.CheckListBox. | |
1299 | ||
1300 | wxMSW: Fixed drawing of owner drawn buttons with multiline labels | |
1301 | ||
1302 | Removed a bunch of unnecessary files, and removed or replaced images | |
1303 | that we're not sure of their origin or license. | |
1304 | ||
1305 | The default DoGetBestSize is updated to not always return the current | |
1306 | size if the window has no sizer, children, or minsize set. Instead | |
1307 | the current size is set as the minsize. This solves the occasional | |
1308 | problem where a sizer may cause a childless panel to grow but never | |
1309 | shrink. | |
1310 | ||
1311 | wxMSW: When converting a wx.Icon to a bitmap check if the icon has an | |
1312 | alpha channel and set the bitmap to use it. | |
1313 | ||
1314 | Fixed the wrong class name used in wx.PyScrolledWindow's call to | |
1315 | _setCallbackInfo. | |
1316 | ||
1317 | wxMSW: patch #1207202, Fixes GDI leak when using stock cursors. | |
1318 | ||
1319 | wx.calendar.CalendarCtrl: Patch #1207531, Keeps the CalendarCtrl wide | |
1320 | enough even when the weekday names for the locale are shorter than | |
1321 | usual. | |
1322 | ||
1323 | Made GridCellNumberEditor.StartingKey also insert the typed char when | |
1324 | there is a range of allowed values (so a wx.SpinCtrl is used instead | |
1325 | of a wx.TextCtrl.) | |
1326 | ||
1327 | ||
1328 | ||
1329 | ||
1330 | ||
1331 | 2.6.0.0 | |
1332 | ------- | |
1333 | * 26-Apr-2005 | |
1334 | ||
1335 | wxMSW: Fixed wx.TransientPopupWindow (and therefore wx.TipWindow) to | |
1336 | auto-dismiss when the mouse is clicked outside of the popup like it is | |
1337 | supposed to. | |
1338 | ||
1339 | wxMSW: Fixed bug #1167891 wx.Notebook display problem with wx.NB_MULTILINE. | |
1340 | ||
1341 | wxMSW: Fixed bad cliping of hidden windows inside of wx.StaticBox. | |
1342 | ||
1343 | wxGTK: The configure flags for selecting GTK+ 1.2.x or 2.x has | |
1344 | changed slightly. It is now --with-gtk[=VERSION] where VERSION is | |
1345 | either '1', '2' or 'any'. The default is '2'. | |
1346 | ||
1347 | wx.stc.StyledTextCtrl: Added the following methods for alternate ways | |
1348 | to set and fetch text from the document buffer. They work similarly | |
1349 | to the existing methods of the same name, except that they don't go | |
1350 | through the same string/unicode <--> wxString conversions. The "Raw" | |
1351 | methods will do no conversions at all and in a unicode build of | |
1352 | wxPython the strings will be in the utf-8 encoding and in an ansi | |
1353 | build no assumption is made about the encoding. The "UTF8" functions | |
1354 | will attempt to always get/set utf-8 text, which it will always be | |
1355 | able to do in a unicode build, and in an ansi build it will depend on | |
1356 | the content of the utf-8 used being compatible with the current | |
1357 | encoding, (you'll get an exception otherwise.) | |
1358 | ||
1359 | =================== ==================== | |
1360 | AddTextRaw AddTextUTF8 | |
1361 | InsertTextRaw InsertTextUTF8 | |
1362 | GetCurLineRaw GetCurLineUTF8 | |
1363 | GetLineRaw GetLineUTF8 | |
1364 | GetSelectedTextRaw GetSelectedTextUTF8 | |
1365 | GetTextRangeRaw GetTextRangeUTF8 | |
1366 | SetTextRaw SetTextUTF8 | |
1367 | GetTextRaw GetTextUTF8 | |
1368 | AppendTextRaw AppendTextUTF8 | |
1369 | =================== ==================== | |
1370 | ||
1371 | ||
1372 | wx.stc.StyledTextCtrl: Added the StyleSetFontEncoding(style, enc) | |
1373 | method that allows you to set the encoding to be used by the font for | |
1374 | a particular style. | |
1375 | ||
1376 | wxMac: Fixed wx.ComboBox to forward the EVT_CHAR, EVT_KEY_DOWN, | |
1377 | EVT_KEY_UP and EVT_TEXT events from its embedded text control. | |
1378 | ||
1379 | wxMac: Corrected refresh bugs in wxGrid. | |
1380 | ||
1381 | XRCed: Updated to version 0.1.5. | |
1382 | * Added wxWizard, wxWizardPageSimple (only from pull-down menu). | |
1383 | * Hide command for test window. | |
1384 | * Replacing classes works better. | |
1385 | * Added Locate tool. | |
1386 | ||
1387 | ||
1388 | ||
1389 | ||
1390 | 2.5.5.1 | |
1391 | ------- | |
1392 | * 8-Apr-2005 | |
1393 | ||
1394 | wxMSW: Fixed bug #1022383, 'several ComboBoxes appear selected' | |
1395 | ||
1396 | wx.grid.Grid: Fixed bug #1163384. Moved the code that handles | |
1397 | activating the cell editors to a EVT_CHAR event handler. This is done | |
1398 | so the character inserted into the editor will be the "cooked" char | |
1399 | value (including accented or composed keys) rather than the raw code | |
1400 | provided by the EVT_KEY_DOWN event. | |
1401 | ||
1402 | Added orient parameter to wx.MDIParentFrame.Tile() | |
1403 | ||
1404 | wxMSW: wxTextCtrl with wx.TE_RICH2 style now uses RichEdit 4.1 if | |
1405 | available. | |
1406 | ||
1407 | Added GetCount, GetCountRGB, and GetCountColour methods to | |
1408 | wx.ImageHistogram. | |
1409 | ||
1410 | wxMSW: wx.Window.Refresh changed to explicitly refresh all children as | |
1411 | well as the parent. Previously it was implicitly done because parents | |
1412 | did not clip their children by default. Now that they always clip | |
1413 | children then Refresh needed to be fixed to do a recursive refresh. | |
1414 | This also fixes the Freeze/Thaw problems that some people had with | |
1415 | 2.5.4.1. | |
1416 | ||
1417 | wx.SplitterWindow: Send EVT_SPLITTER_SASH_POS_CHANGED only once after | |
1418 | end of dragging and not after each CHANGING event (modified patch | |
1419 | #1076226) | |
1420 | ||
1421 | wx.glcanvas.GLCanvas: applied patch fixing problems with X server | |
1422 | crash when using nVidia cards (patch 1155132) | |
1423 | ||
1424 | wx.lib.mixins.listctrl: Patches from Toni Brkic: | |
1425 | * Bugfix for TextEditMixin when the view can't be scrolled | |
1426 | * Enhancement for ListCtrlAutoWidthMixin, allowing it to manage | |
1427 | the width of any column. | |
1428 | ||
1429 | wxMac: removal and reusing toolbar tools like the other platforms is | |
1430 | now possible. | |
1431 | ||
1432 | wxMac: Correct radio tool selection after calling Realize a 2nd time. | |
1433 | ||
1434 | wxMSW: Applied patch #1166587, removes all flicker from wx.StaticBox | |
1435 | ||
1436 | Added wx.lib.foldpanelbar, Andrea Gavana's port of Jorgen Bodde's C++ | |
1437 | wxFoldPanelBar classes to Python. | |
1438 | ||
1439 | wxGTK: Applied patch #1173802, reimplementation of GtkFileChooser | |
1440 | wxFileDialog by Mart Raudsepp. Note that this new file dialog is only | |
1441 | used on GTK2 >= 2.4. For earlier GTK2 versions and GTK1 then the | |
1442 | older generic file dialog is used. | |
1443 | ||
1444 | wxMSW: fixes to static box borders calculations (finalizes patch | |
1445 | #1166587) | |
1446 | ||
1447 | wx.Image: Use Python's buffer interface API for all image data and | |
1448 | alpha Set/Get methods and the ImageFromData* constructors. They all | |
1449 | still copy the buffer except for SetDataBuffer and SetAlphaBuffer, but | |
1450 | this gives more flexibility on where the data can come from. | |
1451 | ||
1452 | Added MDI support to XRC | |
1453 | ||
1454 | Added wx.animate module and a demo. The wx.animate module provides a | |
1455 | control that is able to display an animated GIF file. | |
1456 | ||
1457 | wx.lib.plot.py: Applied patch from Werner F. Bruhin that allows either | |
1458 | vertical and/or horizontal gridlines. | |
1459 | ||
1460 | wxMSW: Extra space given for top border of wx.StaticBoxSizer so the | |
1461 | upper line is not cliped when there is no label. | |
1462 | ||
1463 | wxMSW: Restored old behaviour of wx.StaticBox.SetBackgroundColour only | |
1464 | affecting the label. | |
1465 | ||
1466 | wxMSW: Fixed missing EVT_RIGHT_DOWN and EVT_TREE_ITEM_RIGHT_CLICK | |
1467 | events in a wx.TreeCtrl. | |
1468 | ||
1469 | Added wx.GetTopLevelWindows() function which returns a copy of the | |
1470 | list of top-level windows that currently exist in the application. | |
1471 | ||
1472 | Updated docview library modules and sample apps from the ActiveGrid | |
1473 | folks. | |
1474 | ||
1475 | Added the ActiveGrid IDE as a sample application. | |
1476 | ||
1477 | ||
1478 | ||
1479 | ||
1480 | 2.5.4.1 | |
1481 | ------- | |
1482 | * 16-Mar-2005 | |
1483 | ||
1484 | wx.Sizer Add, Insert, and Prepend functions now return a reference to the | |
1485 | wx.SizerItem that was added to the sizer, and the wx.SizerItem has a | |
1486 | GetRect accessor to give the position of the item on the parent window. | |
1487 | ||
1488 | Added wx.Sizer.GetItem method which returns the wx.SizerItem for the given | |
1489 | wx.Window, wx.Sizer or position index. | |
1490 | ||
1491 | wxMSW: wx.RadioButtons in the same group no longer have to be | |
1492 | consecutive (there may be intervening controls). Without this fix, an | |
1493 | out-of-sync assert is generated when clicking on a radio button and | |
1494 | then calling GetValue(). | |
1495 | ||
1496 | Some XRC changes: | |
1497 | - Added 'icon' property to wxFrame and wxDialog | |
1498 | - No longer ignores menu bitmaps on non-MSW platforms | |
1499 | - Notebook page bitmaps are now supported | |
1500 | - added system colours and fonts support (based on patch #1038207) | |
1501 | ||
1502 | wxMSW: fix for [ 1052989 ] TextCtrl.SetBackgroundColour(wx.NullColour) | |
1503 | bug. | |
1504 | ||
1505 | Added wx.PasswordEntryDialog analagous to wx.TextEntryDialog, allows | |
1506 | detecting entering an empty string vs. cancel unlike the | |
1507 | wx.GetPasswordFromUser dialog function. | |
1508 | ||
1509 | OGL patch from Shane Holloway: | |
1510 | ||
1511 | Two simple problems found in the new python ogl code. First is | |
1512 | the patch for _canvas.py. Essentially:: | |
1513 | ||
1514 | dx = abs(dc.LogicalToDeviceX(x - self._firstDragX)) | |
1515 | dy = abs(dc.LogicalToDeviceY(y - self._firstDragY)) | |
1516 | ||
1517 | was incorrect because (x,y) and (self._firstDragX, | |
1518 | self._firstDragY) are both already in Logical coordinates. | |
1519 | Therefore the difference between the two is also in logical | |
1520 | coordinates, and the conversion call is an error. This bug | |
1521 | surfaces when you have OGL on a scrollwin, and you are far from | |
1522 | the origin of the canvas. | |
1523 | ||
1524 | The second change in _composit.py basically removes the assumption | |
1525 | that the child is in both self._children and self._divisions. | |
1526 | Causes many problems when it's not. ;) | |
1527 | ||
1528 | Fixed GetSaveData and SetSaveData in wx.lib.multisash to not depend on | |
1529 | the default way that class objectss are converted to strings. | |
1530 | ||
1531 | Fixed problem in StyledTextCtrl.Set[HV]ScrollBar that could leave the | |
1532 | internal scrollbar visible. | |
1533 | ||
1534 | Added wx.StandardPaths which provides methods for determining standard | |
1535 | system paths for each platform. | |
1536 | ||
1537 | wxMSW: The window background is now only erased by default if the | |
1538 | background colour or background mode has been changed. This better | |
1539 | allows the default system themed behaviour to show through for | |
1540 | uncustomized windows. Explicit support added for using the correct | |
1541 | theme texture for wx.Notebook pages and their children. | |
1542 | ||
1543 | wx.Image: Added support for alpha channels in interpolated and | |
1544 | non-interpolated image rotation. Added ConvertAlphaToMask helper | |
1545 | method for turning shades of grey into shades of alpha and a colour. | |
1546 | ||
1547 | wxGTK2: Reimplemented DoDrawRotatedText() by way of a rotation of an | |
1548 | alpha blended text bitmap. It would be better if Pango could draw | |
1549 | directly into an wxImage (as FreeType can,) but that is for later... | |
1550 | ||
1551 | Added wrappers and a demo for the wx.MediaCtrl class, which can play | |
1552 | various forms of audio/video media using native codecs install on the | |
1553 | system. So far it is only implemented for Windows and OSX. | |
1554 | ||
1555 | wxGTK: Patch applied for Freeze()/Thaw() for wxTextCtrtl. | |
1556 | ||
1557 | Added "gravity" for splitter window (patch 1046105). Gravity is a | |
1558 | floating-point factor between 0.0 and 1.0 which controls position of | |
1559 | sash while resizing the wx.SplitterWindow. The gravity specifies | |
1560 | how much the left/top window will grow while resizing. | |
1561 | ||
1562 | wxMSW: wx.Slider's C++ implementation rewritten to be more | |
1563 | maintainable and hopefully less buggy. The position of the labels has | |
1564 | also been changed in order to better comply with Microsoft's examples | |
1565 | of how to use the control. | |
1566 | ||
1567 | wxMSW: Fix wx.TreeCtrl to end label editing if the control loses | |
1568 | focus (a slightly modified patch 1084592.) | |
1569 | ||
1570 | Added wx.EXEC_NODISABLE flag for wx.Execute, which will prevent all | |
1571 | the app's windows being disabled while a synchronous child process is | |
1572 | running. | |
1573 | ||
1574 | wxMSW: Much work to correct painting (or leaving transparent) of | |
1575 | control backgrounds, properly using background themes on XP, etc. | |
1576 | ||
1577 | Fixed a circular reference problem with wx.Timer. It will now | |
1578 | completely cleanup after itself when the last reference to the timer | |
1579 | is removed. If you were previously using timer.Destroy() to cleanup | |
1580 | your timers it will no longer work. Instead you should hold a | |
1581 | reference to the timer and then del the reference when you are | |
1582 | finished with the timer. | |
1583 | ||
1584 | Updated to 1.3.24 of SWIG. All of my big patches have been applied to | |
1585 | the main SWIG source tree, but unfortunatly there were also some bugs | |
1586 | added that affected the wxPython build and a few details in my | |
1587 | original patch were changed/removed, so we are still not free of | |
1588 | patches. A new patch for SWIG is located in the wxPython/SWIG | |
1589 | directory of the wxPython source tree. SWIG 1.3.24 plus this patch | |
1590 | should be used by anyone who is making custom modifications to | |
1591 | wxPython's .i files, or building their own extension modules or | |
1592 | etc. that need to interact with the wxPython swigged types. For the | |
1593 | morbidly curious, here are a few more details: | |
1594 | ||
1595 | * Since it is now possible easily and simply share the SWIG type | |
1596 | tables across modules I reverted to always using the stock SWIG | |
1597 | runtime instead of my slightly hacked up version of it exported | |
1598 | via the wxPython C API. | |
1599 | ||
1600 | * The %name directive is now deprecated so I replaced most uses of | |
1601 | it with a custom %Rename macro that uses %rename internally. | |
1602 | These will evetually need to be replaced with a DocDecl macro | |
1603 | when docstrings are added for those items. | |
1604 | ||
1605 | * The "this" attribute of all SWIGged classes is no longer a | |
1606 | string containing a "swigified pointer", but rather a custom | |
1607 | built-in type that holds the real C pointer to the object and | |
1608 | the type info. It can be converted to a string like the old | |
1609 | value using str() or to the long integer value of the pointer | |
1610 | using long(). | |
1611 | ||
1612 | Added SetDefaultPyEncoding and GetDefaultPyEncoding functions which | |
1613 | will set/get the encoding used by wxPython to convert string or | |
1614 | unicode objects to/from wxString objects. Previously the default | |
1615 | Python encoding was always used, but unless the user had tweaked their | |
1616 | sitecustomize.py file it is always "ascii", which would result in | |
1617 | errors if the strings contained character codes >= 128. | |
1618 | SetDefaultPyEncoding will now allow you to control which encoding will | |
1619 | be used to do those conversions. The default encoding is set to the | |
1620 | value of `locale.getdefaultlocale()[1]` when wxPython is first | |
1621 | imported. Please see http://www.alanwood.net/demos/charsetdiffs.html | |
1622 | for information on the differences between the common latin/roman | |
1623 | encodings. | |
1624 | ||
1625 | Added wxStdDialogButtonSizer, which is a a special sizer that knows | |
1626 | how to order and position standard buttons in order to conform to the | |
1627 | current platform's standards. You simply need to add each `wx.Button` | |
1628 | to the sizer, and be sure to create the buttons using the standard | |
1629 | ID's. Then call `Realize` and the sizer will take care of the rest. | |
1630 | ||
1631 | wxMSW Toolbar: pass correct tool id (and not always -1) to the | |
1632 | EVT_TOOL_RCLICKED handler | |
1633 | ||
1634 | wxGTK: Applied patch for combo box SELECTED events (no longer get | |
1635 | lots of surplus events) | |
1636 | ||
1637 | wxGTK: Applied patch for proper menu highlight colour detection in | |
1638 | wx.SystemSettings. | |
1639 | ||
1640 | wxGTK: Commited scrollbar patch #1093339 which sends lineup, linedown | |
1641 | events based on intercepting the mouse down events. | |
1642 | ||
1643 | wxGTK: Applied patch #1102789 which solved conflicts between wxWidgets | |
1644 | and GTK+'s context menu code. | |
1645 | ||
1646 | wxGTK: Applied patch #1100327 for correct feedback from DND actions | |
1647 | (not all actions are allowed). | |
1648 | ||
1649 | Fixed memory leak in wxGrid::UpdateAttr[Rows][Or][Cols] (patch 1104355) | |
1650 | ||
1651 | For efficiency reasons, text controls no longer set the string for | |
1652 | each text updated event, but rather query for the string value only | |
1653 | when GetString is called from an event handler. | |
1654 | ||
1655 | Added wx.SL_INVERSE style which will cause wx.Slider to invert the min | |
1656 | and max ends of the slider. | |
1657 | ||
1658 | Several patches applied, such as #1111174, #1110252 and others, that | |
1659 | make the generic wx.TreeCtrl (used on wxGTK and wxMac) be more | |
1660 | conistent with the wxMSW native wx.TreeCtrl. | |
1661 | ||
1662 | XRCed: | |
1663 | * Edit->Locate command (Ctrl-L) for quick selection of items. | |
1664 | Works with event-handling controls (buttons, text fields) but | |
1665 | not with labels/sizers. | |
1666 | * Some improvements: relative paths for files supplied as command- | |
1667 | line argument work correctly, notebook panels are highlighted | |
1668 | better. | |
1669 | ||
1670 | wxMac: Fixed a long-standing issue where wxSlider controls with a | |
1671 | hardcoded size would misplace their labels behind the slider control. | |
1672 | ||
1673 | wx.HtmlListBox fixed so calling RefreshLine(s) will cause the data for | |
1674 | that line to be refetched from the overridden methods in the derived | |
1675 | class. | |
1676 | ||
1677 | The default DoGetBestSize now includes the difference (if any) between | |
1678 | the client size and total size of the window, (such as the size of | |
1679 | borders.) Code that sets the client size using the best size, or that | |
1680 | added extra space to sizers to compensate for this bug may need to be | |
1681 | changed. | |
1682 | ||
1683 | Can suppress themed notebook pages with the wxNB_NOPAGETHEME style or | |
1684 | setting system option msw.notebook.themed-background to 0. | |
1685 | ||
1686 | wxSyledTextCtrl updated to use Scintilla 1.62. | |
1687 | ||
1688 | Can now set the msw.window.no-clip-children system option to 1 to | |
1689 | eliminate weird refresh behaviour (delays between a window being | |
1690 | erased and repainted, giving a ghostly gradual-redraw effect). May be | |
1691 | a temporary 'fix' until properly fixed before 2.6. | |
1692 | ||
1693 | wxMac: Toolbar is now more native looking with borderless toolbar | |
1694 | buttons. | |
1695 | ||
1696 | wxMac: Switched wx.Bitmap to use newer Quartz object types and APIs | |
1697 | internally. This results in faster display and better alpha support. | |
1698 | ||
1699 | Added wx.DatePickerCtrl. | |
1700 | ||
1701 | wx.html.HtmlWindow now supports background images. | |
1702 | ||
1703 | Added wx.lib.gestures module from Daniel Pozmanter which supports | |
1704 | using Mouse Gestures in an application. | |
1705 | ||
1706 | wxGTK2: ENTER and LEAVE mouse events are now sent for multi-line text | |
1707 | controls. | |
1708 | ||
1709 | wxMSW: "Alt" key (VK_MENU) now results in WXK_ALT keyboard event, not | |
1710 | WXK_MENU | |
1711 | ||
1712 | Added modules from Peter Yared and Morgan Hua that implement the wx | |
1713 | Doc/View framework in pure Python code. See wx.lib.docview for the | |
1714 | base implementation and wx.lib.pydocview for Python-specific | |
1715 | extensions. There are also a couple sample applications located in | |
1716 | samples/docview. | |
1717 | ||
1718 | Added GetBitmap, GetIcon to wx.ImageList. | |
1719 | ||
1720 | wxGTK wx.Button.SetLabel no longer invalidates/resets the font. | |
1721 | ||
1722 | wx.Sizer.AddWindow, AddSizer, AddSpacer and etc. have now been | |
1723 | undeprecated at the request of Riaan Booysen, the Boa Constructor team | |
1724 | lead. Boa needs them to help keep track of what kind of item is being | |
1725 | managed by the sizer. They are now just simple compatibility aliases | |
1726 | for Add, and etc. | |
1727 | ||
1728 | The old C++ version of the OGL lib is no longer built by default. Use | |
1729 | the Python version in the wx.lib.ogl package instead. | |
1730 | ||
1731 | The wx.iewin module is no longer built by default. You can use the | |
1732 | wx.lib.iewin version instead. | |
1733 | ||
1734 | Fixed wx.BufferedPaintDC for scrolled windows to work whether the | |
1735 | buffer is covering only the client area or the full virtual area of | |
1736 | the scrolled window. By default it will assume that only the client | |
1737 | area is covered. This is different than the old behavior so to | |
1738 | indicate that the entire virtual area is covered simply add a | |
1739 | style=wx.BUFFER_VIRTUAL_AREA parameter. | |
1740 | ||
1741 | wx.gizmos.TreeListCtrl: Add support for the EVT_TREE_ITEM_GETTOOLTIP | |
1742 | event. | |
1743 | ||
1744 | Added Resize, SetRGBRect, Size, and GetOrFindMaskColour methods to | |
1745 | wx.Image. | |
1746 | ||
1747 | Added wx.Rect.IsEmpty | |
1748 | ||
1749 | wxGTK: | |
1750 | - Corrected wx.ListBox selection handling | |
1751 | - Corrected default button size handling for different themes | |
1752 | - Corrected splitter sash size and look for different themes | |
1753 | - Fixed keyboard input for dead-keys | |
1754 | ||
1755 | ||
1756 | ||
1757 | ||
1758 | 2.5.3.1 | |
1759 | ------- | |
1760 | * 9-Nov-2004 | |
1761 | ||
1762 | wxMac focus and border refreshes corrected. | |
1763 | ||
1764 | Updated internal PNG library. | |
1765 | ||
1766 | wxMac fix for metal appearance on wx.ToolBar. | |
1767 | ||
1768 | wx.grid.Grid fix allowing DoGetBestSize to be called before CreateGrid | |
1769 | (which means that a min size doesn't need to be specified.) | |
1770 | ||
1771 | wxMac fix for not sending a native click to a control if it is not | |
1772 | enabled (does an enable itself) | |
1773 | ||
1774 | Added wx.lib.ogl.DrawnShape, and fixed various little bugs in the new | |
1775 | OGL. | |
1776 | ||
1777 | Added support to XRC and XRCed for the 3-state checkbox flags and also | |
1778 | for wx.ToggleButton. Updated the generic window styles supported by | |
1779 | XRCed. | |
1780 | ||
1781 | It is now possible to create "stock" buttons. Basically this means | |
1782 | that you only have to provide one of the stock IDs (and either an | |
1783 | empty label or a label that matches the stock label) when creating the | |
1784 | button and wxWidgets will choose the stock label to go with it | |
1785 | automatically. Additionally on the platforms that have a native | |
1786 | concept of a stock button (currently only GTK2) then the native stock | |
1787 | button will be used. For example, the following will result in a | |
1788 | button with "Cancel" as the label and if run on wxGTK2 then there will | |
1789 | also be an image of a red X:: | |
1790 | ||
1791 | b = wx.Button(parent, wx.ID_CANCEL) | |
1792 | ||
1793 | ||
1794 | Added wx.lib.ticker.Ticker class from Chris Mellon. | |
1795 | ||
1796 | Fix some incorrect clipping regions in wxSTC on wxGTK. | |
1797 | ||
1798 | Added wrapper for wx.grid.Grid.GetOrCreateCellAttr. | |
1799 | ||
1800 | Removed my copy of distutils from the wxPython source tree. Now that | |
1801 | I am no longer doing builds on Python 2.1 the newest distutils is no | |
1802 | longer needed. (There is still one small bug in Python 2.2 distutils | |
1803 | on win32, but it is easily worked around.) This sovles the problem of | |
1804 | incorrect builds on some systems where the system installed distutils | |
1805 | has been patched to behave slightly differently, for example SuSE on | |
1806 | x86_64 or Chandler's build. | |
1807 | ||
1808 | Updated to SWIG 1.3.22 (plus my patch.) See wxPython/SWIG/README.txt | |
1809 | in the source tree if you need to use SWIG when building your own copy | |
1810 | of wxPython, or other extension modules that need to integrate with | |
1811 | the wxPython modules. | |
1812 | ||
1813 | Added wx.Frame.RequestUserAttention which, if the platform suports it, | |
1814 | will do something (such as flash the task bar item) to suggest to the | |
1815 | user that they should look at that window. | |
1816 | ||
1817 | "Fixed" wx.grid.Grid.SetDefaultEditor and SetDefaultRenderer by making | |
1818 | them register the editor or renderer for the "string" data type. | |
1819 | ||
1820 | Added depth param to wx.Image.ConvertToBitmap. | |
1821 | ||
1822 | Extended the wx.calendar.CalendarCtrl class with methods that get/set | |
1823 | a Python datetime or date object. (These will only work with Python | |
1824 | 2.3+) The methods are PySetDate, PyGetDate, PySetLowerDateLimit, | |
1825 | PySetUpperDateLimit, PySetDateRange, PyGetLowerDateLimit, and | |
1826 | PyGetUpperDateLimit. Also, CalendarEvent was extended with PySetDate | |
1827 | and PyGetDate methods. | |
1828 | ||
1829 | wxMSW: SetBackgroundColour on a wx.Choice or a wx.ComboBox will now | |
1830 | also set the colour of the dropdown. | |
1831 | ||
1832 | wxMac: MessageDialog now supports wx.NO_DEFAULT style | |
1833 | ||
1834 | wxMSW: added AssociateHandle and DissociateHandle to wx.Window | |
1835 | ||
1836 | wxMac: fix for toolbar tooltips | |
1837 | ||
1838 | wx.Sizer.Show (and Hide) now take an optional parameter specifying if | |
1839 | the item to be shown should be searched for recursivly in subsizers, | |
1840 | and return a boolean value indicating if the item was found. | |
1841 | ||
1842 | wxMSW: fixed MaximizeEvent generation in wx.Frame | |
1843 | ||
1844 | wxMSW: fixed sending duplicate EVT_COMBOBOX events | |
1845 | ||
1846 | Smoother time estimation updates in wx.ProgressDialog (patch 992813) | |
1847 | ||
1848 | Made wx.Listbook events more consistent with wx.Notebook ones (patch | |
1849 | 1001271) | |
1850 | ||
1851 | Fixed rounding errors in variable status bar panes widths computation | |
1852 | (patch 1030021) | |
1853 | ||
1854 | Added possibility to specify printer bin (patch 910272) | |
1855 | ||
1856 | wxMSW: fixed wx.ListCtrl's SetWindowStyleFlag() to not remove | |
1857 | WS_VISIBLE; also refresh the control automatically (closes bug | |
1858 | 1019440) | |
1859 | ||
1860 | Added wx.Choicebook, yet another notebook-like control. | |
1861 | ||
1862 | wxMSW: Make radiobutton tab behaviour the same on MSW as in standard | |
1863 | MSW app, i.e. tab into the activated, not necessarily the first radio | |
1864 | button. | |
1865 | ||
1866 | Added limited support for wxEventLoop (you can't derive from a | |
1867 | wx.PyEventLoop version yet...) Updated and moved the sample showing | |
1868 | how to replace the MainLoop to samples/mainloop/mainloop.py. | |
1869 | ||
1870 | The C++ xrc lib has been moved out of contrib and into the core, so it | |
1871 | is always built by default. wxPython's build has also changed | |
1872 | accordingly and will build the xrc module as part of the core set of | |
1873 | modules built by default. If you were axplicitly using BUILD_XRC then | |
1874 | it will no longer be recognized as a build option, otherwise you | |
1875 | should notice no difference. | |
1876 | ||
1877 | wxMac: Fixed radio toolbar buttons to correctly untoggle the others | |
1878 | when a new one is selected. | |
1879 | ||
1880 | wxMac: Fixed GetLineLength and GetLineText for MLTE text controls | |
1881 | ||
1882 | wxMac: wx.TaskBarIcon is implemented by allowing you to change the | |
1883 | app's icon on the Dock and also specifying a menu that should be | |
1884 | merged with the normal dock popup menu. See the MigrationGuide for | |
1885 | more details and a warning. | |
1886 | ||
1887 | Added wx.TopLevelWindow.IsActive() which tells you if the frame or | |
1888 | dialog is or containts the active window with the keyboard focus. | |
1889 | ||
1890 | Added ability to create a font based on pixel size rather than point | |
1891 | size via the FontFromPixelSize constructor. | |
1892 | ||
1893 | Updated the Scintilla used by StyledTextCtrl to version 1.61 | |
1894 | ||
1895 | Improved image HitTest for TreeListCtrl. | |
1896 | ||
1897 | Added wx.App.IsMainLoopRunning. | |
1898 | ||
1899 | wxGTK: Make wxComboBox spit out a bit fewer surplus events when | |
1900 | holding down the mouse button. | |
1901 | ||
1902 | wxGTK: Enable key based navigation through notebook tabs as in the | |
1903 | native control with Left and right keys. Support for vetoing. | |
1904 | ||
1905 | FloatCanvas updates from Chris Barker | |
1906 | ||
1907 | PyPlot updates from Gordon Williams: | |
1908 | - Added bar graph demo | |
1909 | - Modified line end shape from round to square. | |
1910 | - Removed FloatDCWrapper for conversion to ints and ints in | |
1911 | arguments | |
1912 | - Imported modules given leading underscore to name. | |
1913 | - Added Cursor Line Tracking and User Point Labels. | |
1914 | - Demo for Cursor Line Tracking and Point Labels. | |
1915 | - Size of plot preview frame adjusted to show page better. | |
1916 | - Added helper functions PositionUserToScreen and | |
1917 | PositionScreenToUser in PlotCanvas. | |
1918 | - Added functions GetClosestPoints (all curves) and GetClosestPoint | |
1919 | (only closest curve) can be in either user coords or screen | |
1920 | coords. | |
1921 | ||
1922 | MaskedEdit updates from Will Sadkin: | |
1923 | - Added '*' mask char that means "all ansii chars" (ords 32-255) | |
1924 | - Added proper unicode support to masked controls and wx.tools.dbg | |
1925 | - Fixed two reported missing import bugs introduced by package | |
1926 | creation | |
1927 | - Converted masked package doc strings to reST format for better | |
1928 | epydoc support | |
1929 | - lots of doc string improvements and function hiding to better | |
1930 | reflect package's public contents. | |
1931 | ||
1932 | Restructured the installer packages slightly to help facilitate having | |
1933 | multiple versions of wxPython installed at the same time. See the | |
1934 | Migrarion Guide for more information. | |
1935 | ||
1936 | Applied patch from Pim Van Heuven that modifies 4 files: | |
1937 | - wxPython/demo/ListCtrl_edit.py (new demo) | |
1938 | - wxPython/demo/Main.py (include new demo in demo app) | |
1939 | - wxPython/wx/lib/mixins/listctrl.py (several improvements to | |
1940 | TextEditMixin) | |
1941 | - wxPython/wx/lib/wxpTag.py (some small fixes) | |
1942 | ||
1943 | Added (thanks to Kevin Ollivier!) wrappers for wx.WebKitCtrl for the | |
1944 | OSX build. Other platforms will raise an exception if you try to use | |
1945 | it. | |
1946 | ||
1947 | wxPython on OSX can now be built in Unicode mode, can support multiple | |
1948 | version installs, and comes with an uninstaller script. | |
1949 | ||
1950 | ||
1951 | ||
1952 | ||
1953 | ||
1954 | 2.5.2.8 | |
1955 | ------- | |
1956 | * 27-Aug-2004 | |
1957 | ||
1958 | Predominantly a bug-fix release. | |
1959 | ||
1960 | * Fixed fatal error due to improper wrapping of wx.FSFile. | |
1961 | ||
1962 | * Fixed return type of EditableListBox.GetListCtrl | |
1963 | ||
1964 | * Give generic tree and list controls a DoGetBestSize so they play | |
1965 | nicer with sizers when there is no minimal size. | |
1966 | ||
1967 | * Some tweaks in the demo and samples to correct layout, some | |
1968 | flicker problems, and namespace use. | |
1969 | ||
1970 | * Add wx.Image.ConvertAlphaToMask | |
1971 | ||
1972 | * Minor corrections in wx.lib.dialogs | |
1973 | ||
1974 | * wx.FileHistory constructor now accepts the documented 2nd | |
1975 | parameter. | |
1976 | ||
1977 | * Corrections for exceptions in the new ogl | |
1978 | ||
1979 | * Fixed XRCed to not use reparenting of windows to implement caching | |
1980 | of property panels, since Reparent on wxMac is not implemented. | |
1981 | ||
1982 | * Add support for wxTAB_TRAVERSAL to the XRC handler for | |
1983 | wxScrolledWindow. | |
1984 | ||
1985 | * Add support for all wxListBox styles to the XRC handler for | |
1986 | wxCheckListBox. | |
1987 | ||
1988 | * Fix for wx.Listbook.DeleteAllPages to really delete everything. | |
1989 | ||
1990 | * wxGTK2 now supports alpha blended bitmap drawing | |
1991 | ||
1992 | * Made wx.grid.Grid play nicer with sizers. | |
1993 | ||
1994 | * etc. | |
1995 | ||
1996 | ||
1997 | ||
1998 | ||
1999 | 2.5.2.7 | |
2000 | ------- | |
2001 | * 14-Aug-2004 | |
2002 | ||
2003 | wx.ADJUST_MINSIZE is now the default behaviour for window items in | |
2004 | sizers. This means that the item's GetMinSize and/or GetBestSize will | |
2005 | be called when calculating layout and the return value from that will | |
2006 | be used for the minimum size used by the sizer. The wx.FIXED_MINSIZE | |
2007 | flag was added that will cause the sizer to use the old behaviour in | |
2008 | that it will *not* call the window's methods to determine the new best | |
2009 | size, instead the minsize that the window had when added to the sizer | |
2010 | (or the size the window was created with) will always be used. Please | |
2011 | see the Sizers section in the Migration Guide for more details. | |
2012 | ||
2013 | Added new MaskedEditControl code from Will Sadkin. The modules are | |
2014 | now locaed in their own sub-package, wx.lib.masked. Demos updated. | |
2015 | ||
2016 | The changes that implemented the incompatible wx.DC methods in 2.5.1.5 | |
2017 | have been reverted. The wx.DC methods are now compatible with the 2.4 | |
2018 | implemetation. In addition a set of renamed methods have been added | |
2019 | that take wx.Point and/or wx.Size objects instead of individual | |
2020 | parameters. | |
2021 | ||
2022 | Added wx.lib.mixins.listctrl.TextEditMixin, a mixin class that allows | |
2023 | all columns of a wx.ListCtrl in report mode to be edited. | |
2024 | ||
2025 | Deprecated the wx.iewin module. | |
2026 | ||
2027 | Deprecated the wx.Sizer.AddWindow, AddSizer, AddSpacer methods as well | |
2028 | as their Insert* and Prepend* counterparts. | |
2029 | ||
2030 | Added a generic StaticBitmap class in wx.lib.statbmp for the same | |
2031 | reasons that stattext was created, so it could be mouse sensitive on | |
2032 | all platforms like normal windows. Also updated stattext.py and | |
2033 | buttons.py to handle attribute (font & colour) defaults and | |
2034 | inheritance the new way. If you have custom controls of your own you | |
2035 | should review stattxt.py or one of the others to see how it is to be | |
2036 | done. | |
2037 | ||
2038 | wx.InitAllImageHandlers is now an empty function that does nothing but | |
2039 | exist for backwards compatibility. The C++ version is now called | |
2040 | automatically when wxPython is initialized. Since all the handlers | |
2041 | are included in the wxWidgets shared library anyway, this imposes only | |
2042 | a very small amount of overhead and removes several unneccessary | |
2043 | problems. | |
2044 | ||
2045 | Replaced wx/lib/pubsub.py with a version that uses weak references to | |
2046 | track the subscribers, plus other fixes/additions. Thanks go to | |
2047 | Oliver Schoenborn and Robb Shecter. | |
2048 | ||
2049 | wxGTK now uses gtk_init_check so wxPython can raise an exception if | |
2050 | there is no DISPLAY available or other initializaion problem. | |
2051 | ||
2052 | wx.GetKeyState now has an implementation for wxGTK and is able to | |
2053 | detect the up/down or toggle state of modifier and toggle keys. | |
2054 | ||
2055 | The LC_NUMERIC locale is now reset back to "C" (compatibility) when | |
2056 | running on wxGTK to work around the fact that GTK requires the locale | |
2057 | to be set to the system settings but Python depends on LC_NUMERIC | |
2058 | remaining compatible with "C". | |
2059 | ||
2060 | Switched gizmos.TreeListCtrl to the newer version of the code from the | |
2061 | wxCode project. | |
2062 | ||
2063 | OGL is dead! LONG LIVE OGL! (Oops, sorry. A bit of my dramatic side | |
2064 | leaked out there...) The wx.ogl module has been deprecated in favor | |
2065 | of the new Python port of the OGL library located at wx.lib.ogl | |
2066 |