]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/changes.txt
Tagged DEBIAN_2_5_3_2 for release testing. Bumped subversion to 2.5.3.3
[wxWidgets.git] / docs / changes.txt
index 9f7158bd613c673846728a0b233045020e8e88bd..7a503dfa3637b286d21a1af954470e17107f4b52 100644 (file)
@@ -56,7 +56,7 @@ INCOMPATIBLE CHANGES SINCE 2.4.x
       size to be used by the sizers.
 
     * The best size of a window is cached so it doesn't need to
       size to be used by the sizers.
 
     * The best size of a window is cached so it doesn't need to
-      recaculated on every layout.  wxWindow::InvalidateBestSize was
+      recalculated on every layout.  wxWindow::InvalidateBestSize was
       added and should be called (usually just internally in control
       methods) whenever something is done that would make the best
       size change.
       added and should be called (usually just internally in control
       methods) whenever something is done that would make the best
       size change.
@@ -72,9 +72,9 @@ INCOMPATIBLE CHANGES SINCE 2.4.x
   At this time, the only situation known not to work the same as
   before is the following:
 
   At this time, the only situation known not to work the same as
   before is the following:
 
-        win = new SomeWidget(parent);
-        win->SetSize(SomeNonDefaultSize);
-        sizer->Add(win);
+    win = new SomeWidget(parent);
+    win->SetSize(SomeNonDefaultSize);
+    sizer->Add(win);
 
   In this case the old code would have used the new size as the
   minimum, but now the sizer will use the default size as the minimum
 
   In this case the old code would have used the new size as the
   minimum, but now the sizer will use the default size as the minimum
@@ -103,8 +103,17 @@ INCOMPATIBLE CHANGES SINCE 2.4.x
       control is sized to a blending of the min size and best size.
       This can be done by calling SetBestFittingSize.
 
       control is sized to a blending of the min size and best size.
       This can be done by calling SetBestFittingSize.
 
+! wxURL has undergone some radical changes.
 
 
+    * Many accessors of wxURL - GetHostName, GetProtocolName, and GetPath,
+      have been replaced by its parent's (wxURI) counterparts - GetServer,
+      GetScheme, and GetPath, respectively.
+  
+    * ConvertToValidURI has been replaced by wxURI.  Do not use 
+      ConvertToValidURI for future applications.
 
 
+    * ConvertFromURI has been replaced by wxURI::Unescape.
+    
 - no initialization/cleanup can be done in wxApp/~wxApp because they are
   now called much earlier/later than before; please move any exiting code
   from there to wxApp::OnInit()/OnExit()
 - no initialization/cleanup can be done in wxApp/~wxApp because they are
   now called much earlier/later than before; please move any exiting code
   from there to wxApp::OnInit()/OnExit()
@@ -130,7 +139,7 @@ INCOMPATIBLE CHANGES SINCE 2.4.x
   Previously, the application terminated if there were no top level windows;
   now it terminates if there are no top level windows or taskbar icons left.
 - wxZlibInputStream is not by default compatible with the output of the
   Previously, the application terminated if there were no top level windows;
   now it terminates if there are no top level windows or taskbar icons left.
 - wxZlibInputStream is not by default compatible with the output of the
-  2.4.x version of wxZlibOutputStream. However, there is a compatibilty mode,
+  2.4.x version of wxZlibOutputStream. However, there is a compatibility mode,
   switched on by passing wxZLIB_24COMPATIBLE to the constructor.
 - when WXWIN_COMPATIBILITY_2_4 == 0 wxHashTable uses a new implementation
   not using wxList keyed interface (the same used when wxUSE_STL == 1),
   switched on by passing wxZLIB_24COMPATIBLE to the constructor.
 - when WXWIN_COMPATIBILITY_2_4 == 0 wxHashTable uses a new implementation
   not using wxList keyed interface (the same used when wxUSE_STL == 1),
@@ -147,10 +156,17 @@ INCOMPATIBLE CHANGES SINCE 2.4.x
 - Identical functionality of wxFileDialog::ParseWildcard,
   wxGenericDirCtrl::ParseFilter, Motif and MSW parsing native dialogs
   is now accessible in ::wxParseCommonDialogsFilter
 - Identical functionality of wxFileDialog::ParseWildcard,
   wxGenericDirCtrl::ParseFilter, Motif and MSW parsing native dialogs
   is now accessible in ::wxParseCommonDialogsFilter
