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