]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/changes.txt
unifying CFTypes
[wxWidgets.git] / docs / changes.txt
index 377b4a831b789254359d1861dac330955628919c..83dc10cde4fcf4847a9c92854d313ec03141e4f4 100644 (file)
@@ -5,6 +5,48 @@
 INCOMPATIBLE CHANGES SINCE 2.8.x
 ================================
 
+Unicode-related changes
+-----------------------
+
+The biggest changes in wxWidgets 3.0 are the changes due to the merge of the
+old ANSI and Unicode build modes in a single build. See the Unicode overview
+in the manual for more details but here are the most important incompatible
+changes:
+
+- Many wxWidgets functions taking "const wxChar *" have been changed to take
+  either "const wxString&" so that they accept both Unicode and ANSI strings.
+  and the argument can't be NULL or "const char *" if the strings are always
+  ANSI but may be NULL. This change is normally backwards compatible except:
+
+  a) Virtual functions: derived classes versions must be modified to take
+     "const wxString&" as well to make sure that they continue to override the
+     base class version.
+
+  b) Passing NULL as argument: as NULL can't be unambiguously converted to
+     wxString, in many cases code using it won't compile any more and NULL
+     should be replaced with an empty string.
+
+
+- Some structure fields which used to be of type "const wxChar *" (such as
+  wxCmdLineEntryDesc::shortName, longName and description fields) are now of
+  type "const char *", you need to remove wxT() or _T() around the values used
+  to initialize them (which should normally always be ASCII).
+
+- wxIPC classes didn't work correctly in Unicode build before, this was fixed
+  but at a price of breaking backwards compatibility: many methods which used
+  to work with "wxChar *" before use "void *" now (some int parameters were
+  also changed to size_t). While wxIPC_TEXT can still be used to transfer 7
+  bit text, the new wxIPC_UTF8TEXT format is used for transferring wxStrings.
+
+
+wxODBC library removal
+----------------------
+
+wxODBC library was unmaintained since several years and we couldn't continue
+supporting it any longer so it was removed. Please use any of the other open
+source ODBC libraries in the future projects.
+
+
 Changes in behaviour not resulting in compilation errors, please read this!
 ---------------------------------------------------------------------------
 
@@ -32,6 +74,10 @@ Changes in behaviour which may result in compilation errors
 - WXWIN_COMPATIBILITY_2_4 doesn't exist any more, please update your code if
   you still relied on features deprecated since version 2.4
 
+- wxDC classes hierarchy has changed, if you derived any classes from wxDC you
+  need to review them as wxDC doesn't have any virtual methods any longer and
+  uses delegation instead of inheritance to present different behaviours.
+
 - 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
@@ -82,6 +128,15 @@ Changes in behaviour which may result in compilation errors
 
 - Removed global GetLine() function from wx/protocol/protocol.h, use
   wxProtocol::ReadLine() instead.
+  
+- wxVariant no longer derives from wxObject. wxVariantData also no longer
+  derives from wxObject; instead of using wxDynamicCast with wxVariantData you
+  can use the macro wxDynamicCastVariantData with the same arguments.
+
+- wxWindow::Next/PrevControlId() don't exist any more as they can't be
+  implemented correctly any longer because automatically generated ids are not
+  necessarily allocated consecutively any more. Use GetChildren() to find the
+  next/previous control sibling instead.
 
 
 Deprecated methods and their replacements
@@ -109,6 +164,10 @@ Major new features in this release
 
 All:
 
+- Added (experimental) IPv6 support to wxSocket (Arcen)
+- 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).
 - Added wxJoin() and wxSplit() functions (Francesco Montorsi).
 - Added wxMutex::LockTimeout() (Aleksandr Napylov).
@@ -125,6 +184,10 @@ All:
   wxLogInterposerTemp was added.
 - Added support for broadcasting to UDP sockets (Andrew Vincent).
 - Documentation now includes the wx library in which each class is defined.
+- wxrc --gettext now generates references to source .xrc files (Heikki
+  Linnakangas).
+- wxVariant::Unshare allows exclusive allocation of data that must be shared,
+  if the wxVariantData::Clone function is implemented.
 
 All (Unix):
 
@@ -132,13 +195,22 @@ All (Unix):
 
 All (GUI):
 
+- Added {wxTextCtrl,wxComboBox}::AutoComplete() and AutoCompleteFileNames()
 - Added wxH[V]ScrolledWindow (Brad Anderson, Bryan Petty).
+- Added wxNotificationMessage class for non-intrusive notifications
+- Added wxWindow::Show/HideWithEffect()
 - Added wxDC::StretchBlit() for wxMac and wxMSW (Vince Harron).
 - Added support for drop down toolbar buttons (Tim Kosse).
 - Added support for labels for toolbar controls (Vince Harron).
 - Added wxMessageDialog::SetMessage() and SetExtendedMessage().
