]> git.saurik.com Git - wxWidgets.git/blame - docs/changes.txt
added a macro for comparison size_t variables with literal constants, this is less...
[wxWidgets.git] / docs / changes.txt
CommitLineData
70cf18ef
VZ
1-------------------------------------------------------------------------------
2 wxWidgets Change Log
3-------------------------------------------------------------------------------
d643b80e 4
5ec9d741 5INCOMPATIBLE CHANGES SINCE 2.8.x
aae53500
VZ
6================================
7
b1f3b29c
VZ
8Changes in behaviour not resulting in compilation errors, please read this!
9---------------------------------------------------------------------------
10
466e87bd
VZ
11- Default location of wxFileConfig files has changed under Windows, you will
12 need to update your code if you access these files directly.
13
47a8a4d5
VZ
14- wxWindow::IsEnabled() now returns false if a window parent (and not
15 necessarily the window itself) is disabled, new function IsThisEnabled()
16 with the same behaviour as old IsEnabled() was added.
17
5644933f
VZ
18- Generating wxNavigationKeyEvent events doesn't work any more under wxGTK (and
19 other platforms in the future), use wxWindow::Navigate() or NavigateIn()
20 instead.
21
89064717
VZ
22- Sizers distribute only the extra space between the stretchable items
23 according to their proportions and not all available space. We believe the
24 new behaviour corresponds better to user expectations but if you did rely
25 on the old behaviour you will have to update your code to set the minimal
26 sizes of the sizer items to be in the same proportion as the items
27 proportions to return to the old behaviour.
28
b1f3b29c
VZ
29Changes in behaviour which may result in compilation errors
30-----------------------------------------------------------
31
c1dc9f83
VZ
32- WXWIN_COMPATIBILITY_2_4 doesn't exist any more, please update your code if
33 you still relied on features deprecated since version 2.4
34
c9f78968
VS
35- Return type of wxString::operator[] and wxString::iterator::operator* is no
36 longer wxChar (i.e. char or wchar_t), but wxUniChar. This is not a problem
37 in vast majority of cases because of conversion operators, but it can break
38 code that depends on the result being wxChar.
39
ef0f1387
VS
40- The value returned by wxString::c_str() cannot be casted to non-const char*
41 or wchar_t* anymore. The solution is to use newly added wxString methods
42 char_str() (which returns a buffer convertible to char*) or wchar_str()
43 (which returns a buffer convertible to wchar_t*). These methods are
44 available in wxWidgets 2.8 series beginning with 2.8.4 as well.
45
c9f78968
VS
46- The value returned by wxString::operator[] or wxString::iterator cannot be
47 used in switch statements anymore, because it's a class instance. Code like
48 this won't compile:
49 switch (str[i]) { ... }
50 and has to be replaced with this:
51 switch (str[i].GetValue()) { ... }
52
53- Return type of wxString::c_str() is now wxCStrData struct and not
54 const wxChar*. wxCStrData is implicitly convertible to const char* and
55 const wchar_t*, so this only presents a problem if the compiler cannot
56 convert the type. In particular, Borland C++ and DigitalMars compilers
57 don't correctly convert operator?: operands to the same type and fail with
58 compilation error instead. This can be worked around by explicitly casting
59 to const wxChar*:
60 wxLogError(_("error: %s"), !err.empty() ? (const wxChar*)err.c_str() : "")
61
52de37c7 62- wxCtime() and wxAsctime() return char*; this is incompatible with Unicode
5bce3e6f 63 build in wxWidgets 2.8 that returned wchar_t*.
52de37c7 64
c9f78968
VS
65- DigitalMars compiler has a bug that prevents it from using
66 wxUniChar::operator bool in conditions and it erroneously reports type
67 conversion ambiguity in expressions such as this:
68 for ( wxString::const_iterator p = s.begin(); *p; ++p )
69 This can be worked around by explicitly casting to bool:
70 for ( wxString::const_iterator p = s.begin(); (bool)*p; ++p )
71
d03dab2a 72- Virtual wxHtmlParser::AddText() takes wxString, not wxChar*, argument now.
5bce3e6f 73
ab29bb87 74- Funtions that took wxChar* arguments that could by NULL in wxWidgets 2.8.
d38f70b2 75 are deprecated and passing NULL to them won't compile anymore, wxEmptyString
ab29bb87 76 must be used instead.
d38f70b2 77
d03dab2a
VS
78- Removed insecure wxGets() and wxTmpnam() functions.
79
6a4cbac1
VS
80- Removed global GetLine() function from wx/protocol/protocol.h, use
81 wxProtocol::ReadLine() instead.
82
d03dab2a 83
5ec9d741
VZ
84Deprecated methods and their replacements
85-----------------------------------------
86
13dd765c 87- wxCreateGreyedImage() deprecated, use wxImage::ConvertToGreyscale() instead.
7890307b
VS
88- wxString::GetWriteBuf() and UngetWriteBuf() deprecated, using wxStringBuffer
89 or wxStringBufferLength instead.
d0bc78e2
VZ
90- wxDIRCTRL_SHOW_FILTERS style is deprecated, filters are alwsys shown if
91 specified so this style should simply be removed
724b119a
VZ
92- wxDocManager::MakeDefaultName() replaced by MakeNewDocumentName() and
93 wxDocument::GetPrintableName() with GetUserReadableName() which are simpler
94 to use
288b6107
VS
95- wxXmlProperty class was renamed to wxXmlAttribute in order to use standard
96 terminology. Corresponding wxXmlNode methods were renamed to use
97 "Attribute" instead of "Property" or "Prop" in their names.
d0bc78e2 98
9ac43913 99
5ec9d741
VZ
100Major new features in this release
101----------------------------------
102
12dc0a01 103
ccee328e
VZ
1042.9.0
105-----
106
ac6e0eb1
VZ
107All:
108
abbb59e8
VZ
109- Added wxJoin() and wxSplit() functions (Francesco Montorsi)
110- Added wxMutex::LockTimeout() (Aleksandr Napylov)
111- Added wxMemoryInputStream(wxInputStream&) ctor (Stas Sergeev)
112- Implemented wxMemoryInputStream::CanRead()
bc855d09 113- Added wxEXEC_BLOCK flag (Hank Schultz)
6285e36b 114- Add support for wxStream-derived classes to wxRTTI (Stas Sergeev)
df18cc7a 115- Added wxStreamBuffer::Truncate() (Stas Sergeev)
b46b1d59 116- Allow using wxEventLoop in console applications (Lukasz Michalski)
ba0f12ef 117- Added functions for Base64 en/decoding (Charles Reimers)
5814e8ba 118- Added support for binary data to wxConfig (Charles Reimers)
cde76cf2 119- Added functions for atomically inc/decrementing integers (Armel Asselin)
30519b02
VZ
120- wxLogInterposer has been added to replace wxLogPassThrough and new
121 wxLogInterposerTemp was added
60edcf45 122- Added support for broadcasting to UDP sockets (Andrew Vincent)
abbb59e8 123
bd630206
VZ
124All (Unix):
125
126- Added wx-config --optional-libs command line option (John Labenski)
127
abbb59e8
VZ
128All (GUI):
129
f18eaf26 130- Added wxH[V]ScrolledWindow (Brad Anderson, Bryan Petty)
e3b81044 131- Added wxDC::StretchBlit() for wxMac and wxMSW (Vince Harron)
5ebe4b5b 132- Added support for drop down toolbar buttons (Tim Kosse)
cdb11cb9 133- Added support for labels for toolbar controls (Vince Harron)
2afb9e16 134- Added wxMessageDialog::SetMessage() and SetExtendedMessage()
13dd765c
JS
135- Added wxEventBlocker class (Francesco Montorsi).
136- Added wxFile/DirPickerCtrl::Get/SetFile/DirName() (Francesco Montorsi).
137- Added wxSizerFlags::Top() and Bottom().
138- Slovak translation added.
139- Fixed tab-related drawing and hit-testing bugs in wxRichTextCtrl.
140- Implemented background colour in wxRichTextCtrl.
141- Fixed crashes in helpview when opening a file.
d774f916 142- Set locale to the default in all ports, not just wxGTK
e6733873 143- Added wxJoystick::GetButtonState/Position() (Frank C Szczerba)
b62f94ff 144- Added wxGridUpdateLocker helper class (Evgeniy Tarassov)
733f486a 145- Support wxGRID_AUTOSIZE in wxGrid::SetRow/ColLabelSize() (Evgeniy Tarassov)
5644933f 146- Added wxWindow::NavigateIn() in addition to existing Navigate()
abbb59e8 147- Add support for <data> tags to wxrc
aa0f7b67 148- Support wxAPPLY and wxCLOSE in CreateStdDialogButtonSizer() (Marcin Wojdyr)
d3a0a0ee 149- Show standard options in wxCmdLineParser usage message (Francesco Montorsi)
bc5e942b 150- Added wxRect::operator+ (union) and * (intersection) (bdonner)
ccee328e 151
ac6e0eb1
VZ
152wxGTK:
153
39bc0347 154- Support for markup and ellipsization in wxStaticText (Francesco Montorsi)
c105dda0 155- Native implementation for wxHyperlinkCtrl (Francesco Montorsi)
5644933f 156- Native keyboard navigation implementation
eddb9644 157- Don't overwrite primary selection with clipboard and vice versa
13dd765c
JS
158- Implemented support for underlined fonts in wxStaticText.
159- wxTopLevelWindow::SetSizeHints size increments now work.
160- wxTopLevelWindow::GetSize() returns the size including the WM decorations.
161- wxTopLevelWindow::GetClientSize() returns 0x0 when the window is minimized.
162- Added support for colour cursors (Pascal Monasse).
cf5d5057 163- Pass current control text to EVT_TEXT handler for wxSpinCtrl (John Ratliff)
a95a6eb4 164- Added gtk.tlw.can-set-transparency system option
ac6e0eb1 165
4dd25308
VZ
166wxMac:
167
52734360 168- Better IconRef support (Alan Shouls)
2afb9e16 169- Added support for changing button labels in wxMessageDialog (Gareth Simpson)
4dd25308 170- Fix duplicate (empty) help menu in non-English programs (Andreas Jacobs)
7816e624 171- Allow accelerators to be used with buttons too (Ryan Wilcox)
0597e7f9 172- Support resource forks in wxCopyFile() (Hank Schultz)
4dd25308 173
e570a44b
VZ
174wxMSW:
175
13dd765c
JS
176- Fixed infinite loop in wxThread::Wait() in console applications.
177- Return the restored window size from GetSize() when window is minimized.
ff0d9d83 178- wxCheckListBox now looks more natively, especially under XP (Marcin Malich)
ac6e0eb1 179
2cdb6fdb
VZ
180wxX11:
181
182- Added mouse wheel support (David Hart)
28117f24 183- Make Enter key activate the default button (David Hart)
2cdb6fdb 184
12dc0a01 185
66160760
VZ
1862.8.5
187-----
188
57beadd2
VZ
189All (GUI):
190
c253e005 191- Added colour normalization to PNM image handler (Ray Johnston)
ba0f12ef
VZ
192- Fixed selecting part of word from right to left in wxHTML (Michael Hieke)
193- Selecting text in wxHTML with character precision was made easier, it's
194 enough to select half of a character (Michael Hieke)
195- Significantly improved startup times of XRC-based applications using
196 embedded resources on Unix (requires resources recompilation)
eb86e775 197- Fixed freeing of "static" alpha data in wxImage (Axel Gembe)
ab29bb87
VZ
198- Don't invalidate the font in SetNativeFontInfo[Desc]() if the string is
199 invalid, to conform to the documented behaviour (Langhammer)
0200fb27 200- Fixed wxXPMHandler::SaveFile for images with more than 92 colors.
57beadd2 201
66160760
VZ
202wxMSW:
203
94dd2287 204- Correct problem with page setup dialog when using landscape mode
66160760 205- Added msw.font.no-proof-quality system option, see manual for description
b013c971 206- Fix appearance of notebook with non-top tabs under Windows Vista
d4762753 207- Fixed bug with symbol resolving in wxStackWalker (Axel Gembe)
46753a7c 208- Fixed showing busy cursor for disabled windows and during wxExecute()
c70557da 209- Set the string of wxEVT_COMMAND_CHECKLISTBOX_TOGGLED events (Luca Cappa)
66160760 210
94dd2287
VZ
211wxGTK:
212
d6a41cc7 213- Setting foreground colour of single line wxTextCtrl now works
94dd2287
VZ
214- More work on setting defaults in GNOME print dialogs.
215- Also made landscape printing work as per wxMSW.
216- Add support for clipping in GNOME print backend.
217- Speed up wxBitmap::Rescale()
218- Add right button event for wxToolbar's tools (Tim Kosse)
1c871fe2 219- Don't unconditionally add wxCAPTION style to wxMiniFrame
0a904ed2 220- Generate wxEVT_COMMAND_LIST_END_LABEL_EDIT event even if label didn't change
94dd2287
VZ
221
222
b40bf35c
VZ
2232.8.4
224-----
225
defde6bc
VZ
226All:
227
228- Fix bug in wxFileConfig when recreating a group (Steven Van Ingelgem)
2c17722e
VZ
229- Fix wxStringOutputStream::Write() in Unicode build when the argument
230 overlaps UTF-8 characters boundary
8bdc8a9c 231- Account for lines without newline at the end in wxExecute()
defde6bc 232
f4854380
VZ
233All (Unix):
234
235- Handle socket shutdown by the peer correctly in wxSocket (Tim Kosse)
defde6bc
VZ
236
237All (GUI):
238
239- Allow status bar children in XRC (Edmunt Pienkowski)
781130bf 240- Fix memory leak in wxWizard when not using sizers for the page layout
9fcd0bf7 241- Added wxListCtrl::SetItemPtrData()
884898a7 242- wxHTML: Apply table background colour between the cells too (Michael Hieke)
f4854380 243
b40bf35c
VZ
244wxMSW:
245
246- Corrected wxStaticBox label appearance when its foreground colour was set:
247 it didn't respect font size nor background colour then (Juan Antonio Ortega)
8145496b
VZ
248- Don't lose combobox text when it's opened and closed (Kolya Kosenko)
249- Corrected GetChecked() for events from checkable menu items (smanders)
b40bf35c 250- Fixed popup menus under Windows NT 4
61053de4 251- Fixed bug in wxThread::Wait() in console applications introduced in 2.8.3
223b7504 252- Support right-aligned/centered owner drawn items in wxListCtrl (troelsk)
61053de4 253- Compilation fixed with WXWIN_COMPATIBILITY_2_6==0
721d1838 254- Fix wxComboCtrl colours under Windows Vista (Kolya Kosenko)
b40bf35c 255
378b042b
VZ
256wxGTK:
257
61053de4 258- Fix infinite loop when adding a wxStaticText control to a toolbar
378b042b 259- Fix wxNO_BORDER style for wxRadioBox (David Hart)
5440a04f 260- Fix wxTextCtrl::GetLineText() for empty lines (Marcin Wojdyr)
378b042b 261
4ff9366d
VZ
262wxMac:
263
264- Fix wxComboBox::SetSelection(wxNOT_FOUND) (Adrian Secord)
265
b5a3a81b
VZ
266wxUniv:
267
268- Fix wxTextCtrl::SetSelection(-1, -1) to behave as documented (Anders Larsen)
75a788ee 269- Fix wxComboBox::SetSelection(wxNOT_FOUND)
3b6c95eb 270- Fix setting background colour for controls with transparent background
b5a3a81b 271
b40bf35c 272
6fa2dd0e
VZ
2732.8.3
274-----
275
cd632a86
VZ
276All:
277
278- Shut down the sockets gracefully (Sergio Aguayo)
9076e56d 279- Fix extra indentation in wxHTML_ALIGN_JUSTIFY display (Chacal)
cd632a86
VZ
280
281wxMac:
6fa2dd0e
VZ
282
283- Corrected top border size for wxStaticBox with empty label (nusi)
284
5ab9534b
VZ
285wxMSW:
286
287- Fixed wxFileName::GetSize() for large files
288
f005ea42
VZ
289wxGTK:
290
291- Fixed handling of accelerators using PageUp/Down keys
292
5ab9534b 293
e816f5c7
VZ
2942.8.2
295-----
296
d95527de
VZ
297All:
298
13dd765c
JS
299- Added wxSizerFlags::Shaped() and FixedMinSize() methods.
300- Added wxCSConv::IsOk() (Manuel Martin).
301- Added wxDateTime::GetDateOnly().
302- Made wxTextFile work with unseekable files again (David Hart).
303- Added wxCONFIG_USE_SUBDIR flag to wxFileConfig (Giuseppe Bilotta).
304- Added wxSearchCtrl::[Get|Set]DescriptiveText.
85bf679a 305- Fixed detection of number of processors under Linux 2.6
886f61ca 306- Fixed Base64 computation in wxHTTP (p_michalczyk)
28bf2f3c 307- Fix handling of wxSOCKET_REUSEADDR in wxDatagramSocket (troelsk)
d95527de 308
69c928ef
VZ
309Unix Ports:
310
311- Fixed crash in wxGetUserName() in Unicode build
312
e816f5c7
VZ
313wxMSW
314
13dd765c
JS
315- Fix lack of spin control update event when control lost focus.
316- Corrected drawing of bitmaps for disabled menu items.
0d3997fd 317
c8db4e15
VZ
318wxGTK
319
320- Fix hang on startup when using GTK+ options in Unicode build
321
a0232aa5
RD
322wxMac
323
0d045709 324- Fix position of the centered windows (didn't take menu bar size into account)
13dd765c 325- Added support for the wxFRAME_FLOAT_ON_PARENT style.
a0232aa5 326
3aba082d
VZ
327wxX11:
328
13dd765c 329- Don't crash in wxWindow dtor if the window hadn't been really Create()d.
3aba082d 330
750040fa
WS
331wxUniv:
332
13dd765c 333- Fixed wxComboBox always sorted.
750040fa 334
e816f5c7 335
265db88d
VZ
3362.8.1
337-----
338
5fe6c02b
VZ
339All:
340
13dd765c
JS
341- Fix compilation with wxUSE_STL=1.
342- wxGrid::GetBestSize() returns same size the grid would have after AutoSize().
343- Added wxTreeCtrl::CollapseAll[Children]() and IsEmpty() (Francesco Montorsi).
344- Several RTL-related positioning fixes (Diaa Sami).
345- Fix wxConfig::DeleteGroup() for arguments with trailing slash (David Hart).
346- Fix memory leak in wxGrid::ShowCellEditControl() (Christian Sturmlechner).
5fe6c02b 347
0ec8d8f7
VZ
348wxMSW:
349
13dd765c
JS
350- Fixed compilation with Borland C++ in Unicode mode but without MSLU.
351- Show taskbar icon menu on right button release, not press.
0ec8d8f7 352
265db88d
VZ
353wxGTK:
354
13dd765c 355- Don't crash if command line is not valid UTF-8 (Unicode build only).
265db88d 356
9c5fd8a3
VZ
357wxUniv:
358
13dd765c 359- It is now possible to set background colour of wxStaticText.
9c5fd8a3 360
265db88d 361
9129836e
VZ
3622.8.0
363-----
364
365All:
366
13dd765c
JS
367- Added wxSearchCtrl (Vince Harron).
368- wxCSConv("UTF-16/32") now behaves correctly, i.e. same as wxMBConvUTF16/32.
369- wxArrayString::Alloc() now works as reserve() and doesn't clear array contents.
bc2ce7a5 370- Fixed long standing bug in wxFileConfig groups renaming (Antti Koivisto).
c20267d8
MW
371- New option wxFS_READ | wxFS_SEEKABLE for wxFileSystem::OpenFile() to return
372 a stream that is seekable.
13dd765c
JS
373- Fixed bug in wxCalendarCtrl::HitTest() when clicking on month change arrows.
374- Added wxWindow::GetWindowBorderSize() and corrected wxTreeCtrl::GetBestSize().
375 for a control with borders (Tim Kosse).
9129836e 376
077c7880
VZ
377wxMSW:
378
bc2ce7a5 379- Fixed version script problems when using configure with cygwin/mingw32.
a7734bdf 380- Use system default paper size for printing instead of A4.
13dd765c 381- Fix (harmless) assert in virtual list control under Vista.
a7734bdf 382- Fix colours when converting wxBitmap with alpha to wxImage (nusi).
a7734bdf 383
927637fd
VZ
384wxGTK:
385
13dd765c
JS
386- Allow dynamically changing most of text control styles.
387- Enable use of libgnomeprintui by default in configure.
927637fd 388
077c7880 389
432efcb0
RD
3902.7.2
391-----
392
f8f6c91a
MW
393All:
394
395- Added wxFFile overload to wxFileName::CreateTemporaryFileName().
049e9de7 396- Added GetTempDir() to wxFileName and wxStandardPaths.
f068697b
MW
397- Added wxTar streams.
398- Added wxFilterFSHandler and wxArchiveFSHandler.
bc2ce7a5 399- Added wxString::ToLongLong() and ToULongLong().
f8f6c91a 400
0ec8d8f7 401All (GUI):
432efcb0
RD
402
403- wxMemoryDC constructor now optionally accepts a wxBitmap parameter,
404 calling SelectObject itself if a valid bitmap is passed.
19c9f36f
RD
405- Reverted wxBuffered[Paint]DC to pre 2.7.1 state, added
406 wxAutoBufferedPaintDC and wxAutoBufferedPaintDCFactory.
049e9de7
JS
407- Renamed wxProgressDialog::UpdatePulse() to just Pulse().
408- Added wxCollapsiblePane (Francesco Montorsi).
409- Added wxSimpleHtmlListBox (Francesco Montorsi).
96202eaa
JS
410- Printing framework fixes by Robert J. Lang. Bugs fixed,
411 wxPrinterDC::GetPaperRect() and other functions added to allow
412 easier printing implementation, and the documentation updated.
413- Many enhancements to wxRichTextCtrl including URL support,
414 formatting and symbol dialogs, print/preview, and better list
415 formatting.
bc2ce7a5
JS
416- Support for loading TGA files added (Seth Jackson).
417- Added wxTB_RIGHT style for right-aligned toolbars (Igor Korot).
0f11c233 418- wxHtmlWindow now generates events on link clicks (Francesco Montorsi).
bc2ce7a5 419- wxHtmlWindow now also generates wxEVT_COMMAND_TEXT_COPY event.
432efcb0 420
2baa2b0e
VZ
421Unix Ports:
422
423- Added autopackage for wxGTK and an example of using autopackage for a wx
049e9de7
JS
424 program (Francesco Montorsi).
425
426wxGTK:
2baa2b0e 427
4ff4d045 428- More RTL work.
049e9de7
JS
429- Support wxALWAYS_SHOW_SB.
430- Speed up MIME types loading. Only the GNOME database should be loaded under
431 GNOME etc. For this, the code queries the X11 session protocol.
96202eaa 432- wxCaret redraw problem during scrolling fixed.
432efcb0
RD
433
434
e63f19ba
VZ
4352.7.1
436-----
437
d1af8e2d
VZ
438All:
439
3306aec1
JS
440- Added wxDir::FindFirst() (Francesco Montorsi).
441- Added wxPlatformInfo class (Francesco Montorsi).
442- Added wxLocale::IsAvailable() (Creighton).
bc2ce7a5
JS
443- Added Malay translations (Mahrazi Mohd Kamal).
444- Added reference counting for wxVariant.
b7cacb43 445- For consistency, all classes having Ok() method now also have IsOk() one, use
049e9de7
JS
446 of the latter form is preferred although the former hasn't been deprecated yet.
447- Added wxFileName::Is(Dir|File)(Writ|Read|Execut)able() (Francesco Montorsi).
448- Added wxFileName::GetSize() and GetHumanReadableSize() (Francesco Montorsi).
449- Added wxSizer::Replace (Francesco Montorsi).
450- wxXmlDocument can now optionally preserve whitespace (Francesco Montorsi).
78041f2e
VZ
451- Added wxBookCtrl::ChangeSelection() and wxTextCtrl::ChangeValue() to provide
452 event-free alternatives to SetSelection() and SetValue() functions; see the
453 "Events generated by the user vs programmatically generated events" paragraph
049e9de7 454 in the "Event handling overview" topic for more info.
d1af8e2d 455
e63f19ba
VZ
456All (GUI):
457
3306aec1
JS
458- Support for right-to-left text layout (started by Diaa Sami during Google Summer of
459 Code, with a lot of help from Tim Kosse and others).
049e9de7
JS
460- wxAnimationCtrl added (Francesco Montorsi).
461- Added wxAboutBox() function for displaying the standard about dialog.
3306aec1
JS
462- Added wxID_PAGE_SETUP standard id.
463- Added wxSize::IncBy() and DecBy() methods.
049e9de7 464- Added wxTextCtrl::IsEmpty().
3306aec1
JS
465- Added file type parameter to wxTextCtrl::LoadFile, wxTextCtrl::SaveFile for
466 consistency with wxRichTextCtrl.
467- wxRichTextCtrl: fixed range out-by-one bug to be consistent with wxTextCtrl API,
468 fixed some attribute bugs and added wxRichTextStyleComboCtrl.
049e9de7
JS
469- Added wxWindow::IsDoubleBuffered().
470- Added wxHL_ALIGN_* flags to wxHyperlinkCtrl (Francesco Montorsi).
471- Added wxGauge::Pulse() and wxProgressDialog::UpdatePulse() (Francesco Montorsi).
e63f19ba 472
916eecaa
VZ
473wxMSW:
474
3306aec1 475- Implemented wxComboBox::SetEditable().
a0020fcd 476- wxSemaphore::Post() returns wxSEMA_OVERFLOW as documented (Christian Walther)
3306aec1
JS
477- Fixed a bug whereby static controls didn't use the correct text colour if the
478 parent's background colour had been set (most noticeable when switching to a
479 high-contrast theme).
049e9de7 480- Respect wxBU_EXACTFIT style in wxToggleButton (Alexander Borovsky).
916eecaa 481
95768535
MW
482wxMac:
483
484- Add parameter to the --enable-universal_binary configure option for the path
485 to the SDK.
486
ab73fe8d
VZ
487wxGTK:
488
3306aec1
JS
489- Automatically use stock items for menu items with standard ids.
490- Setting cursor now works for all controls.
049e9de7 491- Implemented right-to-left support.
ae6a64b6 492- Implemented left indentation and tab stops support in wxTextCtrl (Tim Kosse).
049e9de7 493- Fixed wxHTML rendering of underlined text of multiple words (Mart Raudsepp).
ab73fe8d 494
b48f51ca
VZ
495wxUniv:
496
049e9de7 497- Added wxTLW::UseNativeDecorations() and UseNativeDecorationsByDefault().
b48f51ca 498
e63f19ba 499
254e8e29
VZ
5002.7.0
501-----
502
42d0df00
VZ
503All:
504
7f0d9d71
JS
505- Added positional parameters support to wxVsnprintf() (Francesco Montorsi).
506- wx(F)File, wxTextFile and wxInputStreams recognize Unicode BOM now.
507- Many fixes for UTF-16/32 handling in Unicode builds.
b83d533a 508- wxLaunchDefaultBrowser() now supports wxBROWSER_NEW_WINDOW flag.
3af9f2de 509- Added wxStandardPaths::GetResourcesDir() and GetLocalizedResourcesDir()
7f0d9d71 510- Added wxStandardPaths::GetDocumentsDir() (Ken Thomases).
b83d533a 511- Added wxStringTokenizer::GetLastDelimiter(); improved documentation.
7f0d9d71
JS
512- Fixed wxTextFile in Unicode build.
513- Added possibility to specify dependencies for a wxModule.
c6bb9255
MW
514- Speed improvements to wxRegEx when matching is done in a loop such as
515 during a search and replace.
516- Fix regerror and regfree name conficts when built-in regex and system regex
517 are both used in the same program.
a5fa20cb
JS
518- Basic authentication supported added to wxHTTP.
519- wxCondition::WaitTimeout() now returns correct value when timeout occurs.
520- Fixed occasional wxThread cleanup crash.
521- Bug in wxLogStream::DoLogString in Unicode builds fixed.
522- Added support for memo fields to wxODBC.
523- Fixed Unicode builds using SunPro compiler by defining__WCHAR_TYPE__.
524- wxFileName now also looks for TMPDIR on Unix.
525- Fixed build error in list.h with VC++ 2005.
526- Fixed wxODBC buffer overflow problem in Unicode builds.
2decc3bd 527- Fixed wxSocketBase::InterruptWait on wxBase.
b83d533a
JS
528- Important code cleanup (Paul Cornett).
529- Added support for wxLongLong in wx stream classes (Mark Junker).
24f4fc23 530- wxSOCKET_REUSEADDR can be used with wxSocketClient.
480abc8f 531- Overloaded Connect() and SetLocal() methods for binding to local address/port.
7f0d9d71
JS
532- Albanian translation added (Besnik Bleta).
533- Assert messages now show the function in which assert failed.
534- wxApp::OnAssertFailure() should now be used instead the old wxApp::OnAssert().
535- Fixed several bugs in wxDateTime::ParseDate().
968f291b 536- The WXK*PRIOR and WXK*NEXT constants are now aliases for WXK*PAGEUP
6fa9383b 537 and WXK*PAGEDOWN. If you have switch statements that use both
968f291b 538 constants from a set then you need to remove the PRIOR/NEXT
6fa9383b 539 versions in order to eliminate compiler errors.
44c930eb
JG
540- Fixed bug where wxDateTime::Now() would sometimes return an incorrect value
541 the first time it was called.
7f0d9d71
JS
542- Added wxString::rbegin() and rend().
543- Added wxString::EndsWith().
635f2bad
KH
544- wxSocket::_Read continues reading from socket after exhausting pushback buffer.
545 Previously, only the buffer would be returned, even if more data was requested.
7f0d9d71
JS
546- Added wxPowerEvent (currently MSW-only).
547- Make wx-config compatible with Bourne shells.
3306aec1
JS
548- Fixed wxDb::Open(wxDbConnectInf) when using connection string (Hellwolf Misty).
549- Fixed crash in wxDb::Open() in Unicode build (Massimiliano Marretta).
550- Fixed wxTimeSpan::Format() for negative time spans.
551- Optionally count repeating wxLog messages instead of logging all (Lauri Nurmi).
42d0df00 552
c6ece595
VZ
553All (GUI):
554
3306aec1 555- New AUI (Advanced User Interface) library for docking windows and much more.
7f0d9d71 556- Added wxComboCtrl and wxOwnerDrawnComboBox (Jaakko Salli).
03a37db9 557- Added wxTreebook (uses a wxTreeCtrl to control pages).
7f0d9d71
JS
558- Added wxColour/Dir/File/Font/PickerCtrls (Francesco Montorsi).
559- Added wxDC::GradientFillLinear/Concentric().
560- Added wxHyperlinkCtrl (Francesco Montorsi).
561- Added clipboard events (wxEVT_COMMAND_TEXT_COPY/CUT/PASTE).
562- Allow to reorder wxGrid columns by drag-and-drop (Santiago Palacios).
563- Added wxRadioBox::SetItemToolTip().
564- Added support for CMYK JPEG images loading (Robert Wruck).
565- Added wxListCtrl::GetSubItemRect() and subitem hit testing (Agron Selimaj).
566- Added wxKeyEvent::GetModifiers().
5d7836c4 567- Added wxDialog::SetEscapeId().
f7c40316 568- wxItemContainerImmutable::FindString unified (affects wxRadioBox, wxListBox,
5d7836c4
JS
569 wxComboBox and wxChoice).
570- wxWindow::Fit() now works correctly for frames and dialogs too.
571- Added access to the border size between pages and controller in book
572 based controls (wxBookCtrlBase::Get/SetInternalBorder).
573- Added initial wxRichTextCtrl implementation.
d8fd7acb
WS
574- All book based controls (notebook, treebook etc.) share now the same
575 options for orientation (wxBK_TOP, wxBK_DEFAULT, ...) instead of duplicated
576 wxLB_TOP, wxNB_TOP, wxCHB_TOP, wxTBK_TOP.
3db52265
JS
577- Added parent window parameter to wxHelpController constructor
578 and added SetParentWindow/GetParentWindow.
60104cba 579- wxMultiChoiceDialog uses now wxCheckListBox if possible, wxListBox if not.
b83d533a 580- Added wxBitmapButton::SetHoverBitmap().
60fef964
WS
581- Access to titles through Get/SetTitle is available now only for top level
582 windows (wxDialog, wxFrame).
b83d533a 583- Fixed memory leak of pending events in wxEvtHandler.
7f0d9d71 584- Added wxRadioBox::IsItemEnabled/Shown().
3d941982 585- Added space after list item number in wxHTML.
3c115835 586- Implemented <sub> and <sup> handling in wxHTML (based on patch
b83d533a 587 by Sandro Sigala).
f14d6dd1 588- Added caption parameter to wxGetFontFromUser and wxGetColourFromUser.
7dd40b6f 589- Added wxGetMouseState function.
c3e5d4e2
JS
590- Added wxHtmlHelpWindow, wxHtmlHelpDialog and wxHtmlModalHelp classes,
591 allowing HTML help to be embedded in an application.
a5fa20cb
JS
592- wxCalendarCtrl positioning and hit-testing fixes for dimensions other than
593 best size.
d9170b47 594- wxCalendarCtrl colour schema changed and adjusted to system settings.
7f0d9d71 595- wxImage::Mirror() and GetSubBitmap() now support alpha (Mickey Rose).
a5fa20cb
JS
596- More checking of image validity before loading into wxImage.
597- Added wxImage::ConvertToGreyscale.
598- Added ability to use templates with static event tables
b83d533a
JS
599 with BEGIN_EVENT_TABLE_TEMPLATEn() macros.
600- Added play, pause, and state change events to wxMediaCtrl.
a5fa20cb 601- Added double-buffering to wxVListBox and fixed a scrolling issue.
fd0d619f 602- Added wxToolbook (uses a wxToolBar to control pages).
cc8bc5aa
JS
603- Added SetSheetStyle to wxPropertySheetDialog and allowed it to
604 behave like a Mac OS X settings dialog.
7cc1ad29
JS
605- Added <disabled> XRC tag for wxToolBar elements and <bg> for wxToolBar itself.
606- Fixed centering of top level windows on secondary displays.
607- Implemented wxDisplay::GetFromWindow() for platforms other than MSW.
b83d533a 608- UpdateUI handler can now show/hide the window too (Ronald Weiss).
0f30d8e3 609- More than one filter allowed in in wxDocTemplate filter.
b83d533a
JS
610- Added wxListBox::HitTest().
611- Added wxDisplay::GetClientArea().
894b93d3 612- Indices and counts in wxControlWithItems derived API are unsigned.
bc55e31b
VS
613- Added support for links to wxHtmlListBox; use code has to override
614 wxHtmlListBox::OnLinkClicked() to take advantage of it.
7f0d9d71 615- Added an easier to use wxMenu::AppendSubMenu().
40989e46 616- wxString <-> wxColour conversions in wxColour class (Francesco Montorsi).
7f0d9d71
JS
617- Fixed bug with ignoring blank lines in multiline wxGrid cell labels.
618- Added wxTextAttr::Merge() (Marcin Simonides).
619- Added wxTB_NO_TOOLTIPS style (Igor Korot).
620- Added wxGenericDirCtrl::CollapsePath() (Christian Buhtz).
70934138 621- Added wxTreeCtrl::ExpandAllChildren() (Christian Buhtz)
6b8f5d30 622- Fixed 64-bit issue in wxNotebook causing segfaults on Tru64 Unix.
7f0d9d71
JS
623- Made it possible to associate context help to a region of a window.
624- Added support for tabs in wxRichTextCtrl (Ashish More).
d8766675 625- Fixed problem with zoom setting in print preview.
3b2cb431 626- Moved wxRichTextCtrl from the advanced library to its own.
9804d540 627- wxNB_HITTEST_* flags renamed to wxBK_HITTEST_* to serve all book controls.
07880314 628- Added wxTopLevelWindow::SetTransparent and CanSetTransparent, with
50f3c41d 629 implementations (so far) for wxMSW and wxMac.
3306aec1
JS
630