]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/changes.txt
GCC 2.95.3 compilation fix.
[wxWidgets.git] / docs / changes.txt
index ccfc809cdad06c0114107cfc3b802866591a7e18..2b9b5340c609423385f317b653bd053fa8012646 100644 (file)
@@ -1,5 +1,185 @@
-wxWindows 2 Change Log
-----------------------
+----------------------------
+wxWindows 2.5/2.6 Change Log
+----------------------------
+
+INCOMPATIBLE CHANGES SINCE 2.4.x
+================================
+
+- wxFileType::GetIcon() returns wxIconLocation, not wxIcon
+
+
+DEPRECATED METHOD SINCE 2.4.x
+=============================
+
+Deprecated methods may still be used but will disappear in future wxWindows
+versions, please update your code to not use them.
+
+- wxDocManager::GetNoHistoryFiles() renamed to GetHistoryFilesCount()
+- wxSizer::Remove(wxWindow *), use Detach() instead [it is more clear]
+- wxSizer::Set/GetOption(): use Set/GetProportion() instead
+- wxKeyEvent::KeyCode(): use GetKeyCode instead
+- wxList::Number, First, Last, Nth: use GetCount, GetFirst/Last, Item instead
+- wxNode::Next, Previous, Data: use GetNext, GetPrevious, GetData instead
+- wxListBase::operator wxList&(): use typesafe lists instead
+- wxTheFontMapper, use wxFontMapper::Get() instead
+
+
+OTHER CHANGES
+=============
+
+2.5.0
+-----
+
+All:
+
+- added wxDateSpan::operator==() and !=() (Lukasz Michalski)
+- use true/false throughout the library instead of TRUE/FALSE
+- wxStopWatch::Start() resumes the stop watch if paused, as per the docs
+- added wxDirTraverser::OnOpenError() to customize the error handling
+- added wxArray::SetCount()
+- wxFile, wxFFile, wxTextFile and wxTempFile now all use UTF-8 encoding
+  by default in Unicode mode
+- bug in wxDateTime with timezones on systems with tm_gmtoff in struct tm fixed
+- added wx/math.h (John Labenski)
+- added Catalan translations (Pau Bosch i Crespo)
+- added Ukrainian translations (Eugene Manko)
+- fixed bug with deleting entries at root level in wxFileConfig
+- chkconf.h now includes platform-specific versions (for MSW
+  and Mac) which contain some tests that were in setup.h
+- Added event sink argument to wxEvtHandler::Connect()
+
+wxBase:
+
+- added Watcom makefiles
+- fixed bug with searching in sorted arrays (Jürgen Palm)
+
+All GUI ports:
+
+- added wxVScrolledWindow, wxVListBox and wxHtmlLbox classes
+- added alpha channel support to wxImage
+- added wxCLOSE_BOX style for dialogs and frames
+- added wxSplitterWindow and wxWizard handlers to XRC
+- added proportion to wxFlexGridSizer::AddGrowableRow/Col (Maxim Babitski)
+- added wxFlexGridSizer::SetFlexibleDirection() (Szczepan Holyszewski)
+- implemented GetEditControl for wxGenericTreeCtrl (Peter Stieber)
+- improved contrib/utils/convertrc parsing (David J. Cooke)
+- fixed handling of URLs and filenames in wxFileSystem
+- implemented alignment for wxGrid bool editor and renderer
+- support wxListCtrl columns alignment for all platforms and not just MSW
+- added wxToolBar Add/InsertTool(tool) (Janusz Piwowarski)
+- fixed user dash handling for MSW and GTK (Ken Edwards)
+- WXR resources can now be used in Unicode builds
+- 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: signal child window when toolbar is closed
+- In various places, changed tests for pathsep on last char of string to call
+  wxEndsWithPathSeparator(s)
+- Added to defs.h a couple of macros (wxPtrToULong & wxULongToPtr)
+- Minor improvements to document/view framework, including
+  delayed deletion of a document (until after the user has chosen
+  a new document), and more intelligent addition of filenames to
+  the file history, including not adding filenames if not using the
+  default extension for the template
+- Speeded up wxImage::Scale using fixed point arithmetic (Wade Brainerd)
+- Added BLOB support to wxDB (John Skiff)
+- Wizard now validates when pressing Back or Next
+- Implemented wxNotebook::DoGetBestSize so Fit now works
+- Added FindItemByPosition to wxMenu
+- wxTimer now derives from wxEvtHandler and is its own owner object by default
+- Extended wxTextAttr and added wxTextCtrl::GetStyle stub
+  to allow better rich text support.
+- implemented wxFlexGridSizer::Show() (Wade Brainerd)
+- Added m_ prefix to wxColourData and wxFontData members
+
+Unix:
+
+- fixed compilation on systems with zlib installed but < 1.1.3 version
+- fixed compilation on Solaris 7 with large files support enabled
+- added wxTaskBarIcon implementation for X11
+- added support for GNU/Hurd in configure
+
+wxGTK:
+
+- added support for label mnemonics to GTK+2 build (Michael Moss)
+- added native wxMessageDialog implementation for GTK+2 build
+- fixed wxMenu::Remove (John Skiff and Benjamin Williams)
+- made wxTextCtrl::EmulateKeyPress() work for Delete and Backspace
+- fixed wxTopLevelWindow::ShowFullScreen to work with kwin, IceWM and
+  window managers that support _NET_WM_STATE_FULLSCREEN
+- added wxEVT_MENU_OPEN event generation
+- fixed bug in generic file selector causing incomplete file extensions to
+  be appended to filenames with no extension
+- added SetSelection implementation for GTK+ 2
+
+wxMac:
+
+- generate wxEVT_SCROLL_THUMBRELEASE and wxEVT_SCROLLWIN_THUMBRELEASE events
+
+wxMSW:
+
+- possibility to use DIBs for wxBitmap implementation (Derry Bryson)
+- wxStaticBitmap doesn't stretch its bitmap any longer (like other ports)
+- support for accelerator keys in the owner drawn menus (Derry Bryson)
+- wxCaret::SetSize() doesn't hide the caret any longer as it used to
+- wxCheckListBox::Check() doesn't send CHECKLISTBOX_TOGGLE event any more
+- fixed bug with wxTR_EDIT_LABELS not working with wxTR_MULTIPLE
+- fixes for compilation with OpenWatcom compiler
+- fixed wxStaticText best size calculation (was wrong by '&' width)
+- fixed calling wxFrame::Maximize(FALSE) before the window is shown
+- all libraries built with makefile.g95 have a _min or _cyg suffix
+  (for MinGW and Cygwin)
+- When using DLL, wxLocalFSHandler was not being exported - added
+  WXEXPORTDLL
+- A wxEvtHandler object was not removed from wxPendingEvents on deletion.
+  wxPendingEventsLocker was being deleted in App before all wxEvtHandler
+  objects have been destroyed resulting in stale handler/lock
+  ptrs; fixed
+- Windows XP manifest is now included in wx.rc; it is no longer neccessary
+  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
+- Improved border handling so it no longer shows a thin and
+  sunken border under XP
+- partial fix for wxNotebook pages looking bad under XP: wxUSE_UXTHEME
+  enables XP theme engine code, and wxUSE_UXTHEME_AUTO tells
+  wxWindows to use the theme tab colour for control backgrounds.
+  Proper XP theme support is planned for 2.6
+- disable wxNB_RIGHT, wxNB_LEFT, wxNB_BOTTOM notebook styles
+  if the version of CommCtl doesn't support it (XP)
+- fixed release mode build with VC 7.x (Martin Ecker)
+
+wxMotif:
+
+- made wxFileDialog behaviour with complex wildcards more sensible (it still
+  does not support all the features other ports do); refer to wxFileDialog
+  documentation for a detailed explanation
+- implemented wxWakeUpIdle
+- for Motif 2.0, used the native combobox widget instead of the GPL'd
+  xmcombo; xmcombo is still used for Motif 1.x and Lesstif when compiled
+  with Motif 1.x compatibility
+- implemented wxToggleButton
+- wxRadioBox and wxStaticBox now use the default shadow (border) style
+  instead of a sunken border
+- implemented wxBitmapDataObject
+- finished wxClipboard implementation
+
+wxUniv:
+
+- controls in toolbars now supported
+
+wxHTML:
+
+- added text selection to wxHtmlWindow
+- added SetFonts to HTML printing classes (Adrian Philip Look)
+- it is now possible to force page break when printing by inserting
+  <div style="page-break-before:always"> into the markup (Greg Chicares)
+- wxHtmlWindow now uses double buffering to prevent flicker
+
+
+OLD CHANGES
+===========
 
 INCOMPATIBLE CHANGES SINCE 2.2.x
 ================================