-- Added wxEventBlocker class (Francesco Montorsi)..
-- Added wxFile/DirPickerCtrl::Get/SetFile/DirName() (Francesco Montorsi)..
+- Added wxListCtrl::Set/GetColumnsOrder() (Yury Voronov)
+- Added wxWindow::AlwaysShowScrollbars() (Julian Scheid)
+- Added wxMouseEvent::GetClickCount() (Julian Scheid)
+- Added wxBG_STYLE_TRANSPARENT background style (Julian Scheid)
+- Added XRCSIZERITEM() macro for obtaining sizers from XRC (Brian Vanderburg II)
+- New and improved wxFileCtrl (Diaa Sami and Marcin Wojdyr)
+- 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.
@@ -154,9 +226,20 @@ All (GUI):
 - Show standard options in wxCmdLineParser usage message (Francesco Montorsi).
 - Added wxRect::operator+ (union) and * (intersection) (bdonner).
 - Added support for two auxiliary mouse buttons to wxMouseEvent (Chris Weiland).
-- Added wxToolTip::SetAutoPop() and SetReshow() (Jan Knepper)
-- Added wxTaskBarIcon::Destroy()
-- Added XRC handler for wxSearchCtrl (Sander Berents)
+- Added wxToolTip::SetAutoPop() and SetReshow() (Jan Knepper).
+- Added wxTaskBarIcon::Destroy().
+- Added XRC handler for wxSearchCtrl (Sander Berents).
+- Read image resolution from TIFF, JPEG and BMP images (Maycon Aparecido Gasoto).
+- Add support for reading alpha data from TIFF images.
+- Added wxSYS_DCLICK_TIME system metric constant (Arne Steinarson).
+- Added wxApp::Get/SetAppDisplayName() (Brian A. Vanderburg II).
+- Added wxWindow::GetPopupMenuSelectionFromUser() (Arne Steinarson).
+- Implemented wxTreeCtrl::GetPrevVisible() in the generic version and made the
+  behaviour of GetNextSibling() consistent between wxMSW and generic versions.
+- Merged wxRichTextAttr and wxTextAttrEx into wxTextAttr, and added a font table
+  to wxRichTextBuffer to reduce wxFont consumption and increase performance.
+- Optimize wxGenericTreeCtrl::Collapse/ExpandAllChildren(). (Szczepan Holyszewski)
+- Added <scrollrate> parameter to wxScrolledWindow XRC handler.
 
 wxGTK:
 
@@ -180,12 +263,15 @@ wxMac:
 - Fix duplicate (empty) help menu in non-English programs (Andreas Jacobs).
 - Allow accelerators to be used with buttons too (Ryan Wilcox).
 - Support resource forks in wxCopyFile() (Hank Schultz).
+- Implement wxLocale::GetInfo() using CFLocale
 
 wxMSW:
 
 - 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).
+- Allow tooltips longer than 64 (up to 128) characters in wxTaskBarIcon
+- Fix centering wxFileDialog
 
 wxX11:
 
@@ -193,6 +279,42 @@ wxX11:
 - Make Enter key activate the default button (David Hart).
 
 
+2.8.8
+-----
+
+All (GUI):
+
+- Added wxWindow::GetNextSibling() and GetPrevSibling()
+
+
+2.8.7
+-----
+
+All:
+
+- Fixed bug with default proxy destruction in wxURL (Axel Gembe).
+
+wxMSW:
+
+- Correct (harmless) warnings given for forward-declared DLL-exported classes
+  by mingw32 4.2 (Tim Stahlhut).
+
+wxGTK:
+
+- Added gtk.window.force-background-colour wxSystemOptions option to work around
+  a background colour bug in the gtk-qt theme under KDE.
+- Implemented wxGetClientDisplayRect() correctly for wxGTK and X11-based ports.
+
+
+2.8.6
+-----
+
+All:
+
+- Fixed another bug in wxFileConfig when deleting entries (Axel Gembe)
+- Added Portuguese translation (Antonio Cardoso Martins)
+
+
 2.8.5
 -----
 
@@ -230,6 +352,8 @@ wxGTK:
 - Don't unconditionally add wxCAPTION style to wxMiniFrame
 - Generate wxEVT_COMMAND_LIST_END_LABEL_EDIT event even if label didn't change
 - Fix WX_GL_STEREO attribute handling (Tristan Mehamli)
+- Fix wxThread::SetPriority() when the thread is running (Christos Gourdoupis)
+- Fixed off by 1 bug in wxDC::GradientFillLinear() (Tim Kosse)
 
 
 2.8.4