]> git.saurik.com Git - wxWidgets.git/blame - docs/changes.txt
put refdata virtuals in the right class this time
[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
b1f3b29c
VZ
11Changes in behaviour which may result in compilation errors
12-----------------------------------------------------------
13
c1dc9f83
VZ
14- WXWIN_COMPATIBILITY_2_4 doesn't exist any more, please update your code if
15 you still relied on features deprecated since version 2.4
16
5ec9d741
VZ
17Deprecated methods and their replacements
18-----------------------------------------
19
13dd765c 20- wxCreateGreyedImage() deprecated, use wxImage::ConvertToGreyscale() instead.
7890307b
VS
21- wxString::GetWriteBuf() and UngetWriteBuf() deprecated, using wxStringBuffer
22 or wxStringBufferLength instead.
9ac43913 23
5ec9d741
VZ
24Major new features in this release
25----------------------------------
26
12dc0a01 27
ccee328e
VZ
282.9.0
29-----
30
ac6e0eb1
VZ
31All:
32
13dd765c
JS
33- Added wxEventBlocker class (Francesco Montorsi).
34- Added wxFile/DirPickerCtrl::Get/SetFile/DirName() (Francesco Montorsi).
35- Added wxSizerFlags::Top() and Bottom().
36- Slovak translation added.
37- Fixed tab-related drawing and hit-testing bugs in wxRichTextCtrl.
38- Implemented background colour in wxRichTextCtrl.
39- Fixed crashes in helpview when opening a file.
696d13ee 40- Added wxMutex::LockTimeout() (Aleksandr Napylov)
ccee328e 41
ac6e0eb1
VZ
42wxGTK:
43
c105dda0 44- Native implementation for wxHyperlinkCtrl (Francesco Montorsi)
13dd765c
JS
45- Implemented support for underlined fonts in wxStaticText.
46- wxTopLevelWindow::SetSizeHints size increments now work.
47- wxTopLevelWindow::GetSize() returns the size including the WM decorations.
48- wxTopLevelWindow::GetClientSize() returns 0x0 when the window is minimized.
49- Added support for colour cursors (Pascal Monasse).
532ae0f6 50- Setting foreground colour of single line wxTextCtrl now works
ac6e0eb1 51
e570a44b
VZ
52wxMSW:
53
13dd765c
JS
54- Fixed infinite loop in wxThread::Wait() in console applications.
55- Return the restored window size from GetSize() when window is minimized.
ac6e0eb1 56
12dc0a01 57
e816f5c7
VZ
582.8.2
59-----
60
d95527de
VZ
61All:
62
13dd765c
JS
63- Added wxSizerFlags::Shaped() and FixedMinSize() methods.
64- Added wxCSConv::IsOk() (Manuel Martin).
65- Added wxDateTime::GetDateOnly().
66- Made wxTextFile work with unseekable files again (David Hart).
67- Added wxCONFIG_USE_SUBDIR flag to wxFileConfig (Giuseppe Bilotta).
68- Added wxSearchCtrl::[Get|Set]DescriptiveText.
85bf679a 69- Fixed detection of number of processors under Linux 2.6
886f61ca 70- Fixed Base64 computation in wxHTTP (p_michalczyk)
28bf2f3c 71- Fix handling of wxSOCKET_REUSEADDR in wxDatagramSocket (troelsk)
d95527de 72
e816f5c7
VZ
73wxMSW
74
13dd765c
JS
75- Fix lack of spin control update event when control lost focus.
76- Corrected drawing of bitmaps for disabled menu items.
0d3997fd 77
c8db4e15
VZ
78wxGTK
79
80- Fix hang on startup when using GTK+ options in Unicode build
81
a0232aa5
RD
82wxMac
83
0d045709 84- Fix position of the centered windows (didn't take menu bar size into account)
13dd765c 85- Added support for the wxFRAME_FLOAT_ON_PARENT style.
a0232aa5 86
3aba082d
VZ
87wxX11:
88
13dd765c 89- Don't crash in wxWindow dtor if the window hadn't been really Create()d.
3aba082d 90
750040fa
WS
91wxUniv:
92
13dd765c 93- Fixed wxComboBox always sorted.
750040fa 94
e816f5c7 95
265db88d
VZ
962.8.1
97-----
98
5fe6c02b
VZ
99All:
100
13dd765c
JS
101- Fix compilation with wxUSE_STL=1.
102- wxGrid::GetBestSize() returns same size the grid would have after AutoSize().
103- Added wxTreeCtrl::CollapseAll[Children]() and IsEmpty() (Francesco Montorsi).
104- Several RTL-related positioning fixes (Diaa Sami).
105- Fix wxConfig::DeleteGroup() for arguments with trailing slash (David Hart).
106- Fix memory leak in wxGrid::ShowCellEditControl() (Christian Sturmlechner).
5fe6c02b 107
0ec8d8f7
VZ
108wxMSW:
109
13dd765c
JS
110- Fixed compilation with Borland C++ in Unicode mode but without MSLU.
111- Show taskbar icon menu on right button release, not press.
0ec8d8f7 112
265db88d
VZ
113wxGTK:
114
13dd765c 115- Don't crash if command line is not valid UTF-8 (Unicode build only).
265db88d 116
9c5fd8a3
VZ
117wxUniv:
118
13dd765c 119- It is now possible to set background colour of wxStaticText.
9c5fd8a3 120
265db88d 121
9129836e
VZ
1222.8.0
123-----
124
125All:
126
13dd765c
JS
127- Added wxSearchCtrl (Vince Harron).
128- wxCSConv("UTF-16/32") now behaves correctly, i.e. same as wxMBConvUTF16/32.
129- wxArrayString::Alloc() now works as reserve() and doesn't clear array contents.
bc2ce7a5 130- Fixed long standing bug in wxFileConfig groups renaming (Antti Koivisto).
c20267d8
MW
131- New option wxFS_READ | wxFS_SEEKABLE for wxFileSystem::OpenFile() to return
132 a stream that is seekable.
13dd765c
JS
133- Fixed bug in wxCalendarCtrl::HitTest() when clicking on month change arrows.
134- Added wxWindow::GetWindowBorderSize() and corrected wxTreeCtrl::GetBestSize().
135 for a control with borders (Tim Kosse).
9129836e 136
077c7880
VZ
137wxMSW:
138
bc2ce7a5 139- Fixed version script problems when using configure with cygwin/mingw32.
a7734bdf 140- Use system default paper size for printing instead of A4.
13dd765c 141- Fix (harmless) assert in virtual list control under Vista.
a7734bdf 142- Fix colours when converting wxBitmap with alpha to wxImage (nusi).
a7734bdf 143
927637fd
VZ
144wxGTK:
145
13dd765c
JS
146- Allow dynamically changing most of text control styles.
147- Enable use of libgnomeprintui by default in configure.
927637fd 148
077c7880 149
432efcb0
RD
1502.7.2
151-----
152
f8f6c91a
MW
153All:
154
155- Added wxFFile overload to wxFileName::CreateTemporaryFileName().
049e9de7 156- Added GetTempDir() to wxFileName and wxStandardPaths.
f068697b
MW
157- Added wxTar streams.
158- Added wxFilterFSHandler and wxArchiveFSHandler.
bc2ce7a5 159- Added wxString::ToLongLong() and ToULongLong().
f8f6c91a 160
0ec8d8f7 161All (GUI):
432efcb0
RD
162
163- wxMemoryDC constructor now optionally accepts a wxBitmap parameter,
164 calling SelectObject itself if a valid bitmap is passed.
19c9f36f
RD
165- Reverted wxBuffered[Paint]DC to pre 2.7.1 state, added
166 wxAutoBufferedPaintDC and wxAutoBufferedPaintDCFactory.
049e9de7
JS
167- Renamed wxProgressDialog::UpdatePulse() to just Pulse().
168- Added wxCollapsiblePane (Francesco Montorsi).
169- Added wxSimpleHtmlListBox (Francesco Montorsi).
96202eaa
JS
170- Printing framework fixes by Robert J. Lang. Bugs fixed,
171 wxPrinterDC::GetPaperRect() and other functions added to allow
172 easier printing implementation, and the documentation updated.
173- Many enhancements to wxRichTextCtrl including URL support,
174 formatting and symbol dialogs, print/preview, and better list
175 formatting.
bc2ce7a5
JS
176- Support for loading TGA files added (Seth Jackson).
177- Added wxTB_RIGHT style for right-aligned toolbars (Igor Korot).
0f11c233 178- wxHtmlWindow now generates events on link clicks (Francesco Montorsi).
bc2ce7a5 179- wxHtmlWindow now also generates wxEVT_COMMAND_TEXT_COPY event.
432efcb0 180
2baa2b0e
VZ
181Unix Ports:
182
183- Added autopackage for wxGTK and an example of using autopackage for a wx
049e9de7
JS
184 program (Francesco Montorsi).
185
186wxGTK:
2baa2b0e 187
4ff4d045 188- More RTL work.
049e9de7
JS
189- Support wxALWAYS_SHOW_SB.
190- Speed up MIME types loading. Only the GNOME database should be loaded under
191 GNOME etc. For this, the code queries the X11 session protocol.
96202eaa 192- wxCaret redraw problem during scrolling fixed.
432efcb0
RD
193
194
e63f19ba
VZ
1952.7.1
196-----
197
d1af8e2d
VZ
198All:
199
3306aec1
JS
200- Added wxDir::FindFirst() (Francesco Montorsi).
201- Added wxPlatformInfo class (Francesco Montorsi).
202- Added wxLocale::IsAvailable() (Creighton).
bc2ce7a5
JS
203- Added Malay translations (Mahrazi Mohd Kamal).
204- Added reference counting for wxVariant.
b7cacb43 205- For consistency, all classes having Ok() method now also have IsOk() one, use
049e9de7
JS
206 of the latter form is preferred although the former hasn't been deprecated yet.
207- Added wxFileName::Is(Dir|File)(Writ|Read|Execut)able() (Francesco Montorsi).
208- Added wxFileName::GetSize() and GetHumanReadableSize() (Francesco Montorsi).
209- Added wxSizer::Replace (Francesco Montorsi).
210- wxXmlDocument can now optionally preserve whitespace (Francesco Montorsi).
78041f2e
VZ
211- Added wxBookCtrl::ChangeSelection() and wxTextCtrl::ChangeValue() to provide
212 event-free alternatives to SetSelection() and SetValue() functions; see the
213 "Events generated by the user vs programmatically generated events" paragraph
049e9de7 214 in the "Event handling overview" topic for more info.
d1af8e2d 215
e63f19ba
VZ
216All (GUI):
217
3306aec1
JS
218- Support for right-to-left text layout (started by Diaa Sami during Google Summer of
219 Code, with a lot of help from Tim Kosse and others).
049e9de7
JS
220- wxAnimationCtrl added (Francesco Montorsi).
221- Added wxAboutBox() function for displaying the standard about dialog.
3306aec1
JS
222- Added wxID_PAGE_SETUP standard id.
223- Added wxSize::IncBy() and DecBy() methods.
049e9de7 224- Added wxTextCtrl::IsEmpty().
3306aec1
JS
225- Added file type parameter to wxTextCtrl::LoadFile, wxTextCtrl::SaveFile for
226 consistency with wxRichTextCtrl.
227- wxRichTextCtrl: fixed range out-by-one bug to be consistent with wxTextCtrl API,
228 fixed some attribute bugs and added wxRichTextStyleComboCtrl.
049e9de7
JS
229- Added wxWindow::IsDoubleBuffered().
230- Added wxHL_ALIGN_* flags to wxHyperlinkCtrl (Francesco Montorsi).
231- Added wxGauge::Pulse() and wxProgressDialog::UpdatePulse() (Francesco Montorsi).
e63f19ba 232
916eecaa
VZ
233wxMSW:
234
3306aec1 235- Implemented wxComboBox::SetEditable().
a0020fcd 236- wxSemaphore::Post() returns wxSEMA_OVERFLOW as documented (Christian Walther)
3306aec1
JS
237- Fixed a bug whereby static controls didn't use the correct text colour if the
238 parent's background colour had been set (most noticeable when switching to a
239 high-contrast theme).
049e9de7 240- Respect wxBU_EXACTFIT style in wxToggleButton (Alexander Borovsky).
916eecaa 241
95768535
MW
242wxMac:
243
244- Add parameter to the --enable-universal_binary configure option for the path
245 to the SDK.
246
ab73fe8d
VZ
247wxGTK:
248
3306aec1
JS
249- Automatically use stock items for menu items with standard ids.
250- Setting cursor now works for all controls.
049e9de7 251- Implemented right-to-left support.
ae6a64b6 252- Implemented left indentation and tab stops support in wxTextCtrl (Tim Kosse).
049e9de7 253- Fixed wxHTML rendering of underlined text of multiple words (Mart Raudsepp).
ab73fe8d 254
b48f51ca
VZ
255wxUniv:
256
049e9de7 257- Added wxTLW::UseNativeDecorations() and UseNativeDecorationsByDefault().
b48f51ca 258
e63f19ba 259
254e8e29
VZ
2602.7.0
261-----
262
42d0df00
VZ
263All:
264
7f0d9d71
JS
265- Added positional parameters support to wxVsnprintf() (Francesco Montorsi).
266- wx(F)File, wxTextFile and wxInputStreams recognize Unicode BOM now.
267- Many fixes for UTF-16/32 handling in Unicode builds.
b83d533a 268- wxLaunchDefaultBrowser() now supports wxBROWSER_NEW_WINDOW flag.
3af9f2de 269- Added wxStandardPaths::GetResourcesDir() and GetLocalizedResourcesDir()
7f0d9d71 270- Added wxStandardPaths::GetDocumentsDir() (Ken Thomases).
b83d533a 271- Added wxStringTokenizer::GetLastDelimiter(); improved documentation.
7f0d9d71
JS
272- Fixed wxTextFile in Unicode build.
273- Added possibility to specify dependencies for a wxModule.
c6bb9255
MW
274- Speed improvements to wxRegEx when matching is done in a loop such as
275 during a search and replace.
276- Fix regerror and regfree name conficts when built-in regex and system regex
277 are both used in the same program.
a5fa20cb
JS
278- Basic authentication supported added to wxHTTP.
279- wxCondition::WaitTimeout() now returns correct value when timeout occurs.
280- Fixed occasional wxThread cleanup crash.
281- Bug in wxLogStream::DoLogString in Unicode builds fixed.
282- Added support for memo fields to wxODBC.
283- Fixed Unicode builds using SunPro compiler by defining__WCHAR_TYPE__.
284- wxFileName now also looks for TMPDIR on Unix.
285- Fixed build error in list.h with VC++ 2005.
286- Fixed wxODBC buffer overflow problem in Unicode builds.
2decc3bd 287- Fixed wxSocketBase::InterruptWait on wxBase.
b83d533a
JS
288- Important code cleanup (Paul Cornett).
289- Added support for wxLongLong in wx stream classes (Mark Junker).
24f4fc23 290- wxSOCKET_REUSEADDR can be used with wxSocketClient.
480abc8f 291- Overloaded Connect() and SetLocal() methods for binding to local address/port.
7f0d9d71
JS
292- Albanian translation added (Besnik Bleta).
293- Assert messages now show the function in which assert failed.
294- wxApp::OnAssertFailure() should now be used instead the old wxApp::OnAssert().
295- Fixed several bugs in wxDateTime::ParseDate().
968f291b 296- The WXK*PRIOR and WXK*NEXT constants are now aliases for WXK*PAGEUP
6fa9383b 297 and WXK*PAGEDOWN. If you have switch statements that use both
968f291b 298 constants from a set then you need to remove the PRIOR/NEXT
6fa9383b 299 versions in order to eliminate compiler errors.
44c930eb
JG
300- Fixed bug where wxDateTime::Now() would sometimes return an incorrect value
301 the first time it was called.
7f0d9d71
JS
302- Added wxString::rbegin() and rend().
303- Added wxString::EndsWith().
635f2bad
KH
304- wxSocket::_Read continues reading from socket after exhausting pushback buffer.
305 Previously, only the buffer would be returned, even if more data was requested.
7f0d9d71
JS
306- Added wxPowerEvent (currently MSW-only).
307- Make wx-config compatible with Bourne shells.
3306aec1
JS
308- Fixed wxDb::Open(wxDbConnectInf) when using connection string (Hellwolf Misty).
309- Fixed crash in wxDb::Open() in Unicode build (Massimiliano Marretta).
310- Fixed wxTimeSpan::Format() for negative time spans.
311- Optionally count repeating wxLog messages instead of logging all (Lauri Nurmi).
42d0df00 312
c6ece595
VZ
313All (GUI):
314
3306aec1 315- New AUI (Advanced User Interface) library for docking windows and much more.
7f0d9d71 316- Added wxComboCtrl and wxOwnerDrawnComboBox (Jaakko Salli).
03a37db9 317- Added wxTreebook (uses a wxTreeCtrl to control pages).
7f0d9d71
JS
318- Added wxColour/Dir/File/Font/PickerCtrls (Francesco Montorsi).
319- Added wxDC::GradientFillLinear/Concentric().
320- Added wxHyperlinkCtrl (Francesco Montorsi).
321- Added clipboard events (wxEVT_COMMAND_TEXT_COPY/CUT/PASTE).
322- Allow to reorder wxGrid columns by drag-and-drop (Santiago Palacios).
323- Added wxRadioBox::SetItemToolTip().
324- Added support for CMYK JPEG images loading (Robert Wruck).
325- Added wxListCtrl::GetSubItemRect() and subitem hit testing (Agron Selimaj).
326- Added wxKeyEvent::GetModifiers().
5d7836c4 327- Added wxDialog::SetEscapeId().
f7c40316 328- wxItemContainerImmutable::FindString unified (affects wxRadioBox, wxListBox,
5d7836c4
JS
329 wxComboBox and wxChoice).
330- wxWindow::Fit() now works correctly for frames and dialogs too.
331- Added access to the border size between pages and controller in book
332 based controls (wxBookCtrlBase::Get/SetInternalBorder).
333- Added initial wxRichTextCtrl implementation.
d8fd7acb
WS
334- All book based controls (notebook, treebook etc.) share now the same
335 options for orientation (wxBK_TOP, wxBK_DEFAULT, ...) instead of duplicated
336 wxLB_TOP, wxNB_TOP, wxCHB_TOP, wxTBK_TOP.
3db52265
JS
337- Added parent window parameter to wxHelpController constructor
338 and added SetParentWindow/GetParentWindow.
60104cba 339- wxMultiChoiceDialog uses now wxCheckListBox if possible, wxListBox if not.
b83d533a 340- Added wxBitmapButton::SetHoverBitmap().
60fef964
WS
341- Access to titles through Get/SetTitle is available now only for top level
342 windows (wxDialog, wxFrame).
b83d533a 343- Fixed memory leak of pending events in wxEvtHandler.
7f0d9d71 344- Added wxRadioBox::IsItemEnabled/Shown().
3d941982 345- Added space after list item number in wxHTML.
3c115835 346- Implemented <sub> and <sup> handling in wxHTML (based on patch
b83d533a 347 by Sandro Sigala).
f14d6dd1 348- Added caption parameter to wxGetFontFromUser and wxGetColourFromUser.
7dd40b6f 349- Added wxGetMouseState function.
c3e5d4e2
JS
350- Added wxHtmlHelpWindow, wxHtmlHelpDialog and wxHtmlModalHelp classes,
351 allowing HTML help to be embedded in an application.
a5fa20cb
JS
352- wxCalendarCtrl positioning and hit-testing fixes for dimensions other than
353 best size.
d9170b47 354- wxCalendarCtrl colour schema changed and adjusted to system settings.
7f0d9d71 355- wxImage::Mirror() and GetSubBitmap() now support alpha (Mickey Rose).
a5fa20cb
JS
356- More checking of image validity before loading into wxImage.
357- Added wxImage::ConvertToGreyscale.
358- Added ability to use templates with static event tables
b83d533a
JS
359 with BEGIN_EVENT_TABLE_TEMPLATEn() macros.
360- Added play, pause, and state change events to wxMediaCtrl.
a5fa20cb 361- Added double-buffering to wxVListBox and fixed a scrolling issue.
fd0d619f 362- Added wxToolbook (uses a wxToolBar to control pages).
cc8bc5aa
JS
363- Added SetSheetStyle to wxPropertySheetDialog and allowed it to
364 behave like a Mac OS X settings dialog.
7cc1ad29
JS
365- Added <disabled> XRC tag for wxToolBar elements and <bg> for wxToolBar itself.
366- Fixed centering of top level windows on secondary displays.
367- Implemented wxDisplay::GetFromWindow() for platforms other than MSW.
b83d533a 368- UpdateUI handler can now show/hide the window too (Ronald Weiss).
0f30d8e3 369- More than one filter allowed in in wxDocTemplate filter.
b83d533a
JS
370- Added wxListBox::HitTest().
371- Added wxDisplay::GetClientArea().
894b93d3 372- Indices and counts in wxControlWithItems derived API are unsigned.
bc55e31b
VS
373- Added support for links to wxHtmlListBox; use code has to override
374 wxHtmlListBox::OnLinkClicked() to take advantage of it.
7f0d9d71 375- Added an easier to use wxMenu::AppendSubMenu().
40989e46 376- wxString <-> wxColour conversions in wxColour class (Francesco Montorsi).
7f0d9d71
JS
377- Fixed bug with ignoring blank lines in multiline wxGrid cell labels.
378- Added wxTextAttr::Merge() (Marcin Simonides).
379- Added wxTB_NO_TOOLTIPS style (Igor Korot).
380- Added wxGenericDirCtrl::CollapsePath() (Christian Buhtz).
70934138 381- Added wxTreeCtrl::ExpandAllChildren() (Christian Buhtz)
6b8f5d30 382- Fixed 64-bit issue in wxNotebook causing segfaults on Tru64 Unix.
7f0d9d71
JS
383- Made it possible to associate context help to a region of a window.
384- Added support for tabs in wxRichTextCtrl (Ashish More).
d8766675 385- Fixed problem with zoom setting in print preview.
3b2cb431 386- Moved wxRichTextCtrl from the advanced library to its own.
9804d540 387- wxNB_HITTEST_* flags renamed to wxBK_HITTEST_* to serve all book controls.
07880314 388- Added wxTopLevelWindow::SetTransparent and CanSetTransparent, with
50f3c41d 389 implementations (so far) for wxMSW and wxMac.
3306aec1
JS
390