@@ -49,7 +229,6 @@ wxBase:
   must modify YourApp::OnAssert() signature if you were using it to override
   the default assert handling.
 
-
 All (GUI):
 
 ! the event type constants are not constants any more but are dynamically
@@ -91,7 +270,7 @@ All (GUI):
 - wxGridCellAttrProvider class API changed, you will need to update your code
   if you derived any classes from it
 
-- wxImage::ComputeHistogram()'s signature changed to 
+- wxImage::ComputeHistogram()'s signature changed to
   unsigned long ComputeHistogram(wxImageHistogram&) const
 
 - wxEvtHandler cannot be copied/assigned any longer - this never worked but
@@ -116,12 +295,15 @@ All (GUI):
 wxMSW:
 
 ! build system changed: setup.h is not a static file in include/wx any more
-  but is created as part of the build process under lib/<toolkit>/wx/include
+  but is created as part of the build process under lib/<toolkit>/wx
   where <toolkit> is of the form (msw|univ)[dll][u][d]. You'll need to update
   the include path in your make/project files appropriately. Furthermore,
   xpm.lib is no longer used by wxMSW, it was superseded by the wxXPMDecoder
-  class. You'll need to remove all references to xpm.lib from your 
-  make/project files.
+  class. You'll need to remove all references to xpm.lib from your
+  make/project files. Finally, the library names have changed as well and now
+  use the following consistent naming convention: wxmsw[ver][u][d].(lib|dll)
+  where 'u' appears for Unicode version, 'd' -- for the debug one and version
+  is only present for the DLLs builds.
 
 - child frames appear in the taskbar by default now, use wxFRAME_NO_TASKBAR
   style to avoid it
