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