wxString, in many cases code using it won't compile any more and NULL
should be replaced with an empty string.
+- Functions returning "const wxChar *" were changed as well. Mostly they now
+ return wxString which is then transparently convertible to either "const char
+ *" or "const wchar_t *" but in some cases, notably wxDateTime::ParseXXX(),
+ the returned string could be NULL and so a separate helper class is used. If
+ you obtain compilation errors because of this, you can always correct them by
+ explicitly assigning the function return value to a variable of wanted type.
+ A slightly more intrusive but better solution is to use ParseXXX() version
+ with wxString::const_iterator output parameter which simply returns bool to
+ indicate the parsing success.
- Some structure fields which used to be of type "const wxChar *" (such as
wxCmdLineEntryDesc::shortName, longName and description fields) are now of
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/Thaw() instead now.
+ your code you need to override DoFreeze/DoThaw() instead now.
- wxCalendarCtrl has native implementation in wxGTK, but it has less features
than the generic one. The native implementation is used by default, but you
GetSizeAvailableForScrollTarget() method, please see its documentation for
more details.
+- Processing of pending events now requires a running event loop.
+ Thus initialization code (e.g. showing a dialog) previously done in wxApp::OnRun()
+ or equivalent function should now be done into wxApp::OnEventLoopEnter().
+ See wxApp::OnEventLoopEnter() and wxApp::OnEventLoopExit() docs for more info.
+
+- wxLoadFileSelector() now allows the user to select existing files only.
+
+- Erase background events are now not generated at all when background style is
+ changed. See the updated wxWindow::SetBackgroundStyle() description in the
+ manual for more details.
+
+- wxTreeCtrl::GetSelection now asserts if the tree has the wxTR_MULTIPLE style.
+ Instead use GetSelections() for multiple items; or if you want only the
+ single item last touched, the new wxTreeCtrl::GetFocusedItem.
+
+- Custom log targets should be updated to override wxLog::DoLogRecord() method
+ instead of DoLog() or DoLogString() and must be updated if they call the base
+ class versions of these functions as this won't work any more; please see the
+ documentation of wxLog for more information.
+
+- Confusing wxGridSizer(int cols, int vgap = 0, int hgap = 0) ctor which was
+ easy to mistake for wxGridSizer(int rows, int cols) overload was removed, you
+ will need to specify both vertical and horizontal gap if you want to use this
+ overload or specify both rows and columns and the gap otherwise. Use of the
+ new constructors taking wxSize for the gap argument is preferred. The same
+ applies to wxFlexGridSizer as well.
+
+- wxBoxSizer::AddSpacer(x) now adds space in the direction of the sizer only
+ and not in both this and the orthogonal directions. This behaviour is what
+ 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
-----------------------------------------------------------
- wxEVT_GRID_CELL_CHANGE event renamed to wxEVT_GRID_CELL_CHANGED and shouldn't
be vetoed any more, use the new wxEVT_GRID_CELL_CHANGING event to do it.
-- Now wxWidgets at startup in debug builds checks if all wxEvent-derived classes
- correctly implement the Clone() function, logging a warning if they don't.
- A correct implementation for MyCustomEventClass::Clone() is simply:
- virtual wxEvent *Clone() const { return new MyCustomEventClass(*this); }
+- wxListCtrlCompare function used with wxListCtrl::SortItems() must now declare
+ its third parameter as wxIntPtr and not long (this allows passing pointers
+ to it under 64 bit platforms too).
- Global wxPendingEvents and wxPendingEventsLocker objects were removed.
You may use wxEventLoopBase::SuspendProcessingOfPendingEvents instead of
locking wxPendingEventsLocker now.
+- wxBitmapButton::GetBitmapXXX() overloads returning non-const wxBitmap
+ references have been removed, modifying the returned bitmaps never worked and
+ now results in compile-time error.
+
+- wxLogXXX() are now macros, not functions. Because of this calling them with
+ an explicit scope resolution operator ("::wxLogError()") doesn't work any
+ longer, just remove it. Also notice that using them inside an "if" statement
+ without enclosing parentheses results in warnings from g++ with -Wparentheses,
+ add parentheses around the if statement body to work around it.
+
+- wxList::Member() now returns book and not a pointer/iterator. This shouldn't
+ require any changes as it was always meant to be used for checking for the
+ 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
-----------------------------------------
were deprecated in favour of wxFileName methods. See docs for more info.
- wxEvtHandler::TryValidator/Parent() are deprecated, override the new and
documented TryBefore/After() methods if you used to override these ones.
+- wxGetMultipleChoices() is deprecated, use wxGetSelectedChoices() which has
+ the same signature but returns -1 and not 0 if the dialog was cancelled.
+- building the windows which are placed inside wxStaticBoxes as siblings of the
+ wxStaticBox is still allowed but it's deprecated as it gives some problems
+ on some ports (e.g. wxGTK).
+ You should now create windows placed inside a wxStaticBox as children of
+ 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.
was added.
+2.9.2:
+------
+
+All (GUI):
+
+- Added wxRichMessageDialog (Rickard Westerlund, GSoC 2010 project).
+- Added wxCommandLinkButton (Rickard Westerlund, GSoC 2010 project).
+- Added wxUIActionSimulator (Steven Lamerton, GSoC 2010 project).
+- wxAUI: support auto-orientable toolbars (wsu).
+- Added wxDataViewCtrl::Set/GetCurrentItem().
+- wxHTML: render in RTL order inside RTL window (Richard Bullington-McGuire).
+- wxRibbon: added EVT_RIBBONGALLERY_CLICKED event (John Roberts).
+- Add support for CP-866 encoding to wxEncodingConverter (madnut).
+- Consistency fixes for keyboard events across all major ports.
+- Added EVT_RIBBONBAR_TAB_LEFT_DCLICK event (snowleopard).
+
+MSW:
+
+- Native implementation of wxHyperlinkCtrl and wxProgressDialog under modern
+ Windows versions (Rickard Westerlund, GSoC 2010 project).
+- Fix Cygwin 1.7 build (David Gangola).
+- Allow using wxDC::DrawText() with multiline texts.
+- Fix wxBitmapButton best size determination broken in 2.9.1.
+
+
+
+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().
+- Added support for wxLongLong and wxULongLong in wxVariant.
+- Added wxVector::swap().
+- Many wxLog improvements:
+ * wxLogXXX() functions are now thread-safe.
+ * Log levels can now be set independently for different log components.
+ * wxLog::DoLogRecord() has access to the location of the log message
+ (file, line and function name) and id of the thread which generated it.
+ * SetThreadActiveTarget() allows to set up thread-specific log targets.
+- 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 support for wxFileCtrl to XRC (Kinaou Hervé).
+- Added ownfg, ownbg and ownfont tags to XRC.
+- 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.
+- Added wxTextWrapper helper class useful for wrapping lines of text.
+- Added EVT_DATAVIEW_CACHE_HINT() event (Trigve).
+- Added wxLB_NO_SB style (implemented for MSW only; Dario Senic).
+- Added long version field to wxAboutDialogInfo (Jeff Tupper).
+- Added wxWindow::CanScroll() behaving like the old HasScrollbar() and made
+ HasScrollbar() really check for the scrollbar existence.
+- Added wxKeyEvent::IsKeyInCategory() (Jeff Tupper).
+- Add A0 and A1 paper formats support (Martin Perktold).
+- 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_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().
+- wxPropertyGrid: wxArrayStringProperty now uses wxEditableListBox.
+- wxPropertyGrid: Added "Delimiter" attribute for wxArrayStringProperty.
+- 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().
+- Also update client data in wxRearrangeList control (John Roberts).
+- Generate more click events in wxGrid when using native header (John Roberts).
+
+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:
+
+- Translate wxMessageDialog labels to the language of the current locale.
+- Allow changing the height of wxChoice and wxComboBox.
+- Update CRT environment block in wxSetEnv() too.
+- Fix wxMDIChildFrame::SetSize() (Lars Rosenboom).
+- Fix wxTreeCtrl::UnselectItem() in single selection controls.
+- Allow customizing wxStandardPaths logic for program directory determination.
+- Use time in wxDateTime <-> SYSTEMTIME conversion (troelsk).
+- Setting colours for wxSpinCtrl now works.
+- 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:
+
+- Korean translations added (Sungkee Jung).
+- Romanian translations added (Manuel Ciosici).
+
+
2.9.0
-----
- Added (experimental) IPv6 support to wxSocket (Arcen).
- Cleaned up wxURI and made it Unicode-friendly.
-- Add support for wxExecute(wxEXEC_ASYNC) in wxBase (Lukasz Michalski)
+- 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).
- Implemented wxMemoryInputStream::CanRead().
- Implemented wxMemoryFSHandler::FindFirst/Next().
- Added wxEventLoop::DispatchTimeout().
+- Added wxZlibStream::SetDictionary() (Axel Gembe).
- Added wxEXEC_BLOCK flag (Hank Schultz).
- Add support for wxStream-derived classes to wxRTTI (Stas Sergeev).
- Added wxStreamBuffer::Truncate() (Stas Sergeev).
- Added wxStrnlen() for safe computation of string length.
- Added wxImage::Clear() (troelsk).
- Added wxLog::Log().
+- Added wxProtocolLog and use it in wxFTP.
- Added wxXmlResource::GetResourceNode().
+- Optimize wxString::Replace() to use an O(N) algorithm (Kuang-che Wu).
+- Added support of %l format specifier to wxDateTime::ParseFormat().
+- 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):
- Also added wxCANCEL_DEFAULT to wxMessageDialog.
- Allow copying text in the log dialogs.
- Added multisample (anti-aliasing) support to wxGLCanvas (Olivier Playez).
-- Added wxCAL_SHOW_WEEK_NUMBERS wxCalendarCtrl style (Sören Meyer-Eppler).
+- Added wxEVT_COMMAND_COMBOBOX_DROPDOWN/CLOSEUP events (Igor Korot).
+- Added wxCAL_SHOW_WEEK_NUMBERS wxCalendarCtrl style (Sören Meyer-Eppler).
- Initialize wx{Client,Paint,Window}DC with fonts/colours of its window.
- Added wxNativeContainerWindow to allow embedding wx into native windows.
- Added custom controls support to wxFileDialog (Diaa Sami and Marcin Wojdyr).
- Added support for labels for toolbar controls (Vince Harron).
- Added wxMessageDialog::SetMessage() and SetExtendedMessage().
- Added wxListCtrl::Set/GetColumnsOrder() (Yury Voronov).
+- Added wxTextEntry::SetHint().
- Made wxLogWindow thread-safe (Barbara Maren Winkler).
- Added wxWindow::AlwaysShowScrollbars() (Julian Scheid).
- Added wxMouseEvent::GetClickCount() (Julian Scheid).
- Added wxEventBlocker class (Francesco Montorsi).
- Added wxFile/DirPickerCtrl::Get/SetFile/DirName() (Francesco Montorsi).
- Added wxSizerFlags::Top() and Bottom().
-- Slovak translation added.
- Fixed tab-related drawing and hit-testing bugs in wxRichTextCtrl.
- Implemented background colour in wxRichTextCtrl.
- Fixed crashes in helpview when opening a file.
- 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).
Added also wxEventLoopBase::IsYielding to help cure re-entrancy problems with Yield().
- Render <th> element contents in bold in wxHTML.
- Added wxGrid::{Set,Get}{Row,Col}Sizes() methods (Andrey Putrin).
+- Add support for wxSP_WRAP in the generic version of wxSpinCtrlDouble.
+- Add alignment flags support to wxSpinCtrl[Double] (Andrew Radke).
+- Added wxGetSelectedChoices() replacing wxGetMultipleChoices() (Kolya Kosenko).
+- Check whether document fits into page horizontally in wxHtmlPrintout, see the
+ 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:
wxMSW:
+- Fix many problems with selection in multi-selection wxTreeCtrl (Jonathan Liu).
- Fixed infinite loop in wxThread::Wait() in console applications.
- Return the restored window size from GetSize() when window is minimized.
- wxCheckListBox now looks more native, especially under XP (Marcin Malich).
preview inaccuracies on Windows; on other platforms, native preview
should be used.
- Implement wxFileName::SetTimes() for directories (Steve Lamerton).
-- Added wxToolTip::SetMaxWidth() and improved default wrapping (Joachim Hönig).
+- Added wxToolTip::SetMaxWidth() and improved default wrapping (Joachim Hönig).
- Changed default toolbar bitmaps size from obsolete 16x15 to 24x24 used
by modern apps.
- Ellipsize long strings in wxStatusBar (Francesco Montorsi)
+- Fix spurious repaint when changing tooltip text (Jonathan Liu).
+- Fix wxSP_WRAP and wxSP_ARROW_KEYS in wxSpinCtrlDouble (Andrew Radke).
wxX11:
- Implement wxBitmap ctor from XBM data.
+i18n:
+-----
+
+- Slovak translations added (Ivan Masár).
+
+
+2.8.10:
+-------
+
+All:
+
+- wxHashMap::insert() doesn't update the value if it didn't insert the element
+ any more (Marcin Malich).
+- Correct bug in wxTimeSpan::Format() for negative spans.
+- Correct several bugs in wxList using end() iterators (Suzumizaki-Kimitaka).
+- Added Vietnamese translation (Tran Ngoc Quan).
+- Updated Slovenian translation (Martin Srebotnjak).
+- Corrected Serbian locale name (Cody Precord).
+- Fix wxURL::GetInputStream() for URLs with special characters in credentials
+ (Robert Wruck).
+- Fix wxURI::GetUser() for URIs without password.
+- Correct wxDateTime DST computation for 2006 and later (Christopher Barker).
+
+All (GUI):
+
+- wxRTC: fixed input that uses Alt on Mac OS X, for example Polish Pro input.
+ Also fixed a bug whereby e.g. Croatian keys didn't work, by moving more code
+ to key down handler.
+- wxRTC: fixed a problem with HTML list generation.
+- wxRTC: no longer deletes a character when content is selected before
+ pressing Delete.
+- wxRTC: fixed inability to select no superscript and no subscript in
+ formatting dialog.
+- wxRTC: fixed centering and right-justification when combined with left
+ indentation.
+- wxRTC: fixed lack of right margin when centering or right-justifying.
+- wxRTC: fixed wrong descent when wrapping lines with different font sizes.
+- wxRTC: fixed wrapping problem for long lines.
+- wxRTC: all buffer margins now respected.
+- wxRTC: Added wxRE_CENTRE_CARET to centre the caret line vertically.
+- Fixed wxHTML's pagebreaks computation in tables (D.J.Stauffer).
+- Fixed wxHtmlWindow::SelectionToText() to correctly insert newlines after
+ single-cell paragraphs.
+- Fixed wxHTML's line breaks handling in <pre> blocks broken in 2.8.8 (#10120).
+- wxHTML: don't include extra whitespace in table cells.
+- Implemented wxWindow::DragAcceptFiles() on all platforms.
+- Added wxAUI_MGR_LIVE_RESIZE flag to wxAuiManager and made it the default on
+ wxMac with CoreGraphics where sash drawing isn't implemented.
+- Use bitmap mask in wxSplashScreen.
+- Translate "(c)" and "(C)" to the real copyright sign in wxAboutBox.
+- Fix painting of highlight border for merged cells in wxGrid (K. Jones).
+- Fix handling of long lines in wxGridCellAutoWrapStringRenderer.
+
+All (Unix):
+
+- Return false from wxSingleInstanceChecker::IsAnotherRunning() if an error
+ occurred while opening or reading the lock file (Lauri Nurmi).
+
+wxMSW:
+
+- Fixed bug with using non default encoding in wxTextCtrl in ANSI build.
+- Restored generation of events for accelerators when there is no menu bar.
+- Fixed wxArtProvider::GetSizeHint() to return 16x16 for wxART_FRAME_ICON.
+- Fixed toolbar buttons so that they don't disappear temporarily when clicked
+ if the event handler causes window update.
+- Fix display enumeration under WinCE (Vince Harron).
+- Fix best size calculation for wxNotebook with multiple rows (Alex McCarthy).
+- Correct coordinates of wxDropFilesEvent (Dmitriy Maksimov).
+- Fix handling of abandoned mutexes in wxMutex (David Heffernan).
+- Avoid warnings about deprecated localtime with MSVC8/9 (Chris Stankevitz).
+- Fixed invisible CHM tooltip text bug when window text colour is black.
+- Automatically adjust toolbar's tool size if the provided bitmaps
+ don't fit into the default size.
+- Don't generate EVT_LISTBOX_DCLICK events with incorrect indices.
+- Don't reuse the double click handled by activation event handler for toggling
+ the item in wxTreeCtrl.
+
+
+wxMSW/CE:
+
+- Don't hardcode the menu bar height (Michele Spighi).
+
+wxGTK:
+
+- Fixed printing to use fonts sizes adjustment consistent with wxMSW.
+- Make colours used by list, tree and status bar controls more consistent with
+ the system theme settings (Tim Kosse).
+- Worked around bug in GTK+ < 2.14 where enabling some controls such
+ as wxButton didn't re-enable sensitivity until the mouse was moved.
+
+wxOS2:
+
+- Added implementation for wxSingleInstanceChecker contributed by Lauri Nurmi
+
2.8.9
-----
- wxNB_HITTEST_* flags renamed to wxBK_HITTEST_* to serve all book controls.
- Added wxTopLevelWindow::SetTransparent and CanSetTransparent, with
implementations (so far) for wxMSW and wxMac.
-- Allow customizing individual grid lines appearance (Søren Lassen).
+- Allow customizing individual grid lines appearance (Søren Lassen).
- Fixed middle click events generation in generic wxTreeCtrl (Olly Betts).
- Added wxEVT_MOUSE_CAPTURE_LOST event that must be handled by all windows
that CaptureMouse() is called on.
- Invisible text problem fixed.
- Bitmap clipping with masks and scaling improved.
- Fixed a crash bug in the generic timer.
-- Implemented child process termination notifications (David Björkevik)
+- Implemented child process termination notifications (David Björkevik)
Unix:
- Added wxXmlResource::Unload().
- Possibility of modeless wxWizard dialog (with presentation in sample).
- Fixed a rare crash due to malformed HTML in wxHTML (Xavier Nodet).
-- Ctrl+mouse wheel changes zoom factor in print preview (Zbigniew Zagórski).
+- Ctrl+mouse wheel changes zoom factor in print preview (Zbigniew Zagórski).
- Cross-compile now supported for wxGTK, wxX11 and wxMotif.
- Cygwin compilation of wxX11, wxGTK and wxMotif now supported.
- Now reads "help" parameter for all windows (context help text).
- Fixed wxSlider::GetSelEnd() (Atilim Cetin).
- Fixed accelerators of menu items added to already attached submenus.
- Position of wxEVT_MOUSEWHEEL events is now in client, not screen, coordinates.
-- Handle absence of wxListCtrl column image better (Zbigniew Zagórski).
+- Handle absence of wxListCtrl column image better (Zbigniew Zagórski).
- Fixed asynchronous playback of large sound files in wxSound.
- Added wxDynamicLibrary::GetSymbolAorW().
- Fixed default size of wxStaticText controls with border being too small.
use accessors methods now (Mart Raudsepp)
- new classes for reading and writing ZIP files (M.J.Wetherell)
- large files support for wxFFile (M.J.Wetherell)
-- classes in the manual are now cross-referenced (Zbigniew Zagórski)
-- Norwegian (Bokmål) translation added (Hans F. Nordhaug)
+- classes in the manual are now cross-referenced (Zbigniew Zagórski)
+- Norwegian (Bokmål) translation added (Hans F. Nordhaug)
- wxDynamicLibrary::HasSymbol() added
- added wxEXEC_NODISABLE flag to be used with wxExecute(wxEXEC_SYNC)
- added wxTextInputStream::operator>>(wchar_t) for compilers which support this
- added wxMediaCtrl
- added wxDatePickerCtrl
- wxHtmlWindow now supports background images given in <body> tag
-- wxSplitterWindow now supports gravity parameter (Zbigniew Zagórski)
+- wxSplitterWindow now supports gravity parameter (Zbigniew Zagórski)
- recursive wxSizer::GetItem returns item of given window, sizer or nth index
- wxLayoutConstraints now use best size, not current size, for AsIs() condition
- wxSizer::Add/Insert etc. now returns pointer to wxSizerItem just added and this
All:
-- event table macros now do some minimal type safety checks (Michael Sögtrop)
+- event table macros now do some minimal type safety checks (Michael Sögtrop)
- added wxGzipInput/OutputStream, bug fixes in wxZlibStreams (M.J.Wetherell)
- wxDateTime::ParseDateTime() implemented (Linus McCabe)
- wxHTTP::GetResponse() added (David Nock)
- added some support for C++ exceptions in the library (do read the manual!)
- added wxListCtrl::GetViewRect()
- added wxTextCtrl::MarkDirty()
-- wxToolBar::ToggleTool() now works for radio buttons (Dag Ågren)
+- wxToolBar::ToggleTool() now works for radio buttons (Dag Ågren)
- wxListCtrl now sends an END_LABEL event if editing was cancelled, too
- bug in wxRect ctor from two [out of order] wxPoints fixed (Steve Cornett)
- status text is now restored after wxMenu help is shown in it
wxBase:
- added Watcom makefiles
-- fixed bug with searching in sorted arrays (Jürgen Palm)
+- fixed bug with searching in sorted arrays (Jürgen Palm)
All GUI ports:
- polygon support in wxRegion (Klaas Holwerda)
- wxStreamToTextRedirector to allow easily redirect cout to wxTextCtrl added
- fixed bug with using wxExecute() to capture huge amounts of output
-- new wxCalendarCtrl styles added (Søren Erland Vestø)
+- new wxCalendarCtrl styles added (Søren Erland Vestø)
- wxWizard changes: loading from WXR support, help button (Robert Cavanaugh)
- wxDirSelector() added (Paul A. Thiessen)
- wxGrid cell editing veto support (Roger Gammans)
- wxZipFSHandler::FindFirst() and FindNext() now correctly list directories
- wxMimeTypesManager now can create file associations too (Chris Elliott)
- wxCopyFile() respects the file permissions (Roland Scholz)
-- wxFTP::GetFileSize() added (Søren Erland Vestø)
+- wxFTP::GetFileSize() added (Søren Erland Vestø)
- wxDateTime::IsSameDate() bug fixed
- wxTimeSpan::Format() now behaves more as expected, see docs
- wxLocale now provides much more convenient API for setting language and