@@ -168,11 +350,50 @@ wxThread and related classes:
 OTHER CHANGES
 =============
 
+2.4.0
+-----
+
+wxMSW:
+
+- fixed loss of client data in wxChoice::SetString()
+
+2.3.4
+-----
+
+All:
+
+- added (partial) Indonesian translations (Bambang Purnomosidi D. P.)
+- added wxSizer::Show()/Hide() (Carl Godkin)
+- fixed bugs in wxDateTime::SetToWeekDay()/GetWeek()
+
+Unix (Base/GUI):
+
+- minor OpenBSD compilation/linking fixes, now builds OOB under OpenBSD 3.1
+- don't include -I/usr/include nor -I/usr/local/include in wx-config output
+- shared library symbols are now versioned on platforms that support it (Linux)
+
+wxGTK:
+- Further work for GTK 2.0 and Unicode support.
+- Addition of native frame site grip.
+
+wxX11:
+- Unicode support through Pango library.
+
+wxMSW:
+
+- fixed crashes in wxListCtrl under XP
+- added context menu for rich edit wxTextCtrl
+
+wxHTML:
+
+- fixed wxHTML to work in Unicode build
+
 2.3.3
 -----
 
 wxBase:
 
+- building wxBase with Borland C++ is now supported (Michael Fieldings)
 - wxSemaphore class added, many fixed to wxCondition and wxThread (K.S. Sreeram)
 - fixes to the command line parsing error and usage messages
 - modified wxFileName::CreateTempFileName() to open the file atomically
@@ -183,11 +404,11 @@ wxBase:
   after (non standard) STL hash_map
 - wxLocale now works in Unicode mode
 - wxLocale can now load message catalogs in arbitrary encoding
-- fixed the bug related to the redrawing on resize introduced in 2.3.2
-- added static wxFontMapper::Get() accessor (use of wxTheFontMapper is now
-  deprecated)
 - added wxShutdown() function (Marco Cavallini)
 - added wxEXPLICIT macro
+- IPC classes improved and memory leaks fixed (Michael Fielding).
+  Global buffer removed, duplication in docs removed
+- debug new/free implementations made thread-safe
 
 Unix (Base/GUI):
 
@@ -212,7 +433,8 @@ All (GUI):
   wxHashTable
 - added IFF image handler
 - fixed using custom renderers in wxGrid which was broken in 2.3.2