-- wxNotebookSizer and wxBookCtrlSizer are now deprecated -- the are no longer
+- wxNotebookSizer and wxBookCtrlSizer are now deprecated -- they are no longer
   needed, you can treat wxNotebook as any other control and put it directly
   into the sizer that was wxNotebookSizer's parent sizer in old code.
   needed, you can treat wxNotebook as any other control and put it directly
   into the sizer that was wxNotebookSizer's parent sizer in old code.
-
+- wxFile methods now return either wxFileOffset or wxFileSize_t which may be a
+  64 bit integer type, even on 32 bit platforms, instead of off_t and so the
+  return value of wxFile::Length(), for example, shouldn't be assigned to off_t
+  variable any more (the compiler might warn you about this)
+- wxListItem::m_data is now of type wxUIntPtr, not long, for compatibility
+  with 64 bit systems
+- wxSizer::Add/Insert returns pointer to wxSizerItem just added so conditions
+  writeen with if(Add(..)==true) will not work. Use if(Add(..)) instead.
 
 
 DEPRECATED METHODS SINCE 2.4.x
 
 
 DEPRECATED METHODS SINCE 2.4.x
@@ -159,6 +175,8 @@ DEPRECATED METHODS SINCE 2.4.x
 Deprecated methods may still be used but will disappear in future wxWidgets
 versions, please update your code to not use them.
 
 Deprecated methods may still be used but will disappear in future wxWidgets
 versions, please update your code to not use them.
 
+- wxURL::GetInputStream() and similar functionality has been depreciated in 
+  favor of other ways of connecting, such as though sockets or wxFileSystem.
 - wxDocManager::GetNoHistoryFiles() renamed to GetHistoryFilesCount()
 - wxSizer::Remove(wxWindow *), use Detach() instead [it is more clear]
 - wxSizer::Set/GetOption(): use Set/GetProportion() instead
 - wxDocManager::GetNoHistoryFiles() renamed to GetHistoryFilesCount()
 - wxSizer::Remove(wxWindow *), use Detach() instead [it is more clear]
 - wxSizer::Set/GetOption(): use Set/GetProportion() instead
@@ -187,16 +205,66 @@ versions, please update your code to not use them.
 - The wxHIDE_READONLY flag for wxFileDialog was not implemented
   and has now been removed
 - wxTaskBarIcon::OnXXX() virtual methods: use events instead
 - The wxHIDE_READONLY flag for wxFileDialog was not implemented
   and has now been removed
 - wxTaskBarIcon::OnXXX() virtual methods: use events instead
+- obsolete and not used wxUSE_GENERIC_DIALOGS_IN_MSW has been removed
+- wxDbTable::wxDbTable with wxChar* deprecated, same with wxString& instead
 
 
 OTHER CHANGES
 =============
 
 
 
 OTHER CHANGES
 =============
 
+2.5.4
+-----
+
+All:
+
+- new classes for reading and writing ZIP files (M.J.Wetherell)
+- Norwegian (BokmÃ¥l) translation added (Hans F. Nordhaug)
+- wxDynamicLibrary::HasSymbol() added
+- added wxTextInputStream::operator>>(wchar_t) for compilers which support this
+- added wxURI, a class for dealing with Uniform Resource Identifiers
+- changed wxURL to inherit from wxURI and provide assignment and comparison
+- implemented wxConvUTF7 (modified patch from Fredrik Roubert)
+- added versions of MB2WC and WC2MB for wxMBConv that for embedded null chars
+- Unicode support in wxODBC is now fully implemented
+- A new data type specific to wxWidgets called SQL_C_WXCHAR has been introduced.
+  SQL_C_WXCHAR should be used rather than SQL_C_CHAR to ensure transparent 
+  behavior between Unicode and non-unicode builds
+- BLOB example added to samples\db (thanks to Casey ODonnell)
+- use wxStream::GetLength() instead of deprecated GetSize()
+- wxGetOsDescription() is now more precise (Olly Betts)
+
+All (GUI):
+
+- 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
+  item remembers its wxRect area (Brian A. Vanderburg II)
+
+Unix:
+
+- wxPuts() now correctly outputs trailing new line in Unicode build
+
+wxGTK:
+
+- fixed wxFileDialog::SetWildcard()
+
+wxMac:
+
+- wxDynamicLibrary::GetDllExt() now returns ".bundle", not ".dylib"
+- wxDynamicLibrary::GetSymbol() now prepends underscore to the symbol name
+
+wxMSW:
+
+- fixed enhanced metafiles loading from files (Andreas Goebel)
+- wxRadioButtons no longer have to be consecutive in a group
+
+
 2.5.3
 -----
 
 All:
 
 2.5.3
 -----
 
 All:
 
