]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/changes.txt
do not exceed the 80 column limit when printing the list of available libraries
[wxWidgets.git] / docs / changes.txt
index 4221fca2564fb46196cd60cedf4a3201b2440634..f83035377700787bb50305ab5ba49fba2048d673 100644 (file)
@@ -119,6 +119,11 @@ Changes in behaviour which may result in compilation errors
   need to review them as wxDC doesn't have any virtual methods any longer and
   uses delegation instead of inheritance to present different behaviours.
 
+- wxWindow::ProcessEvent() (and other wxEvtHandler functions inherited by wxWindow)
+  has been made protected to prevent wrongly using it instead of correct
+  GetEventHandler()->ProcessEvent().
+  New ProcessWindowEvent() was added for convenience.
+
 - Return type of wxString::operator[] and wxString::iterator::operator* is no
   longer wxChar (i.e. char or wchar_t), but wxUniChar. This is not a problem
   in vast majority of cases because of conversion operators, but it can break
@@ -207,6 +212,11 @@ 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); }
+
 
 Deprecated methods and their replacements
 -----------------------------------------
@@ -248,7 +258,11 @@ Deprecated methods and their replacements
 - wxTE_AUTO_SCROLL style is deprecated as it's always on by default anyhow.
 - wxThreadHelper::Create() has been deprecated in favour of wxThreadHelper::CreateThread
   which has a better name for a mix-in class, and allows setting the thread type.
-
+- wxDos2UnixFilename, wxUnix2DosFilename, wxStripExtension, wxGetTempFileName,
+  wxExpandPath, wxContractPath, wxRealPath, wxCopyAbsolutePath, wxSplitPath
+  were deprecated in favour of wxFileName methods. See docs for more info.
+- global wxPendingEvents and wxPendingEventsLocker objects were removed; now you may use
+  wxEventLoopBase::SuspendProcessingOfPendingEvents instead of locking wxPendingEventsLocker.
 
 Major new features in this release
 ----------------------------------
@@ -260,8 +274,9 @@ Major new features in this release
 - wxWidgets may now use either wchar_t (UTF-16/32) or UTF-8 internally,
   depending on what is optimal for the target platform.
 
-- New propgrid library containing wxPropertyGrid and related classes, many
-  enhancements to wxDataViewCtrl.
+- New propgrid library containing wxPropertyGrid and related classes.
+
+- Many enhancements to wxDataViewCtrl.
 
 - Event loops, timers and sockets can now be used in wxBase, without GUI.
 
@@ -275,6 +290,9 @@ Major new features in this release
   welcome (and due to using the simple Doxygen syntax it is now easier than
   ever to submit patches correcting them! :-)
 
+- Support for persistent objects automatically saving and restoring their state
+  was added.
+
 
 2.9.0
 -----
@@ -312,7 +330,9 @@ All:
   Linnakangas).
 - wxVariant::Unshare allows exclusive allocation of data that must be shared,
   if the wxVariantData::Clone function is implemented.
-- Added wxWeakRef<T>, wxScopedPtr<T>, wxSharedPtr<T> class templates
+- Added wxWeakRef<T>, wxScopedPtr<T>, wxScopedArray<T>, wxSharedPtr<T> templates
+  and renamed old wx/ptr_{scpd,shrd}.h headers to wx/scoped{ptr,array}.h and
+  wx/sharedptr.h (but old headers are still provided for compatibility).
 - Added wxVector<T> class templates
 - Added wxON_BLOCK_EXIT_SET() and wxON_BLOCK_EXIT_NULL() to wx/scopeguard.h.
 - Added wxEvtHandler::QueueEvent() replacing AddPendingEvent() and
@@ -328,12 +348,22 @@ All:
 - Added wxSHUTDOWN_LOGOFF and wxSHUTDOWN_FORCE wxShutdown() flags (troelsk).
 - Added wxSocket::ShutdownOutput().
 - Handle exceptions thrown from overridden wxView::OnCreate() gracefully.
+- Added wxPATH_RMDIR_FULL/RECURSIVE wxFileName::Rmdir() flags (Marcin Malich).
 - Added wxStandardPaths::GetAppDocumentsDir().
+- Added wx-prefixed versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros.
+- Added wxFileName::ReplaceEnvVariable and wxFileName::ReplaceHomeDir.
+- Added wxProtocol::SetDefaultTimeout(); the default timeout for both wxHTTP and wxFTP
+  protocols is 60 seconds.
+- Added wxStrnlen() for safe computation of string length.
+- Added wxImage::Clear() (troelsk)
 
 All (Unix):
 
 - Added wx-config --optional-libs command line option (John Labenski).
 - Noticeably (by a factor of ~150) improve wxIPC classes performance.
+- Configure options --with-opengl and --enable-mediactrl now default to "auto":
+  if OpenGL and GStreamer libraries are available the "gl" and "media" wx libraries
+  are automatically built.
 
 All (GUI):
 
@@ -353,6 +383,7 @@ All (GUI):
 - 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).
 - 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).
@@ -406,7 +437,7 @@ All (GUI):
 - Added support for resizing wxWizard bitmaps to the current page height,
   via SetBitmapPlacement, SetBitmapBackgroundColour and SetMinimumBitmapWidth.
   Also made it easier to derive from wxWizard and override behaviour.
-- Made wxSizer::Fit() set the client size of the target window
+- Made wxSizer::Fit() set the client size of the target window.
 - Add support for wxDatePickerCtrl in wxGenericValidator (Herry Ayen Yang)
 - Added wxWindow::HasFocus().
 - Added wxGLCanvas::IsDisplaySupported().
@@ -438,10 +469,20 @@ All (GUI):
   GetNativeSizeHint() now return more sensible values in wxMSW and wxMac and
   no longer return bogus values.
 - Added wxControl::SetLabelText() and EscapeMnemonics().
+- Added support for wxFILTER_EMPTY and wxFILTER_DIGITS styles to wxTextValidator;
+  added also the SetCharIncludes() and SetCharExcludes() utilities.
+- Added wxIMAGE_OPTION_PNG_FILTER and many wxIMAGE_OPTION_PNG_COMPRESSION_* options
+  to wxImage and wxPNGHandler to allow for custom compression levels when saving PNGs
+  (Perdana Panduwana)
+- Added GetValue(), GetRange(), GetMessage() functions to wxProgressDialog
+- Moved yield functions to wxEventLoopBase and implemented for wxMSW and wxGTK
+  a selective wxEventLoopBase::YieldFor() function.
+  Added also wxEventLoopBase::IsYielding to help cure re-entrancy problems with Yield().
 
 wxGTK:
 
 - Support for markup and ellipsization in wxStaticText (Francesco Montorsi).
+- Ellipsize long strings in wxStatusBar (Francesco Montorsi)
 - Native implementation for wxHyperlinkCtrl (Francesco Montorsi).
 - Native keyboard navigation implementation.
 - Added wxCB_SORT support to wxComboBox (Evgeniy Tarassov).
@@ -486,6 +527,9 @@ wxMSW:
   should be used.
 - Implement wxFileName::SetTimes() for directories (Steve Lamerton).
 - 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)
 
 wxX11: