X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/28f15a1f70e45c276740c70c518efd03fcd1c227..dad909f709335a05daea6a04d895bb492c4eb670:/docs/changes.txt diff --git a/docs/changes.txt b/docs/changes.txt index 153d114869..ff1fcb5b43 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -8,12 +8,71 @@ INCOMPATIBLE CHANGES SINCE 2.8.x Changes in behaviour not resulting in compilation errors, please read this! --------------------------------------------------------------------------- +- Default location of wxFileConfig files has changed under Windows, you will + need to update your code if you access these files directly. + +- wxWindow::IsEnabled() now returns false if a window parent (and not + necessarily the window itself) is disabled, new function IsThisEnabled() + with the same behaviour as old IsEnabled() was added. + +- Generating wxNavigationKeyEvent events doesn't work any more under wxGTK (and + other platforms in the future), use wxWindow::Navigate() or NavigateIn() + instead. + +- Sizers distribute only the extra space between the stretchable items + according to their proportions and not all available space. We believe the + new behaviour corresponds better to user expectations but if you did rely + on the old behaviour you will have to update your code to set the minimal + sizes of the sizer items to be in the same proportion as the items + proportions to return to the old behaviour. + 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 + +- 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 + code that depends on the result being wxChar. + +- The value returned by wxString::c_str() cannot be casted to non-const char* + or wchar_t* anymore. The solution is to use newly added wxString methods + char_str() (which returns a buffer convertible to char*) or wchar_str() + (which returns a buffer convertible to wchar_t*). These methods are + available in wxWidgets 2.8 series beginning with 2.8.4 as well. + +- The value returned by wxString::operator[] or wxString::iterator cannot be + used in switch statements anymore, because it's a class instance. Code like + this won't compile: + switch (str[i]) { ... } + and has to be replaced with this: + switch (str[i].GetValue()) { ... } + +- Return type of wxString::c_str() is now wxCStrData struct and not + const wxChar*. wxCStrData is implicitly convertible to const char* and + const wchar_t*, so this only presents a problem if the compiler cannot + convert the type. In particular, Borland C++ and DigitalMars compilers + don't correctly convert operator?: operands to the same type and fail with + compilation error instead. This can be worked around by explicitly casting + to const wxChar*: + wxLogError(_("error: %s"), !err.empty() ? (const wxChar*)err.c_str() : "") + +- DigitalMars compiler has a bug that prevents it from using + wxUniChar::operator bool in conditions and it erroneously reports type + conversion ambiguity in expressions such as this: + for ( wxString::const_iterator p = s.begin(); *p; ++p ) + This can be worked around by explicitly casting to bool: + for ( wxString::const_iterator p = s.begin(); (bool)*p; ++p ) + Deprecated methods and their replacements ----------------------------------------- +- wxCreateGreyedImage() deprecated, use wxImage::ConvertToGreyscale() instead. +- wxString::GetWriteBuf() and UngetWriteBuf() deprecated, using wxStringBuffer + or wxStringBufferLength instead. + Major new features in this release ---------------------------------- @@ -23,17 +82,140 @@ Major new features in this release All: -- Added wxEventBlocker class (Francesco Montorsi) -- Added wxFile/DirPickerCtrl::Get/SetFile/DirName() (Francesco Montorsi) -- Added wxSizerFlags::Top() and Bottom() +- Added wxJoin() and wxSplit() functions (Francesco Montorsi) +- Added wxMutex::LockTimeout() (Aleksandr Napylov) +- Added wxMemoryInputStream(wxInputStream&) ctor (Stas Sergeev) +- Implemented wxMemoryInputStream::CanRead() +- Added wxEXEC_BLOCK flag (Hank Schultz) +- Add support for wxStream-derived classes to wxRTTI (Stas Sergeev) +- Added wxStreamBuffer::Truncate() (Stas Sergeev) +- Allow using wxEventLoop in console applications (Lukasz Michalski) + +All (GUI): + +- Added wxH[V]ScrolledWindow (Brad Anderson, Bryan Petty) +- 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 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. +- Implemented background colour in wxRichTextCtrl. +- Fixed crashes in helpview when opening a file. +- Set locale to the default in all ports, not just wxGTK +- Added wxJoystick::GetButtonState/Position() (Frank C Szczerba) +- Added wxGridUpdateLocker helper class (Evgeniy Tarassov) +- Support wxGRID_AUTOSIZE in wxGrid::SetRow/ColLabelSize() (Evgeniy Tarassov) +- Added wxWindow::NavigateIn() in addition to existing Navigate() +- Add support for tags to wxrc +- Support wxAPPLY and wxCLOSE in CreateStdDialogButtonSizer() (Marcin Wojdyr) +- Show standard options in wxCmdLineParser usage message (Francesco Montorsi) wxGTK: -- Implemented support for underlined fonts in wxStaticText +- Support for markup and ellipsization in wxStaticText (Francesco Montorsi) +- Native implementation for wxHyperlinkCtrl (Francesco Montorsi) +- Native keyboard navigation implementation +- Don't overwrite primary selection with clipboard and vice versa +- Implemented support for underlined fonts in wxStaticText. +- wxTopLevelWindow::SetSizeHints size increments now work. +- wxTopLevelWindow::GetSize() returns the size including the WM decorations. +- wxTopLevelWindow::GetClientSize() returns 0x0 when the window is minimized. +- Added support for colour cursors (Pascal Monasse). +- Setting foreground colour of single line wxTextCtrl now works +- Pass current control text to EVT_TEXT handler for wxSpinCtrl (John Ratliff) +- Added gtk.tlw.can-set-transparency system option + +wxMac: + +- Better IconRef support (Alan Shouls) +- 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) wxMSW: -- Fixed infinite loop in wxThread::Wait() in console applications +- Fixed infinite loop in wxThread::Wait() in console applications. +- Return the restored window size from GetSize() when window is minimized. +- wxCheckListBox now looks more natively, especially under XP (Marcin Malich) + +wxX11: + +- Added mouse wheel support (David Hart) +- Make Enter key activate the default button (David Hart) + + +2.8.4 +----- + +All: + +- Fix bug in wxFileConfig when recreating a group (Steven Van Ingelgem) +- Fix wxStringOutputStream::Write() in Unicode build when the argument + overlaps UTF-8 characters boundary +- Account for lines without newline at the end in wxExecute() + +All (Unix): + +- Handle socket shutdown by the peer correctly in wxSocket (Tim Kosse) + +All (GUI): + +- Allow status bar children in XRC (Edmunt Pienkowski) +- Fix memory leak in wxWizard when not using sizers for the page layout +- Added wxListCtrl::SetItemPtrData() +- wxHTML: Apply table background colour between the cells too (Michael Hieke) + +wxMSW: + +- Corrected wxStaticBox label appearance when its foreground colour was set: + it didn't respect font size nor background colour then (Juan Antonio Ortega) +- Don't lose combobox text when it's opened and closed (Kolya Kosenko) +- Corrected GetChecked() for events from checkable menu items (smanders) +- Fixed popup menus under Windows NT 4 +- Fixed bug in wxThread::Wait() in console applications introduced in 2.8.3 +- Support right-aligned/centered owner drawn items in wxListCtrl (troelsk) +- Compilation fixed with WXWIN_COMPATIBILITY_2_6==0 +- Fix wxComboCtrl colours under Windows Vista (Kolya Kosenko) + +wxGTK: + +- Fix infinite loop when adding a wxStaticText control to a toolbar +- Fix wxNO_BORDER style for wxRadioBox (David Hart) +- Fix wxTextCtrl::GetLineText() for empty lines (Marcin Wojdyr) + +wxMac: + +- Fix wxComboBox::SetSelection(wxNOT_FOUND) (Adrian Secord) + +wxUniv: + +- Fix wxTextCtrl::SetSelection(-1, -1) to behave as documented (Anders Larsen) +- Fix wxComboBox::SetSelection(wxNOT_FOUND) +- Fix setting background colour for controls with transparent background + + +2.8.3 +----- + +All: + +- Shut down the sockets gracefully (Sergio Aguayo) +- Fix extra indentation in wxHTML_ALIGN_JUSTIFY display (Chacal) + +wxMac: + +- Corrected top border size for wxStaticBox with empty label (nusi) + +wxMSW: + +- Fixed wxFileName::GetSize() for large files + +wxGTK: + +- Fixed handling of accelerators using PageUp/Down keys 2.8.2 @@ -41,25 +223,41 @@ wxMSW: All: -- Added wxSizerFlags::Shaped() and FixedMinSize() methods -- Added wxCSConv::IsOk() (Manuel Martin) -- Added wxDateTime::GetDateOnly() -- Made wxTextFile work with unseekable files again (David Hart) -- Added wxCONFIG_USE_SUBDIR flag to wxFileConfig (Giuseppe Bilotta) -- Added wxSearchCtrl::[Get|Set]DescriptiveText +- Added wxSizerFlags::Shaped() and FixedMinSize() methods. +- Added wxCSConv::IsOk() (Manuel Martin). +- Added wxDateTime::GetDateOnly(). +- Made wxTextFile work with unseekable files again (David Hart). +- Added wxCONFIG_USE_SUBDIR flag to wxFileConfig (Giuseppe Bilotta). +- Added wxSearchCtrl::[Get|Set]DescriptiveText. +- Fixed detection of number of processors under Linux 2.6 +- Fixed Base64 computation in wxHTTP (p_michalczyk) +- Fix handling of wxSOCKET_REUSEADDR in wxDatagramSocket (troelsk) + +Unix Ports: + +- Fixed crash in wxGetUserName() in Unicode build wxMSW -- Fix lack of spin control update event when control lost focus -- Corrected drawing of bitmaps for disabled menu items +- Fix lack of spin control update event when control lost focus. +- Corrected drawing of bitmaps for disabled menu items. + +wxGTK + +- Fix hang on startup when using GTK+ options in Unicode build wxMac -- Added support for the wxFRAME_FLOAT_ON_PARENT style +- Fix position of the centered windows (didn't take menu bar size into account) +- Added support for the wxFRAME_FLOAT_ON_PARENT style. wxX11: -- Don't crash in wxWindow dtor if the window hadn't been really Create()d +- Don't crash in wxWindow dtor if the window hadn't been really Create()d. + +wxUniv: + +- Fixed wxComboBox always sorted. 2.8.1 @@ -67,25 +265,25 @@ wxX11: All: -- Fix compilation with wxUSE_STL=1 -- wxGrid::GetBestSize() returns same size the grid would have after AutoSize() -- Added wxTreeCtrl::CollapseAll[Children]() and IsEmpty() (Francesco Montorsi) -- Several RTL-related positioning fixes (Diaa Sami) -- Fix wxConfig::DeleteGroup() for arguments with trailing slash (David Hart) -- Fix memory leak in wxGrid::ShowCellEditControl() (Christian Sturmlechner) +- Fix compilation with wxUSE_STL=1. +- wxGrid::GetBestSize() returns same size the grid would have after AutoSize(). +- Added wxTreeCtrl::CollapseAll[Children]() and IsEmpty() (Francesco Montorsi). +- Several RTL-related positioning fixes (Diaa Sami). +- Fix wxConfig::DeleteGroup() for arguments with trailing slash (David Hart). +- Fix memory leak in wxGrid::ShowCellEditControl() (Christian Sturmlechner). wxMSW: -- Fixed compilation with Borland C++ in Unicode mode but without MSLU -- Show taskbar icon menu on right button release, not press +- Fixed compilation with Borland C++ in Unicode mode but without MSLU. +- Show taskbar icon menu on right button release, not press. wxGTK: -- Don't crash if command line is not valid UTF-8 (Unicode build only) +- Don't crash if command line is not valid UTF-8 (Unicode build only). wxUniv: -- It is now possible to set background colour of wxStaticText +- It is now possible to set background colour of wxStaticText. 2.8.0 @@ -93,27 +291,27 @@ wxUniv: All: -- Added wxSearchCtrl (Vince Harron) -- wxCSConv("UTF-16/32") now behaves correctly, i.e. same as wxMBConvUTF16/32 -- wxArrayString::Alloc() now works as reserve() and doesn't clear array contents +- Added wxSearchCtrl (Vince Harron). +- wxCSConv("UTF-16/32") now behaves correctly, i.e. same as wxMBConvUTF16/32. +- wxArrayString::Alloc() now works as reserve() and doesn't clear array contents. - Fixed long standing bug in wxFileConfig groups renaming (Antti Koivisto). - New option wxFS_READ | wxFS_SEEKABLE for wxFileSystem::OpenFile() to return a stream that is seekable. -- Fixed bug in wxCalendarCtrl::HitTest() when clicking on month change arrows -- Added wxWindow::GetWindowBorderSize() and corrected wxTreeCtrl::GetBestSize() - for a control with borders (Tim Kosse) +- Fixed bug in wxCalendarCtrl::HitTest() when clicking on month change arrows. +- Added wxWindow::GetWindowBorderSize() and corrected wxTreeCtrl::GetBestSize(). + for a control with borders (Tim Kosse). wxMSW: - Fixed version script problems when using configure with cygwin/mingw32. - Use system default paper size for printing instead of A4. -- Fix (harmless) assert in virtual list control under Vista +- Fix (harmless) assert in virtual list control under Vista. - Fix colours when converting wxBitmap with alpha to wxImage (nusi). wxGTK: -- Allow dynamically changing most of text control styles -- Enable use of libgnomeprintui by default in configure +- Allow dynamically changing most of text control styles. +- Enable use of libgnomeprintui by default in configure. 2.7.2