+- support for huge (>2 Gb) files (Tim Kosse)
 - number of fixes to wxPluginManager (Rick Brice, Hans Van Leemputten)
 - fixed memory leak in wxURL when using a proxy (Steven Van Ingelgem)
 - fixed bug in wxDateTime::Set(jdn) when DST was in effect
 - number of fixes to wxPluginManager (Rick Brice, Hans Van Leemputten)
 - fixed memory leak in wxURL when using a proxy (Steven Van Ingelgem)
 - fixed bug in wxDateTime::Set(jdn) when DST was in effect
@@ -204,25 +272,67 @@ All:
 - support msgids in charsets other than C and languages other than English
   (based on patch by Stefan Kowski)
 - added wxMicroSleep() and wxMilliSleep() replacing deprecated wxUsleep()
 - support msgids in charsets other than C and languages other than English
   (based on patch by Stefan Kowski)
 - added wxMicroSleep() and wxMilliSleep() replacing deprecated wxUsleep()
+- basic UDP sockets support (Lenny Maiorani)
+- fixed wxDateTime::GetWeekDayName() for some dates (Daniel Kaps)
+- deprecated wxDateTime::SetToTheWeek() in favour of SetToWeekOfYear()
+- active mode support in wxFTP (Randall Fox)
+- sped up wxHTTP and wxFTP
+- added wxStringInput/OutputStreams
+- added wxFileConfig::Save(wxOutputStream)
+- fixed wxString's behavior with inserted null characters
 
 All (GUI):
 
 - added wxWindow::MoveBefore/AfterInTabOrder() to change tab navigation order
 
 All (GUI):
 
 - added wxWindow::MoveBefore/AfterInTabOrder() to change tab navigation order
-- added wxTaskBarIcon::CreatePopupMenu which is now recommended way
-  of showing popup menu; calling wxTaskBarIcon::PopupMenu directly
+- added wxTaskBarIcon::CreatePopupMenu which is now the recommended way
+  of showing popup menu; calling wxTaskBarIcon::PopupMenu directly
   is discouraged
 - added ..._CMD_...(id) variants for wxGrid event table entry macros
   is discouraged
 - added ..._CMD_...(id) variants for wxGrid event table entry macros
-- added wxWindow::Navigate for programmatic navigation to the next control.
+- added wxWindow::Navigate for programmatic navigation to the next control
 - wxTextCtrl::OnChar now inserts a tab character if wxTE_PROCESS_TAB is set
 - added wxKeyEvent::GetUnicodeKey()
 - added wxKeyEvent::CmdDown() and wxMouseEvent::CmdDown()
 - wxTextCtrl::OnChar now inserts a tab character if wxTE_PROCESS_TAB is set
 - added wxKeyEvent::GetUnicodeKey()
 - added wxKeyEvent::CmdDown() and wxMouseEvent::CmdDown()
