WxWidgets 2.8.0

New release of WxWidgets has been released, 2.8.0. It's a culmination of a long work and it's replacing 2.6.0 as the stable release. You should read the Changelog before starting to use this, since it brought some big changes. Here's the list:

Changes in behaviour not resulting in compilation errors, please read this!
---------------------------------------------------------------------------

- For all wxInputStreams, Eof() becomes true after an attempt has been made
to read _past_ the end of file.
- wxFileName::DirExists() checks if the path of the file is a directory, not
if the whole name is a directory.
- wxDialog::CreateButtonSizer() may return NULL now, please see the manual.
- wxStaticBoxSizer now deletes the associated wxStaticBox when it is deleted.
- wxArray::Alloc() now works as reserve() and does not clear the array any more
- Windows calling CaptureMouse() are now required to handle the
wxEVT_MOUSE_CAPTURE_LOST event and not call ReleaseMouse() in this case.
- wxInputStream::GetC() now returns an int in the range 0 - 255 on success
instead of a char the range -128 - 127.


Changes in behaviour which may result in compilation errors
-----------------------------------------------------------

- Some classes (notably wxBitmap and wxImage) don't define operator==() as it
used to work in somewhat unexpected way as it compared only internal pointers
and not the object data. The code using it will have to be updated:
* If the object was compared with wxNullXXX, use IsOk() method instead
* If valid object need to be compared, use IsSameAs() to reproduce the old
behaviour or change the code to avoid comparing bitmaps &c.
- wxFontData::GetColour() now returns a const colour.
- wxDC objects can't be created directly now (this never worked, now it doesn't
even compile).
- wxCHECK family of macros now must be followed by a semicolon.
- wxMBConv::cMB2WC() and cWC2MB() take size of the input buffer and return
length of the converted string in all cases now.
- wxHtmlWindow::OnCellClicked() now returns bool.
- wxHtmlCell::OnMouseClick() was deprecated and replaced with
wxHtmlCell::ProcessMouseClick(); old code overriding OnMouseClick() will
continue to work with WXWIN_COMPATIBILITY_2_6, but should be rewritten to
use ProcessMouseClick().
- wxHtmlCell::GetCursor() was deprecated and replaced with
wxHtmlCell::GetMouseCursor(); old code overriding GetCursor() will
continue to work with WXWIN_COMPATIBILITY_2_6, but should be rewritten to
use GetMouseCursor().
- wxHtmlCell::AdjustPagebreak() signature has changed, update your code if you
override it.
- wxFontEnumerator::GetFacenames() and GetEncodings() now return arrays and
not pointers to arrays.
- SetDefaultItem() method was moved from wxPanel to wxTopLevelWindow
- wxDialog::OnOK/OnCancel() don't exist any more, use SetAffirmative/EscapeId()
- wxPathList doesn't derive from (deprecated) wxStringList any more
- wxGLContext class has no 1:1 coupling to a wxGLCanvas class any more.
As a consequence, the class interface changed largely. Code updates, if
any are required at all, are easy to accomplish though.


Deprecated methods since 2.6.x and their replacements
-----------------------------------------------------

- wxGetWorkingDirectory() deprecated in favour of wxGetCwd().
- wxDC::BeginDrawing() and wxDC::EndDrawing() deprecated, don't use them.
- wxWindowBase::GetBestFittingSize --> wxWindowBase::GetEffectiveMinSize.
- wxWindowBase::SetBestFittingSize --> wxWindowBase::SetInitialSize.
- Seeking on a zip stream returned from wxFileSystem without using the new
wxFS_SEEKABLE flags is deprecated. You can still seek, but use the flag.
- Constructor wxZipInputStream(const wxString& archive, const wxString& file)
deprecated in favour of wxFileSystem (other zip ctors are not deprecated).

Popular posts from this blog

NVidia Legacy Unix Driver Update

Python 3.6.0 in SBo 14.2 repository

Running Rsync Via Proxy