-wxWindows 2 Change Log
-----------------------
+----------------------------
+wxWindows 2.5/2.6 Change Log
+----------------------------
+
+INCOMPATIBLE CHANGES SINCE 2.4.x
+================================
+
+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)
+- fixed bug with deleting entries at root level in wxFileConfig
+
+wxBase:
+
+- added Watcom makefiles
+
+All GUI ports:
+
+- added alpha channel support to wxImage
+- added wxCLOSE_BOX style for dialogs and frames
+- added wxSplitterWindow handler 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)
+- 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)
+
+- changed to type-safe wxSizerItemList for wxSizer child items
+ Deprecated:
+ wxSizer::Remove( wxWindow* )
+ - it does not function as Remove would usually be expected to
+ and destroy the window, use Detach instead
+ wxSizer::GetOption(),
+ wxSizer::SetOption()
+ - wxSizer 'option' parameter was renamed 'proportion' to better
+ reflect its action, use Get/SetProportion instead
+ wxKeyEvent::KeyCode()
+ - use GetKeyCode instead
+ wxList:: Number, First, Last, Nth
+ - use typesafe GetCount, GetFirst, GetLast, Item instead
+ wxNode:: Next, Previous, Data
+ - use typesafe Get* instead
+ wxListBase::operator wxList&()
+ - use typesafe lists instead
+
+Unix:
+
+- fixed compilation on systems with zlib installed but < 1.1.3 version
+- fixed compilation on Solaris 7 with large files support enabled
+
+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
+
+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 workign 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)
+
+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
+
+wxUniv:
+
+- controls in toolbars now supported
+
+wxHTML:
+
+- added SetFonts to HTML printing classes (Adrian Philip Look)
+
+
+OLD CHANGES
+===========
INCOMPATIBLE CHANGES SINCE 2.2.x
================================
your code without this define as it won't be default any longer in
2.6 release.
+ NB: if you want to build your program with different major versions
+ of wxWindows you will probably find the wxCHECK_VERSION() macro
+ (see the documentation) useful.
+
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
- 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
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
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
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):
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
- 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 (use of wxTheFontMapper is now
+ deprecated)
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()
- 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)
- 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:
- 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
- implemented wxChoice::Delete()
- fixed bad memory leak in wxFileDialog (Chris Elliott)
- made internal GC pool dynamically growable
+- added GTK+ 2 and Unicode support
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