+- implemented wxListCtrl::FindItem() for non-MSW (Robin Stoll)
+- added status bar fields styles support (Tim Kosse)
+- added convenience functions wxSizer::AddSpacer() and
+  wxSizer::AddStretchSpacer() (as well as Prepend and Insert variants)
+- added samples/splash
+- added support for stock buttons
+- added wxTopLevelWindow::RequestUserAttention()
+- support for comma in contrib gizmo wxLEDNumberCtrl (Grant Likely)
+- recursive wxSizer::Show for subsizer and return value if element was found
+- added wxChoicebook control
+- smoother time estimation updates in wxProgressDialog (Christian Sturmlechner)
+- the XRC contrib library was moved to the core
+- wx(Choice/List/Note)book controls send CHANG(ED/ING) events in SetSelection
+- it is now possible to create a wxFont with given size in pixels (d2walter)
+- added wxTopLevelWindow::IsActive()
+- wxSystemSettings::GetMetric now returns -1 for metrics that are not
+  supported, instead of zero.
 
 Unix:
 
 - wxTaskBarIcon now supports freedesktop.org System Tray protocol
 - security fixes to wxSingleInstanceChecker
 - wx-config script was modified to allow choosing from multiple installed
 
 Unix:
 
 - wxTaskBarIcon now supports freedesktop.org System Tray protocol
 - security fixes to wxSingleInstanceChecker
 - wx-config script was modified to allow choosing from multiple installed
-  builds of wxWidgets
+  builds of wxWidgets and to return flags/libs for selected libraries only
+- wx-config has new --version-full option
+
+wxCocoa:
+
+- added Unicode compatibility layer for OSX 10.2
+- fixed so that wxCocoa runs in OSX 10.2 
+- Tooltips now supported
+- wxSound now supported
+- wxDisplay now supported 
+- Some stock cursors now supported 
+
+wxMac:
+
+- fixed MLTE text control GetLineText and GetLineLength on OSX 
+- added OSX wxTaskBarIcon implementation for the OSX Dock 
+- added Unicode compatibility layer for OSX 10.2
+- wxGetKeyState now works with nearly all wx key codes
 
 wxGTK:
 
 
 wxGTK:
 
@@ -231,6 +341,7 @@ wxGTK:
 - fixed many rendering artifacts and wrong colours with lots of GTK+ themes
 - implemented wxColourDialog as native dialog
 - implemented wxTextCtrl::HitTest() (GTK+ >= 2)
 - fixed many rendering artifacts and wrong colours with lots of GTK+ themes
 - implemented wxColourDialog as native dialog
 - implemented wxTextCtrl::HitTest() (GTK+ >= 2)
+- implemented wxTextCtrl::ScrollLines() and ScrollPages for GTK+ 2.x
 - wxTreeCtrl::GetCount() counts root as well now (compatible with MSW)
 - added support for wxCHK_3STATE style (GTK2 only)
 - implemented text underlining under GTK2
 - wxTreeCtrl::GetCount() counts root as well now (compatible with MSW)
 - added support for wxCHK_3STATE style (GTK2 only)
 - implemented text underlining under GTK2
@@ -239,6 +350,11 @@ wxGTK:
   in wxSystemSettings::GetMetric (Mart Raudsepp)
 - implemented wxTopLevel::IsMaximized() for GTK+2 and WMs that implement
   freedesktop.org's wm-spec (Mart Raudsepp)
   in wxSystemSettings::GetMetric (Mart Raudsepp)
 - implemented wxTopLevel::IsMaximized() for GTK+2 and WMs that implement
   freedesktop.org's wm-spec (Mart Raudsepp)
+- wxEVT_CONTEXT_MENU is now generated for right mouse press, not release
+- implemented alpha channel support in wxBitmap
+- added native GTK+2 wxArtProvider implementation with ability to load
+  icons from icon theme in addition to recognized stock art
+- fixed crash on 64 bit platforms (Paul Cornett)
 
 wxMotif:
 
 
 wxMotif:
 
@@ -248,10 +364,29 @@ wxMSW:
 
 - fixed UNC paths handling in wxFileSystem (Daniel Nash)
 - set wxKeyEvent::m_uniChar in Unicode build
 
 - fixed UNC paths handling in wxFileSystem (Daniel Nash)
 - set wxKeyEvent::m_uniChar in Unicode build
+- support for alpha channel in toolbar bitmaps (Jurgen Doornik)
+- wxFileDialog can now be moved and centered (Randall Fox)
+- restored (and improved) possibility to use wx with MFC broken in 2.5.2
+- fixed wxTextCtrl::SetMaxLength for rich edit controls
+- fixed flat style for toolbars under XP, Windows Classic style
+- fixed truncation of transferred data in wxConnection under unicode build
+- wxChoice and wxComboBox dropdown background can be set now too (Adrian Lupei)
+- fixed wxMaximizeEvent generation in wxFrame
+- don't send duplicate EVT_COMBOBOX events whenever selection changes any more
+- implemented support for selecting printer bin (Steven Van Ingelgem)
+- fixed wxListCtrl::SetSingleStyle() which was broken since a few releases
+- fixed print setup problem (always uses default printer) in Unicode build
+
+wxUniv/X11:
+
+- fixed fatal crash when opening a menu
 
 wxWinCE:
 
 
 wxWinCE:
 
