- Default location of wxFileConfig files has changed under Windows, you will
need to update your code if you access these files directly.
-- Return value of wxStandardPaths::GetUserDataDir() and similar functions has
- changed if the vendor name is defined as it now includes it by default under
- Windows and OS X. Call wxStandardPaths::UseAppInfo(AppInfo_AppName) to
- revert to behaviour compatible with 2.8 version.
-
- wxWindow::IsEnabled() now returns false if a window parent (and not
necessarily the window itself) is disabled, new function IsThisEnabled()
with the same behaviour as old IsEnabled() was added.
sizes of the sizer items to be in the same proportion as the items
proportions to return to the old behaviour.
+- Interpretation of font height in pixels parameter has changed in wxFont
+ ctor and SetPixelSize() in wxMSW: it is now used as character height and not
+ the total cell height. If you previously used negative height to explicitly
+ request character height matching, you may now change your code to use
+ positive value (passing negative height still works but is undocumented and
+ deprecated). If you used positive height before you should retest your code
+ to check if the changes correspond to your expectations. And if you do need
+ the old behaviour please contact us at wx-dev to let us know about it!
+
- wxWindow::Freeze/Thaw() are not virtual any more, if you overrode them in
your code you need to override DoFreeze/DoThaw() instead now.
most of the people expect but if you really relied on this overload adding
space in both directions you should change your code to use AddSpacer(x, x).
+- wxTextCtrl::LoadFile no longer sends a text update event.
+
+- wxXmlDocument::Save()'s indentstep argument's interpretation was fixed
+ to match the documentation: it now really is the number of spaces in
+ indentation instead of being its double. Its default value was changed
+ accordingly, to 2.
+
+- wxLOCALE_CONV_ENCODING flag has no effect now, catalogs are converted
+ regardless of whether the flag was specified or not. This only affects
+ legacy ANSI builds.
+
Changes in behaviour which may result in compilation errors
-----------------------------------------------------------
presence of an element in the list only. If you used it as Find(), simple do
use Find() instead.
+- wxLongLongFmtSpec is now a normal and not wide string so you will need to
+ change expressions of the form wxT("%") wxLongLongFmtSpec wxT("x") to
+ just "%" wxLongLongFmtSpec "x", i.e. simply remove wxT() from the strings you
+ concatenate with it.
+
Deprecated methods and their replacements
-----------------------------------------
the static box itself.
- wxMouseState::{Left,Middle,Right}Down() were renamed to XXXIsDown() for
consistency with wxMouseEvent and the old names were deprecated.
+- wxFont::SetNoAntiAliasing() was deprecated, it never really worked in most
+ ports and was always marked as "experimental" API. It will be replaced with
+ wxDC-level anti-aliasing control in the future.
+- wxValidator::SetBellOnError() incorrectly interpreted its argument (it
+ disabled the bell when it was true) and was replaced by SuppressBellOnError()
+ with more expected semantics.
+- wxPORTRAIT and wxLANDSCAPE are now elements of wxPrintOrientation enum and
+ wxPrintData::SetOrientation(int) takes wxPrintOrientation and not int.
Major new features in this release
- New propgrid library containing wxPropertyGrid and related classes.
+- new ribbon library for advanced toolbars.
+
- Many enhancements to wxDataViewCtrl.
- Event loops, timers and sockets can now be used in wxBase, without GUI.
2.9.1:
------
+INCOMPATIBLE CHANGE SINCE 2.9.0
+
+- wxStandardPaths doesn't use vendor name by default under MSW and OSX to
+ remain compatible with 2.8 behaviour but this makes it incompatible with
+ 2.9.0. Please use UseAppInfo(AppInfo_AppName | AppInfo_VendorName) explicitly
+ to use the vendor name in the paths returned by wxStandardPaths.
+
+- wxDataViewModel::GetAttr() is now const, as it should have been from the very
+ beginning. You will need to change it to be const in your derived model
+ class too if you override it.
+
+
All:
+- Added wxFileSystemWatcher (Bartosz Bekier, Google Summer of Code project).
- Added wxStd{Input,Output}Stream classes (Jonathan Liu).
- Include port number in host header in wxHTTP (Marcin 'Malcom' Malich).
- Added wxTempFile::Flush().
- Fix output buffer overflow in wxBase64Decode() (Eric W. Savage).
- Added bilinear image resizing algorithm to wxImage (bishop).
- Fix bug with position argument in wxImage::Size() (Byron Sorgdrager).
+- Added wxImage::ClearAlpha() (Javier Torres).
- Fix bug with parsing concatenated switches in wxCmdLineParser (Mike Funduc).
- Added wxMBConv::cMB2WC(wxCharBuffer) and cWC2MB(wxWCharBuffer) overloads.
- Added wxAny class; a modern, backwards-incompatible replacement for
wxVariant.
+- wxDateTime timezone functions now dynamic (no caching).
+- Added wxHttp::GetCookie and wxHttp::HasCookies (dodge).
+- Added support for unique volume names to wxFileName (Neno Ganchev).
+- Correct bugs when using wxTextInputStream with wxConvAuto (Leon Buikstra).
+- Don't crash when input is empty in wxFileConfig ctor (Lukasz Michalski).
+- Correct wxSocket::Peek() to not block (Anders Larsen).
+- Added IEC and SI units support to GetHumanReadableSize() (Julien Weinzorn).
+- Add convenient wxString::ToStd{String,Wstring}() helpers.
+- Added wxTranslations class to allow localization without changing locale.
+ It provides more flexible languages enumeration API as well.
+- Added wxResourceTranslationsLoader for loading translations from Windows
+ resources.
+- Added wxMessageQueue::Clear().
+- Added wxConfig::Read(float *) overload (Terry Farnham).
+- Always use decimal point (and not the current locale separator) in wxConfig.
+- Fix posting of binary data using wxHTTP (Catalin Raceanu).
+
+Unix:
+
+- Return signed return code from wxExecute(wxEXEC_SYNC).
+- Allow to use WX_APPNAME_DATA_DIR environment var to override the return value
+ of wxStandardPaths::GetDataDir().
All (GUI):
- Added support for showing bitmaps in wxButton.
+- Added wxInfoBar.
+- Added stretchable spaces support to wxToolBar.
- Added support for corner, row and column headers renderers to wxGrid.
- wxWindow::SetAutoLayout() now works for all windows, not just panels.
- Support wxListCtrl columns, items and image lists in XRC (Kinaou Hervé).
- Added wxEditableListBox XRC handler.
- Added multiple selection support to wxDirCtrl (Steve Lamerton).
- wxGrid: add possibility to prevent resizing of individual rows/columns.
+- wxGrid: allow changing the horizontal alignment of numeric cells.
- wxHTML: add support for table borders width (Laurent Humbertclaude).
+- wxHTML: add limited support for span elements styles (Nigel Paton).
- Added wxMouseEventsManager.
- Building OpenGL library is now enabled by default.
+- Fixed wxDataViewCtrl::Set{Foreground,Background}Colour().
+- Added wxDataViewRenderer::EnableEllipsize().
- Improve wxTreeCtrl::ScrollTo() in generic version (Raanan Barzel).
- Added wxFont::[Make]{Bold,Italic,Smaller,Larger} and Scale[d]() methods.
- Added wxDC::CopyAttributes() and use it in wxBufferedDC.
HasScrollbar() really check for the scrollbar existence.
- Added wxKeyEvent::IsKeyInCategory() (Jeff Tupper).
- Add A0 and A1 paper formats support (Martin Perktold).
-- Fixed wxOwnerDrawComboCtrl popup size on Mac (scrollbars were always shown).
-- Fixed wxOwnerDrawComboCtrl focus problem on Mac (first-time popup
+- Fixed wxComboCtrl popup size on Mac (scrollbars were always shown).
+- Fixed wxComboCtrl focus problem on Mac (first-time popup
dismissed immediately as text control grabbed the focus).
-- wxPropertyGrid: added wxPG_NO_INTERNAL_BORDER, wxPG_EX_NO_TOOLBAR_DIVIDER
- and wxPG_EX_TOOLBAR_SEPARATOR styles for finer control over borders.
- Borders around property grid are now native for consistency.
+- wxPropertyGrid: added wxPG_EX_MULTIPLE_SELECTION.
+- wxPropertyGrid: added functions for editing property labels.
+- wxPropertyGrid: many fixes to property validation failure behavior. Added
+ new flags: wxPG_VFB_SHOW_MESSAGEBOX and wxPG_VFB_SHOW_MESSAGE_ON_STATUSBAR.
+- wxPropertyGrid: Added wxPropertyGrid::DedicateKey().
+- wxPropertyGridManager: added wxPG_NO_INTERNAL_BORDER,
+ wxPG_EX_NO_TOOLBAR_DIVIDER and wxPG_EX_TOOLBAR_SEPARATOR styles for finer
+ control over borders. Borders around property grid are now native for
+ consistency.
+- Added wxPropertyGridManager::ShowHeader().
- Added wxXmlResource::LoadObjectRecursively().
- Added wxColour::Set/GetRGB() and Set/GetRGBA() methods (Marcel Haß).
- wxRTC: added wxRICHTEXT_HANDLER_USE_CSS flag for HTML handler to use CSS
where possible.
- wxRTC: corrected centring and right-justification spacing.
+- wxRTC: fixed style selection reset after editing a style.
+- wxRTC: can now edit line spacing in .1 increments from 1 to 2.
+- wxRTC: added PaintAboveContent function for drawing on top of text.
+- Added wxBORDER_THEME to XRC.
+- wxGraphicsContext is now enabled by default if supported by the platform.
+- Fix building with using system libpng 1.4 (Volker Grabsch).
+- Add wxComboBox::Popup() and Dismiss() methods (Igor Korot).
+- Added wxTreeCtrl::SelectChildren() (Nikolay Tiushkov).
+- Show pages icons in window list menu in wxAuiNotebook (Ronny Krüger).
+- Add "initial selection" parameter to wxGetSingleChoice() (Nikolay Tiushkov).
+- Implement wxDocument::Revert() (troelsk).
+- Allow overriding print preview frame creation in docview (troelsk).
+- Added support for gradient stops in wxGraphicsContext (Kit Bishop).
+- Added wxTransparentColour.
+- Added wxToolBar::GetToolByPos().
+- Added wxProgressDialog::Was{Cancelled,Skipped}() (Julien Weinzorn).
+- Added wxTreeCtrl::{Clear,Set}FocusedItem() (Nikolay Tiushkov).
+- Added "filter changed" event to wxFileCtrl (Bill Jones).
+- wxAUI: update floating window position and not only size on resize (MacGyver).
+- Added wxComboCtrl::SetTextCtrlStyle().
GTK:
- wxRadioBox constructor uses default consistent with other ports now.
+- Implement wxMask copy ctor.
+- Partially implemented wxTextCtrl::GetStyle() (Igor Romanov).
- Corrected themed border display.
+- Fix wxClipboard::GetData() for asymmetric wxDataObjects (Timothy Lee).
Mac:
+- Implement wxWindow::ShowWithEffect() in wxOSX/Cocoa.
- Correct min/max pages display in the print dialog (Auria).
+- Fix wxDataViewColumn::GetWidth() in Cocoa (Neno Ganchev).
MSW:
- Worked around child window and caret positioning bug (in Windows) when using
wxBORDER_THEME in a container window.
- Suppressed spurious character event for decimal key in numeric keypad.
+- Allow to not create wxPaintDC in EVT_PAINT handler.
+- Fix sending of wxEVT_COMMAND_LIST_COL_DRAGGING events in wxListCtrl.
+- Allow putting the UAC symbol on buttons (Chris Spencer).
+- Fix wxTaskBarIcon for older Windows systems (Daniel Wyatt).
+- Fixed wxOwnerDrawnComboBox keyboard handling: drop-down is no longer
+ displayed when arrow key is pressed (without Alt).
+- In some rare cases wxOwnerDrawnComboBox drop-down animation could display
+ as garbage. This has now been greatly reduced (mcben).
+- Fixed wxComboCtrl::SetButtonPosition() on Vista/Win7.
i18n:
- Cleaned up wxURI and made it Unicode-friendly.
- Add support for wxExecute(wxEXEC_ASYNC) in wxBase (Lukasz Michalski).
- Added wxXLocale class and xlocale-like functions using it.
-- Allow loading message catalogs from wxFileSystem (Axel Gembe).
- Added wxMessageQueue class for inter-thread communications
- Use UTF-8 for Unicode data in wxIPC classes (Anders Larsen)
- Added support for user-defined types to wxConfig (Marcin Wojdyr).
- wxImage handlers can now support multiple extensions (Ivan Krestinin).
- Added wxFileName::StripExtension() (troelsk).
- Added wxLOCALE_DATE/TIME_FMT support to wxLocale::GetInfo().
+- Store page setup data directly in wxDocManager (troelsk).
All (Unix):
- Added wxGenericStaticBitmap suitable for display of large bitmaps.
- Support wxListCtrl::GetViewRect() in report view too.
- Implement wxListCtrl::GetSubItemRect() in generic version (David Barnard).
+- Add column parameter to wxListCtrl::GetItemText() (Allann Jones).
- Added wxVListBox::GetItemRect() (Javier Urien).
- Show busy cursor in wxLaunchDefaultBrowser and add wxBROWSER_NOBUSYCURSOR.
- Added wxFlexGridSizer::Is{Row,Col}Growable() (Marcin Wojdyr).
new CheckFit() method for more information.
- Allow reading GIFs with incorrectly specified animation size.
- Return number of frames in animated GIF from wxGIFHandler::GetImageCount().
+- Improved anchors handling in wxHTML.
wxGTK: