X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ba938c3d005ad1ecab95b95c5f64e428067bc75e..119af81b23b9e57abc1e4d7978d1f3730982cf29:/wxPython/docs/CHANGES.txt diff --git a/wxPython/docs/CHANGES.txt b/wxPython/docs/CHANGES.txt index af1127d3e8..743840162e 100644 --- a/wxPython/docs/CHANGES.txt +++ b/wxPython/docs/CHANGES.txt @@ -1,21 +1,361 @@ Recent Changes for wxPython ===================================================================== -2.5.1.6 +2.5.3.0 +------- + +wxMac focus and border refreshes corrected. + +Updated internal PNG library. + +wxMac fix for metal appearance on wx.ToolBar. + +wx.grid.Grid fix allowing DoGetBestSize to be called before CreateGrid +(which means that a min size doesn't need to be specified.) + +wxMac fix for not sending a native click to a control if it is not +enabled (does an enable itself) + +Added wx.lib.ogl.DrawnShape, and fixed various little bugs in the new +OGL. + +Added support to XRC and XRCed for the 3-state checkbox flags and also +for wx.ToggleButton. Updated the generic window styles supported by +XRCed. + +It is now possible to create "stock" buttons. Basically this means +that you only have to provide one of the stock IDs (and either an +empty label or a label that matches the stock label) when creating the +button and wxWidgets will choose the stock label to go with it +automatically. Additionally on the platforms that have a native +concept of a stock button (currently only GTK2) then the native stock +button will be used. For example, the following will result in a +button with "Cancel" as the label and an accelerator on the "C", and +if run on wxGTK2 then there will also be an image of a red X:: + + b = wx.Button(parent, wx.ID_CANCEL) + + +Added wx.lib.ticker.Ticker class from Chris Mellon. + +Fix some incorrect clipping regions in wxSTC on wxGTK. + +Added wrapper for wx.grid.Grid.GetOrCreateCellAttr. + +Removed my copy of distutils from the wxPython source tree. Now that +I am no longer doing builds on Python 2.1 the newest distutils is no +longer needed. (There is still one small bug in Python 2.2 distutils +on win32, but it is easily worked around.) This sovles the problem of +incorrect builds on some systems where the system installed distutils +has been patched to behave slightly differently, for example SuSE on +x86_64 or Chandler's build. + +Updated to SWIG 1.3.22 (plus my patch.) See wxPython/SWIG/README.txt +in the source tree if you need to use SWIG when building your own copy +of wxPython, or other extension modules that need to integrate with +the wxPython modules. + +Added wx.Frame.RequestUserAttention which, if the platform suports it, +will do something (such as flash the task bar item) to suggest to the +user that they should look at that window. + +"Fixed" wx.grid.Grid.SetDefaultEditor and SetDefaultRenderer by making +them register the editor or renderer for the "string" data type. + +Added depth param to wx.Image.ConvertToBitmap. + +Extended the wx.calendar.CalendarCtrl class with methods that get/set +a Python datetime or date object. (These will only work with Python +2.3+) The methods are PySetDate, PyGetDate, PySetLowerDateLimit, +PySetUpperDateLimit, PySetDateRange, PyGetLowerDateLimit, and +PyGetUpperDateLimit. Also, CalendarEvent was extended with PySetDate +and PyGetDate methods. + +wxMSW: SetBackgroundColour on a wx.Choice or a wx.ComboBox will now +also set the colour of the dropdown. + +wxMac: MessageDialog now supports wx.NO_DEFAULT style + +wxMSW: added AssociateHandle and DissociateHandle to wx.Window + +wxMac: fix for toolbar tooltips + +wx.Sizer.Show (and Hide) now take an optional parameter specifying if +the item to be shown should be searched for recursivly in subsizers, +and return a boolean value indicating if the item was found. + +wxMSW: fixed MaximizeEvent generation in wx.Frame + +wxMSW: fixed sending duplicate EVT_COMBOBOX events + +Smoother time estimation updates in wx.ProgressDialog (patch 992813) + +Made wx.Listbook events more consistent with wx.Notebook ones (patch +1001271) + +Fixed rounding errors in variable status bar panes widths computation +(patch 1030021) + +Added possibility to specify printer bin (patch 910272) + +wxMSW: fixed wx.ListCtrl's SetWindowStyleFlag() to not remove +WS_VISIBLE; also refresh the control automatically (closes bug +1019440) + +Added wx.Choicebook, yet another notebook-like control. + +wxMSW: Make radiobutton tab behaviour the same on MSW as in standard +MSW app, i.e. tab into the activated, not necessarily the first radio +button. + +Added limited support for wxEventLoop (you can't derive from a +wx.PyEventLoop version yet...) Updated and moved the sample showing +how to replace the MainLoop to samples/mainloop/mainloop.py. + +The C++ xrc lib has been moved out of contrib and into the core, so it +is always built by default. wxPython's build has also changed +accordingly and will build the xrc module as part of the core set of +modules built by default. If you were axplicitly using BUILD_XRC then +it will no longer be recognized as a build option, otherwise you +should notice no difference. + +wxMac: Fixed radio toolbar buttons to correctly untoggle the others +when a new one is selected. + +wxMac: Fixed GetLineLength and GetLineText for MLTE text controls + +wxMac: wx.TaskBarIcon is implemented by allowing you to change the +app's icon on the Dock and also specifying a menu that should be +merged with the normal dock popup menu. See the MigrationGuide for +more details and a warning. + +Added wx.TopLevelWindow.IsActive() which tells you if the frame or +dialog is or containts the active window with the keyboard focus. + +Added ability to create a font based on pixel size rather than point +size via the FontFromPixelSize constructor. + +Updated the Scintilla used by StyledTextCtrl to version 1.61 + +Improved image HitTest for TreeListCtrl. + +Added wx.App.IsMainLoopRunning. + +wxGTK: Make wxComboBox spit out a bit fewer surplus events when +holding down the mouse button. + +wxGTK: Enable key based navigation through notebook tabs as in the +native control with Left and right keys. Support for vetoing. + +FloatCanvas updates from Chris Barker + +PyPlot updates from Gordon Williams: + - Added bar graph demo + - Modified line end shape from round to square. + - Removed FloatDCWrapper for conversion to ints and ints in + arguments + - Imported modules given leading underscore to name. + - Added Cursor Line Tracking and User Point Labels. + - Demo for Cursor Line Tracking and Point Labels. + - Size of plot preview frame adjusted to show page better. + - Added helper functions PositionUserToScreen and + PositionScreenToUser in PlotCanvas. + - Added functions GetClosestPoints (all curves) and GetClosestPoint + (only closest curve) can be in either user coords or screen + coords. + +MaskedEdit updates from Will Sadkin: + - Added '*' mask char that means "all ansii chars" (ords 32-255) + - Added proper unicode support to masked controls and wx.tools.dbg + - Fixed two reported missing import bugs introduced by package + creation + - Converted masked package doc strings to reST format for better + epydoc support + - lots of doc string improvements and function hiding to better + reflect package's public contents. + +Restructured the installer packages slightly to help facilitate having +multiple versions of wxPython installed at the same time. See the +Migrarion Guide for more information. + +Applied patch from Pim Van Heuven that modifies 4 files: + - wxPython/demo/ListCtrl_edit.py (new demo) + - wxPython/demo/Main.py (include new demo in demo app) + - wxPython/wx/lib/mixins/listctrl.py (several improvements to + TextEditMixin) + - wxPython/wx/lib/wxpTag.py (some small fixes) + +Added (thanks to Kevin Ollivier!) wrappers for wx.WebKitCtrl for the +OSX build. Other platforms will raise an exception if you try to use +it. + +wxPython on OSX can now be built in Unicode mode, can support multiple +version installs, and comes with an uninstaller script. + + + + + +2.5.2.8 +------- + +Predominantly a bug-fix release. + + * Fixed fatal error due to improper wrapping of wx.FSFile. + + * Fixed return type of EditableListBox.GetListCtrl + + * Give generic tree and list controls a DoGetBestSize so they play + nicer with sizers when there is no minimal size. + + * Some tweaks in the demo and samples to correct layout, some + flicker problems, and namespace use. + + * Add wx.Image.ConvertAlphaToMask + + * Minor corrections in wx.lib.dialogs + + * wx.FileHistory constructor now accepts the documented 2nd + parameter. + + * Corrections for exceptions in the new ogl + + * Fixed XRCed to not use reparenting of windows to implement caching + of property panels, since Reparent on wxMac is not implemented. + + * Add support for wxTAB_TRAVERSAL to the XRC handler for + wxScrolledWindow. + + * Add support for all wxListBox styles to the XRC handler for + wxCheckListBox. + + * Fix for wx.Listbook.DeleteAllPages to really delete everything. + + * wxGTK2 now supports alpha blended bitmap drawing + + * Made wx.grid.Grid play nicer with sizers. + + * etc. + + + + +2.5.2.7 ------- wx.ADJUST_MINSIZE is now the default behaviour for window items in -sizers. This means that the item's GetAdjustedBestSize will be called -when calculating layout and the return value from that will be used -for the minimum size. Added wx.FIXED_MINSIZE flag for when you would -like the old behavior but you should only need it when your desired -size is smaller than the item's GetBestSize. When a window is added -to a sizer it's initial size, if any, is set as the window's minimal -size using SetSizeHints if there isn't already a minimal size. +sizers. This means that the item's GetMinSize and/or GetBestSize will +be called when calculating layout and the return value from that will +be used for the minimum size used by the sizer. The wx.FIXED_MINSIZE +flag was added that will cause the sizer to use the old behaviour in +that it will *not* call the window's methods to determine the new best +size, instead the minsize that the window had when added to the sizer +(or the size the window was created with) will always be used. Please +see the Sizers section in the Migration Guide for more details. + +Added new MaskedEditControl code from Will Sadkin. The modules are +now locaed in their own sub-package, wx.lib.masked. Demos updated. + +The changes that implemented the incompatible wx.DC methods in 2.5.1.5 +have been reverted. The wx.DC methods are now compatible with the 2.4 +implemetation. In addition a set of renamed methods have been added +that take wx.Point and/or wx.Size objects instead of individual +parameters. + +Added wx.lib.mixins.listctrl.TextEditMixin, a mixin class that allows +all columns of a wx.ListCtrl in report mode to be edited. + +Deprecated the wx.iewin module. + +Deprecated the wx.Sizer.AddWindow, AddSizer, AddSpacer methods as well +as their Insert* and Prepend* counterparts. + +Added a generic StaticBitmap class in wx.lib.statbmp for the same +reasons that stattext was created, so it could be mouse sensitive on +all platforms like normal windows. Also updated stattext.py and +buttons.py to handle attribute (font & colour) defaults and +inheritance the new way. If you have custom controls of your own you +should review stattxt.py or one of the others to see how it is to be +done. + +wx.InitAllImageHandlers is now an empty function that does nothing but +exist for backwards compatibility. The C++ version is now called +automatically when wxPython is initialized. Since all the handlers +are included in the wxWidgets shared library anyway, this imposes only +a very small amount of overhead and removes several unneccessary +problems. + +Replaced wx/lib/pubsub.py with a version that uses weak references to +track the subscribers, plus other fixes/additions. Thanks go to +Oliver Schoenborn and Robb Shecter. + +wxGTK now uses gtk_init_check so wxPython can raise an exception if +there is no DISPLAY available or other initializaion problem. + +wx.GetKeyState now has an implementation for wxGTK and is able to +detect the up/down or toggle state of modifier and toggle keys. + +The LC_NUMERIC locale is now reset back to "C" (compatibility) when +running on wxGTK to work around the fact that GTK requires the locale +to be set to the system settings but Python depends on LC_NUMERIC +remaining compatible with "C". + +Switched gizmos.TreeListCtrl to the newer version of the code from the +wxCode project. + +OGL is dead! LONG LIVE OGL! (Oops, sorry. A bit of my dramatic side +leaked out there...) The wx.ogl module has been deprecated in favor +of the new Python port of the OGL library located at wx.lib.ogl +contributed by Pierre Hjälm. This will hopefully greatly extend the +life of OGL within wxPython by making it more easily maintainable and +less prone to getting rusty as there seems to be less and less +interest in maintaining the C++ version. At this point there are just +a couple minor known compatibility differences, please see the +MigrationGuide_ file for details. + +.. _MigrationGuide: MigrationGuide.html + +EVT_STC_POSCHANGED has been removed as it has been deprecated in +Scintilla for several releases now. + +All the Window and GDI (pen, bitmap, etc.) class constructors and also +many toplevel functions and static methods will now check that a +wx.App object has already been created and will raise a +wx.PyNoAppError exception if not. + +Added more default args as needed to allow most window types to be +constructed with only the parent window arg. In some cases other args +may be required for normal operation, but they can usually be set +after construction. + +Removed the deprecated ErrorDialogs and PythonBitmaps modules. If you +were using these in your apps then please join wxPython-dev and assist +with a more modern reimplementation. + +Added a new version (0.8.3) of FloatCanvas from Chris Barker. It's now +in a subpackage of wx.lib. + +It is now possible to change the tab traversal order of controls on a +panel or dialog. For details see the new MoveAfterInTabOrder and +MoveBeforeInTabOrder methods of wx.Window. + +Applied (and heavily modified) a patch from Eugene + that allows the sample modules in the demo to be +edited and reloaded, all from within the demo. You can switch back +and forth between the default and your edited version, and any errors +ocurring upon the reload are reported on the Demo tab. + +Added a menu item in the demo that will open a PyShell window that has +the app and demo frame preloaded in the namespace. This is another +good way to explore and play with the objects in the currently running +sample. For example, load the Button sample and then do the following +in the PyShell:: -Added some convenience methods to wx.Bitmap: SetSize, GetSize, and -wx.EmptyBitmap can be called with a wx.Size (or a 2-element sequence) -object too. Similar changes were done for wx.Image as well. + >>> b = frame.demoPage.GetChildren()[0] + >>> for x in range(0, 500, 10): + ... b.Move((x, 50)) + ... app.Yield(True) + ... wx.MilliSleep(10) @@ -73,7 +413,7 @@ installing them also on my main Mandrake 9.2 box. There are some big changes in the OS X disk image. The actual Installer package now *only* installs the wxMac dynlibs, wxPython -extension modules and Python pacakges, and also the command-line tool +extension modules and Python packages, and also the command-line tool scripts. The remaining items (demo, samples, and application bundles for the Demo, PyCrust and XRCed) are now top-level items in the disk image (.dmg file) that users can just drag and drop to wherever they @@ -1245,7 +1585,7 @@ Added new HTML printing classes. Added wxWindow.GetHandle -Apparently wxMouseEvent.Position has been depreciated in wxWindows as +Apparently wxMouseEvent.Position has been deprecated in wxWindows as it is no longer available by default. You can use GetPositionTuple (returning a tuple with x,y) instead, or GetPosition (returning a wxPoint.) @@ -1327,7 +1667,7 @@ wxGTK. Added them back in since the methods exist now. Wrapped the wxHtmlHelpController and related classes. Wrapped the C++ versions of wxSizer and friends. The Python-only -versions are still in the library, but depreciated. (You will get a +versions are still in the library, but deprecated. (You will get a warning message if you try to use them, but the warning can be disabled.) The usage of the C++ versions is slightly different, and the functionality of wxBorderSizer is now part of wxBoxSizer. I have @@ -1487,7 +1827,7 @@ Added wxGrid.GetCells Added wxSystemSettings static methods as functions with names like wxSystemSettings_GetSystemColour. -Removed wxPyMenu since using menu callbacks have been depreciated in +Removed wxPyMenu since using menu callbacks have been deprecated in wxWindows. Use wxMenu and events instead. Added alternate wxBitmap constructor (for MSW only) as