-- added automatized but customizable handling of native SmartPhone menus
+- added native WinCE driven smartphone wxTextCtrl implementation using spinners
+- added native WinCE driven smartphone wxChoice implementation using spinners
+- added automated but customizable handling of native WinCE driven smartphone menus
+- fixed wxRadioBox and wxStaticBox
 
 wxHTML:
 
 
 wxHTML:
 
@@ -304,7 +439,7 @@ wxMSW:
 - wxFileName::GetModificationTime() works with opened files too now
 - wxDC::GetClippingBox() now works even for clipping regions created by Windows
 - fixed wxFileDataObject in Unicode build (Alex D)
 - wxFileName::GetModificationTime() works with opened files too now
 - wxDC::GetClippingBox() now works even for clipping regions created by Windows
 - fixed wxFileDataObject in Unicode build (Alex D)
-- subdindented paragraphs support (Tim Kosse)
+- subindented paragraphs support (Tim Kosse)
 
 wxGTK:
 
 
 wxGTK:
 
@@ -371,7 +506,6 @@ All:
 
 All (GUI):
 
 
 All (GUI):
 
-- added wxListBook control
 - added 3-state checkboxes for MSW/Mac (Dimitri Schoolwerth)
 - added some support for C++ exceptions in the library (do read the manual!)
 - added wxListCtrl::GetViewRect()
 - added 3-state checkboxes for MSW/Mac (Dimitri Schoolwerth)
 - added some support for C++ exceptions in the library (do read the manual!)
 - added wxListCtrl::GetViewRect()
@@ -448,7 +582,7 @@ wxMac:
 - use same average character width as other ports when calculating dialog units
 - implemented handling of mouse wheel
 - fix for long file names (longer than 32 characters) in file dialogs
 - use same average character width as other ports when calculating dialog units
 - implemented handling of mouse wheel
 - fix for long file names (longer than 32 characters) in file dialogs
-- use unix sockets for Mach-o builds
+- use Unix sockets for Mach-o builds
 
 wxMotif:
 
 
 wxMotif:
 
@@ -512,7 +646,7 @@ wxBase:
 All GUI ports:
 
 - added wxVScrolledWindow, wxVListBox and wxHtmlLbox classes
 All GUI ports:
 
 - added wxVScrolledWindow, wxVListBox and wxHtmlLbox classes
-- added wxListbook
+- added wxListbook control
 - added alpha channel support to wxImage
 - added wxRenderer class allowing to customize the drawing of generic controls
 - added wxCLOSE_BOX style for dialogs and frames
 - added alpha channel support to wxImage
 - added wxRenderer class allowing to customize the drawing of generic controls
 - added wxCLOSE_BOX style for dialogs and frames
@@ -532,7 +666,7 @@ All GUI ports:
 - it is now possible to use several wxFileHistory objects in the same menu
   by giving them different base IDs (Dimitri Schoolwerth)
 - Added wxTLW::SetShape with implementations for wxMSW and wxGTK (so far)
 - it is now possible to use several wxFileHistory objects in the same menu
   by giving them different base IDs (Dimitri Schoolwerth)
 - Added wxTLW::SetShape with implementations for wxMSW and wxGTK (so far)
-- FL: rmoved const from EnableTool parameters
+- FL: removed const from EnableTool parameters
 - FL: signal child window when toolbar is closed
 - In various places, changed tests for pathsep on last char of string to call
   wxEndsWithPathSeparator(s)
 - FL: signal child window when toolbar is closed
 - In various places, changed tests for pathsep on last char of string to call
   wxEndsWithPathSeparator(s)
