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