-- support for multiple images in one file added to wxImage (TIFF, GIF and ICO formats)
+- support for multiple images in one file added to wxImage
+  (TIFF, GIF and ICO formats)
 - support for CUR and ANI files in wxImage added (Chris Elliott)
 - wxTextCtrl::GetRange() added
 - added wxGetFontFromUser() convenience function
@@ -226,19 +448,23 @@ All (GUI):
 - Added wxMouseCaptureChangedEvent
 - Added custom character filtering to wxTextValidator
 - wxTreeCtrl now supports incremental keyboard search
+- wxMessageOutput class added
 - wxHelpProvider::RemoveHelp added and called from ~wxWindowBase
   so that erroneous help strings are no longer found as the hash
   table fills up
 - updated libpng from 1.0.3 to 1.2.4
-- Added wxView::OnClosingDocument so the application can do
-  cleanup.
+- Added wxView::OnClosingDocument so the application can do cleanup.
 - generic wxListCtrl renamed to wxGenericListCtrl, wxImageList
   renamed to wxGenericImageList, so they can be used on wxMSW
   (Rene Rivera).
+- Added wxTreeEvent::IsEditCancelled so the application can tell
+  whether a label edit was cancelled.
+- added static wxFontMapper::Get() accessor
 
 wxMSW:
 
 - small appearance fixes for native look under Windows XP
+- fixed the bug related to the redrawing on resize introduced in 2.3.2
 - fixed multiple bugs in wxExecute() with IO redirection
 - refresh the buttons properly when the window is resized (Hans Van Leemputten)
 - huge (40*) speed up in wxMask::Create()
@@ -248,6 +474,7 @@ wxMSW:
 - fixed redraw problems in dynamically resized wxStaticText
 - improvements to wxWindows applications behaviour when the system colours
   are changed
+- choose implicit parent for the dialog boxes better
 - fixed wxProgressDialog for ranges > 65535
 - wxSpinButton and wxSpinCtrl now support full 32 bit range (if the version
   of comctl32.dll installed on the system supports it)
@@ -266,12 +493,17 @@ wxMSW:
 - fixed bugs in multiple selection wxCheckListBox
 - default button handling is now closer to expected
 - setting tooltips for wxSlider now works
+- disabling a parent window also disables all of its children (as in wxGTK)
 - multiple events avoided in wxComboBox
 - tooltip asserts avoided for read-only wxComboBox
 - fixed a race condition during a thread exit and a join
 - fixed a condition where a thread can hang during message/event processing
 - increased space between wxRadioBox label and first radio button
 - don't fail to register remaining window classes if one fails to register
+- wxFontDialog effects only turned on if a valid colour was
+  provided in wxFontData
+- Added wxTE_LEFT, wxTE_CENTRE and wxTE_RIGHT flags for text control alignment.
+- Bitmap printing uses 24 bits now, not 8.
 
 wxGTK:
 
@@ -279,7 +511,7 @@ wxGTK:
 - wxButton now honours wxBU_EXACTFIT
 - wxStaticBox now honours wxALIGN_XXX styles
 - added support for non alphanumeric simple character accelerators ('-', '=')
-- new behaviour for wxWindow::Refresh() as it now produces a delayed refresh. 
+- new behaviour for wxWindow::Refresh() as it now produces a delayed refresh.
   Call the new wxWindow::Update() to force an immediate update
 - support for more SGI hardware (12-bit mode among others)
 - fixed wxDC::Blit() to honour source DC's logical coordinates
@@ -287,6 +519,7 @@ wxGTK:
 - implemented wxChoice::Delete()
 - fixed bad memory leak in wxFileDialog (Chris Elliott)
 - made internal GC pool dynamically growable
+- added GTK+ 2 and Unicode support
 
 wxMotif:
 
@@ -298,6 +531,19 @@ wxMotif:
 - fixed wxSpinCtrl and wxStaticLine when used with sizers
 - wxStaticBitmap now shows transparent icons correctly
 
+wxX11:
+
+- added generic MDI implementation (Hans Van Leemputten)
+- first cut at wxSocket support (not yet working)
+
+wxMac:
+
+- Many improvements
+
+wxOS2:
+
+- First alpha-quality release
+
 wxHTML:
 
 - fixed wxHtmlHelpController's cache files handling on big endian machines