@@ -606,7 +740,7 @@ wxGTK:
 - added wxTextCtrl::SetSelection implementation for GTK+ 2
 - fixed wxTextCtrl::IsEditable() for GTK+ 2
 - fixed wxStaticText alignment for GTK+ 2 (Kevin Hock)
 - added wxTextCtrl::SetSelection implementation for GTK+ 2
 - fixed wxTextCtrl::IsEditable() for GTK+ 2
 - fixed wxStaticText alignment for GTK+ 2 (Kevin Hock)
-- don't consume 100% CPU when showing a poup menu
+- don't consume 100% CPU when showing a popup menu
 
 wxMac:
 
 
 wxMac:
 
@@ -630,7 +764,7 @@ wxMSW:
 - libraries built with makefile.g95 have a _min or _cyg suffix (MinGW/Cygwin)
 - when using DLL, wxLocalFSHandler was not being exported
 - fixed problem with wxEvtHandler object not removed from wxPendingEvents
 - libraries built with makefile.g95 have a _min or _cyg suffix (MinGW/Cygwin)
 - when using DLL, wxLocalFSHandler was not being exported
 - fixed problem with wxEvtHandler object not removed from wxPendingEvents
-- Windows XP manifest is now included in wx.rc; it is no longer neccessary
+- Windows XP manifest is now included in wx.rc; it is no longer necessary
   to ship .exe.manifest file with applications to support XP themes
 - wxLocale::Init no longer reports error if trying to set Unicode-only locale
   or if user's default locale is Unicode-only
   to ship .exe.manifest file with applications to support XP themes
 - wxLocale::Init no longer reports error if trying to set Unicode-only locale
   or if user's default locale is Unicode-only
@@ -830,7 +964,7 @@ wxThread and related classes:
 ! wxCondition now *must* be used with a mutex, please read the (updated) class
   documentation for details and revise your code accordingly: this change was
   unfortunately needed as it was impossible to ensure the correct behaviour
 ! wxCondition now *must* be used with a mutex, please read the (updated) class
   documentation for details and revise your code accordingly: this change was
   unfortunately needed as it was impossible to ensure the correct behaviour
-  (i.e. absense of race conditions) using the old API.
+  (i.e. absence of race conditions) using the old API.
 
 - wxMutex is not recursive any more in POSIX implementation (it hasn't been
   recursive in 2.2.x but was in 2.3.1 and 2.3.2), please refer to the class
 
 - wxMutex is not recursive any more in POSIX implementation (it hasn't been
   recursive in 2.2.x but was in 2.3.1 and 2.3.2), please refer to the class
@@ -980,7 +1114,7 @@ wxMSW:
 - wxLB_SORT style can be used with wxCheckListBox
 - wxWindowDC and wxClientDC::GetSize() works correctly now
 - Added wxTB_NODIVIDER and wxTB_NOALIGN so native toolbar can be used in FL
 - wxLB_SORT style can be used with wxCheckListBox
 - wxWindowDC and wxClientDC::GetSize() works correctly now
 - Added wxTB_NODIVIDER and wxTB_NOALIGN so native toolbar can be used in FL
-- Multiline labels in buttons are now supoprted (simply use "\n" in the label)
+- Multiline labels in buttons are now supported (simply use "\n" in the label)
 - Implemented wxMouseCaptureChangedEvent and made wxGenericDragImage check it
   has the capture before release it.
 - fixed bugs in multiple selection wxCheckListBox
 - Implemented wxMouseCaptureChangedEvent and made wxGenericDragImage check it
   has the capture before release it.
 - fixed bugs in multiple selection wxCheckListBox
@@ -2125,7 +2259,7 @@ At this point, the following has been achieved:
 - Toolbar class hierarchy revised:
   wxToolBarBase
   wxToolBarSimple (= old wxToolBar)
 - Toolbar class hierarchy revised:
   wxToolBarBase
   wxToolBarSimple (= old wxToolBar)
-  wxToolBar95 (= old wxButtonBar under Win95
+  wxToolBar95 (= old wxButtonBar under Win95)
   wxToolBarMSW (= old wxButtonBar under WIN16/WIN32)
 - Constraint system debugged somewhat (sizers now work properly).
 - wxFileDialog, wxDirDialog added; other common dialogs now
   wxToolBarMSW (= old wxButtonBar under WIN16/WIN32)
 - Constraint system debugged somewhat (sizers now work properly).
 - wxFileDialog, wxDirDialog added; other common dialogs now