]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/changes.txt
make it posible to change the compiler part of objects directory by setting COMPILER_...
[wxWidgets.git] / docs / changes.txt
index 5546f5cc0eebc9b17c188717309981f42ba36af2..ff1fcb5b43b333c5dbe494299358bb231773a0f1 100644 (file)
@@ -8,12 +8,64 @@ 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
 -----------------------------------------
 
@@ -30,6 +82,21 @@ Major new features in this release
 
 All:
 
+- 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().
@@ -37,36 +104,108 @@ All:
 - Fixed tab-related drawing and hit-testing bugs in wxRichTextCtrl.
 - Implemented background colour in wxRichTextCtrl.
 - Fixed crashes in helpview when opening a file.
-- Added wxMutex::LockTimeout() (Aleksandr Napylov)
 - 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 <data> tags to wxrc
+- Support wxAPPLY and wxCLOSE in CreateStdDialogButtonSizer() (Marcin Wojdyr)
+- Show standard options in wxCmdLineParser usage message (Francesco Montorsi)
 
 wxGTK:
 
+- 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.
 - 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
 -----
 
-wxMac
+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)
 
@@ -74,6 +213,10 @@ wxMSW:
 
 - Fixed wxFileName::GetSize() for large files
 
+wxGTK:
+
+- Fixed handling of accelerators using PageUp/Down keys
+
 
 2.8.2
 -----