]>
Commit | Line | Data |
---|---|---|
1 | ------------------------------------------------------------------------------- | |
2 | wxWidgets Change Log | |
3 | ------------------------------------------------------------------------------- | |
4 | ||
5 | INCOMPATIBLE CHANGES SINCE 2.6.x | |
6 | ================================ | |
7 | ||
8 | Changes in behaviour not resulting in compilation errors, please read this! | |
9 | --------------------------------------------------------------------------- | |
10 | ||
11 | - For all wxInputStreams, Eof() becomes true after an attempt has been made | |
12 | to read _past_ the end of file. | |
13 | - wxFileName::DirExists() checks if the path of the file is a directory, not | |
14 | if the whole name is a directory. | |
15 | - wxDialog::CreateButtonSizer() may return NULL now, please see the manual. | |
16 | - wxStaticBoxSizer now deletes the associated wxStaticBox when it is deleted. | |
17 | - wxArray::Alloc() now works as reserve() and does not clear the array any more | |
18 | - Windows calling CaptureMouse() are now required to handle the | |
19 | wxEVT_MOUSE_CAPTURE_LOST event and not call ReleaseMouse() in this case. | |
20 | - wxInputStream::GetC() now returns an int in the range 0 - 255 on success | |
21 | instead of a char the range -128 - 127. | |
22 | ||
23 | ||
24 | Changes in behaviour which may result in compilation errors | |
25 | ----------------------------------------------------------- | |
26 | ||
27 | - Some classes (notably wxBitmap and wxImage) don't define operator==() as it | |
28 | used to work in somewhat unexpected way as it compared only internal pointers | |
29 | and not the object data. The code using it will have to be updated: | |
30 | * If the object was compared with wxNullXXX, use IsOk() method instead | |
31 | * If valid object need to be compared, use IsSameAs() to reproduce the old | |
32 | behaviour or change the code to avoid comparing bitmaps &c. | |
33 | - wxFontData::GetColour() now returns a const colour. | |
34 | - wxDC objects can't be created directly now (this never worked, now it doesn't | |
35 | even compile). | |
36 | - wxCHECK family of macros now must be followed by a semicolon. | |
37 | - wxMBConv::cMB2WC() and cWC2MB() take size of the input buffer and return | |
38 | length of the converted string in all cases now. | |
39 | - wxHtmlWindow::OnCellClicked() now returns bool. | |
40 | - wxHtmlCell::OnMouseClick() was deprecated and replaced with | |
41 | wxHtmlCell::ProcessMouseClick(); old code overriding OnMouseClick() will | |
42 | continue to work with WXWIN_COMPATIBILITY_2_6, but should be rewritten to | |
43 | use ProcessMouseClick(). | |
44 | - wxHtmlCell::GetCursor() was deprecated and replaced with | |
45 | wxHtmlCell::GetMouseCursor(); old code overriding GetCursor() will | |
46 | continue to work with WXWIN_COMPATIBILITY_2_6, but should be rewritten to | |
47 | use GetMouseCursor(). | |
48 | - wxHtmlCell::AdjustPagebreak() signature has changed, update your code if you | |
49 | override it. | |
50 | - wxFontEnumerator::GetFacenames() and GetEncodings() now return arrays and | |
51 | not pointers to arrays. | |
52 | - SetDefaultItem() method was moved from wxPanel to wxTopLevelWindow | |
53 | - wxDialog::OnOK/OnCancel() don't exist any more, use SetAffirmative/EscapeId() | |
54 | - wxPathList doesn't derive from (deprecated) wxStringList any more | |
55 | - wxGLContext class has no 1:1 coupling to a wxGLCanvas class any more. | |
56 | As a consequence, the class interface changed largely. Code updates, if | |
57 | any are required at all, are easy to accomplish though. | |
58 | ||
59 | ||
60 | Deprecated methods since 2.6.x and their replacements | |
61 | ----------------------------------------------------- | |
62 | ||
63 | - wxGetWorkingDirectory() deprecated in favour of wxGetCwd(). | |
64 | - wxDC::BeginDrawing() and wxDC::EndDrawing() deprecated, don't use them. | |
65 | - wxWindowBase::GetBestFittingSize --> wxWindowBase::GetEffectiveMinSize. | |
66 | - wxWindowBase::SetBestFittingSize --> wxWindowBase::SetInitialSize. | |
67 | - Seeking on a zip stream returned from wxFileSystem without using the new | |
68 | wxFS_SEEKABLE flags is deprecated. You can still seek, but use the flag. | |
69 | - Constructor wxZipInputStream(const wxString& archive, const wxString& file) | |
70 | deprecated in favour of wxFileSystem (other zip ctors are not deprecated). | |
71 | - wx{Dir|File}Dialog::{Set|Get}Style deprecated in favour of the generic | |
72 | wxWindow::{Set|Get}WindowStyle() | |
73 | ||
74 | ||
75 | Major new features in 2.8 release | |
76 | --------------------------------- | |
77 | ||
78 | - New AUI library supporting docking windows and much more. | |
79 | - New rich text control library implementing a generic wxRichTextCtrl, | |
80 | using only the wxWidgets API. Also includes formatting dialogs, conversion | |
81 | to HTML, and printing classes. | |
82 | - New wxComboCtrl class giving the ability to create custom, graphical | |
83 | comboboxes. Associated classes include wxOwnerDrawnComboBox, wxComboPopup | |
84 | and wxBitmapComboBox. | |
85 | - Further functionality including wxAnimationCtrl (moved from contrib/src/anim | |
86 | and enhanced), wxSimpleHtmlListBox, wxHyperlinkCtrl, wxColourPickerCtrl, | |
87 | wxDirPickerCtrl, wxFilePickerCtrl, wxFontPickerCtrl, wxCollapsiblePane, | |
88 | wxSearchCtrl, wxAboutBox, wxTreebook, tar streams. | |
89 | ||
90 | ||
91 | 2.8.1 | |
92 | ----- | |
93 | ||
94 | All: | |
95 | ||
96 | - Fix compilation with wxUSE_STL=1 | |
97 | - wxGrid::GetBestSize() returns same size the grid would have after AutoSize() | |
98 | - Added wxTreeCtrl::CollapseAll[Children]() and IsEmpty() (Francesco Montorsi) | |
99 | - Several RTL-related positioning fixes (Diaa Sami) | |
100 | - Fix wxConfig::DeleteGroup() for arguments with trailing slash (David Hart) | |
101 | ||
102 | wxMSW: | |
103 | ||
104 | - Fixed compilation with Borland C++ in Unicode mode but without MSLU | |
105 | ||
106 | wxGTK: | |
107 | ||
108 | - Don't crash if command line is not valid UTF-8 (Unicode build only) | |
109 | ||
110 | wxUniv: | |
111 | ||
112 | - It is now possible to set background colour of wxStaticText | |
113 | ||
114 | ||
115 | 2.8.0 | |
116 | ----- | |
117 | ||
118 | All: | |
119 | ||
120 | - Added wxSearchCtrl (Vince Harron) | |
121 | - wxCSConv("UTF-16/32") now behaves correctly, i.e. same as wxMBConvUTF16/32 | |
122 | - wxArrayString::Alloc() now works as reserve() and doesn't clear array contents | |
123 | - Fixed long standing bug in wxFileConfig groups renaming (Antti Koivisto). | |
124 | - New option wxFS_READ | wxFS_SEEKABLE for wxFileSystem::OpenFile() to return | |
125 | a stream that is seekable. | |
126 | - Fixed bug in wxCalendarCtrl::HitTest() when clicking on month change arrows | |
127 | - Added wxWindow::GetWindowBorderSize() and corrected wxTreeCtrl::GetBestSize() | |
128 | for a control with borders (Tim Kosse) | |
129 | ||
130 | wxMSW: | |
131 | ||
132 | - Fixed version script problems when using configure with cygwin/mingw32. | |
133 | - Use system default paper size for printing instead of A4. | |
134 | - Fix (harmless) assert in virtual list control under Vista | |
135 | - Fix colours when converting wxBitmap with alpha to wxImage (nusi). | |
136 | ||
137 | wxGTK: | |
138 | ||
139 | - Allow dynamically changing most of text control styles | |
140 | - Enable use of libgnomeprintui by default in configure | |
141 | ||
142 | ||
143 | 2.7.2 | |
144 | ----- | |
145 | ||
146 | All: | |
147 | ||
148 | - Added wxFFile overload to wxFileName::CreateTemporaryFileName(). | |
149 | - Added GetTempDir() to wxFileName and wxStandardPaths. | |
150 | - Added wxTar streams. | |
151 | - Added wxFilterFSHandler and wxArchiveFSHandler. | |
152 | - Added wxString::ToLongLong() and ToULongLong(). | |
153 | ||
154 | All (GUI): | |
155 | ||
156 | - wxMemoryDC constructor now optionally accepts a wxBitmap parameter, | |
157 | calling SelectObject itself if a valid bitmap is passed. | |
158 | - Reverted wxBuffered[Paint]DC to pre 2.7.1 state, added | |
159 | wxAutoBufferedPaintDC and wxAutoBufferedPaintDCFactory. | |
160 | - Renamed wxProgressDialog::UpdatePulse() to just Pulse(). | |
161 | - Added wxCollapsiblePane (Francesco Montorsi). | |
162 | - Added wxSimpleHtmlListBox (Francesco Montorsi). | |
163 | - Printing framework fixes by Robert J. Lang. Bugs fixed, | |
164 | wxPrinterDC::GetPaperRect() and other functions added to allow | |
165 | easier printing implementation, and the documentation updated. | |
166 | - Many enhancements to wxRichTextCtrl including URL support, | |
167 | formatting and symbol dialogs, print/preview, and better list | |
168 | formatting. | |
169 | - Support for loading TGA files added (Seth Jackson). | |
170 | - Added wxTB_RIGHT style for right-aligned toolbars (Igor Korot). | |
171 | - wxHtmlWindow now generates events on link clicks (Francesco Montorsi). | |
172 | - wxHtmlWindow now also generates wxEVT_COMMAND_TEXT_COPY event. | |
173 | ||
174 | Unix Ports: | |
175 | ||
176 | - Added autopackage for wxGTK and an example of using autopackage for a wx | |
177 | program (Francesco Montorsi). | |
178 | ||
179 | wxGTK: | |
180 | ||
181 | - More RTL work. | |
182 | - Support wxALWAYS_SHOW_SB. | |
183 | - Speed up MIME types loading. Only the GNOME database should be loaded under | |
184 | GNOME etc. For this, the code queries the X11 session protocol. | |
185 | - wxCaret redraw problem during scrolling fixed. | |
186 | ||
187 | ||
188 | 2.7.1 | |
189 | ----- | |
190 | ||
191 | All: | |
192 | ||
193 | - Added wxDir::FindFirst() (Francesco Montorsi). | |
194 | - Added wxPlatformInfo class (Francesco Montorsi). | |
195 | - Added wxLocale::IsAvailable() (Creighton). | |
196 | - Added Malay translations (Mahrazi Mohd Kamal). | |
197 | - Added reference counting for wxVariant. | |
198 | - For consistency, all classes having Ok() method now also have IsOk() one, use | |
199 | of the latter form is preferred although the former hasn't been deprecated yet. | |
200 | - Added wxFileName::Is(Dir|File)(Writ|Read|Execut)able() (Francesco Montorsi). | |
201 | - Added wxFileName::GetSize() and GetHumanReadableSize() (Francesco Montorsi). | |
202 | - Added wxSizer::Replace (Francesco Montorsi). | |
203 | - wxXmlDocument can now optionally preserve whitespace (Francesco Montorsi). | |
204 | - Added wxBookCtrl::ChangeSelection() and wxTextCtrl::ChangeValue() to provide | |
205 | event-free alternatives to SetSelection() and SetValue() functions; see the | |
206 | "Events generated by the user vs programmatically generated events" paragraph | |
207 | in the "Event handling overview" topic for more info. | |
208 | ||
209 | All (GUI): | |
210 | ||
211 | - Support for right-to-left text layout (started by Diaa Sami during Google Summer of | |
212 | Code, with a lot of help from Tim Kosse and others). | |
213 | - wxAnimationCtrl added (Francesco Montorsi). | |
214 | - Added wxAboutBox() function for displaying the standard about dialog. | |
215 | - Added wxID_PAGE_SETUP standard id. | |
216 | - Added wxSize::IncBy() and DecBy() methods. | |
217 | - Added wxTextCtrl::IsEmpty(). | |
218 | - Added file type parameter to wxTextCtrl::LoadFile, wxTextCtrl::SaveFile for | |
219 | consistency with wxRichTextCtrl. | |
220 | - wxRichTextCtrl: fixed range out-by-one bug to be consistent with wxTextCtrl API, | |
221 | fixed some attribute bugs and added wxRichTextStyleComboCtrl. | |
222 | - Added wxWindow::IsDoubleBuffered(). | |
223 | - Added wxHL_ALIGN_* flags to wxHyperlinkCtrl (Francesco Montorsi). | |
224 | - Added wxGauge::Pulse() and wxProgressDialog::UpdatePulse() (Francesco Montorsi). | |
225 | ||
226 | wxMSW: | |
227 | ||
228 | - Implemented wxComboBox::SetEditable(). | |
229 | - wxSemaphore::Post() returns wxSEMA_OVERFLOW as documented (Christian Walther) | |
230 | - Fixed a bug whereby static controls didn't use the correct text colour if the | |
231 | parent's background colour had been set (most noticeable when switching to a | |
232 | high-contrast theme). | |
233 | - Respect wxBU_EXACTFIT style in wxToggleButton (Alexander Borovsky). | |
234 | ||
235 | wxMac: | |
236 | ||
237 | - Add parameter to the --enable-universal_binary configure option for the path | |
238 | to the SDK. | |
239 | ||
240 | wxGTK: | |
241 | ||
242 | - Automatically use stock items for menu items with standard ids. | |
243 | - Setting cursor now works for all controls. | |
244 | - Implemented right-to-left support. | |
245 | - Implemented left indentation and tab stops support in wxTextCtrl (Tim Kosse). | |
246 | - Fixed wxHTML rendering of underlined text of multiple words (Mart Raudsepp). | |
247 | ||
248 | wxUniv: | |
249 | ||
250 | - Added wxTLW::UseNativeDecorations() and UseNativeDecorationsByDefault(). | |
251 | ||
252 | ||
253 | 2.7.0 | |
254 | ----- | |
255 | ||
256 | All: | |
257 | ||
258 | - Added positional parameters support to wxVsnprintf() (Francesco Montorsi). | |
259 | - wx(F)File, wxTextFile and wxInputStreams recognize Unicode BOM now. | |
260 | - Many fixes for UTF-16/32 handling in Unicode builds. | |
261 | - wxLaunchDefaultBrowser() now supports wxBROWSER_NEW_WINDOW flag. | |
262 | - Added wxStandardPaths::GetResourcesDir() and GetLocalizedResourcesDir() | |
263 | - Added wxStandardPaths::GetDocumentsDir() (Ken Thomases). | |
264 | - Added wxStringTokenizer::GetLastDelimiter(); improved documentation. | |
265 | - Fixed wxTextFile in Unicode build. | |
266 | - Added possibility to specify dependencies for a wxModule. | |
267 | - Speed improvements to wxRegEx when matching is done in a loop such as | |
268 | during a search and replace. | |
269 | - Fix regerror and regfree name conficts when built-in regex and system regex | |
270 | are both used in the same program. | |
271 | - Basic authentication supported added to wxHTTP. | |
272 | - wxCondition::WaitTimeout() now returns correct value when timeout occurs. | |
273 | - Fixed occasional wxThread cleanup crash. | |
274 | - Bug in wxLogStream::DoLogString in Unicode builds fixed. | |
275 | - Added support for memo fields to wxODBC. | |
276 | - Fixed Unicode builds using SunPro compiler by defining__WCHAR_TYPE__. | |
277 | - wxFileName now also looks for TMPDIR on Unix. | |
278 | - Fixed build error in list.h with VC++ 2005. | |
279 | - Fixed wxODBC buffer overflow problem in Unicode builds. | |
280 | - Fixed wxSocketBase::InterruptWait on wxBase. | |
281 | - Important code cleanup (Paul Cornett). | |
282 | - Added support for wxLongLong in wx stream classes (Mark Junker). | |
283 | - wxSOCKET_REUSEADDR can be used with wxSocketClient. | |
284 | - Overloaded Connect() and SetLocal() methods for binding to local address/port. | |
285 | - Albanian translation added (Besnik Bleta). | |
286 | - Assert messages now show the function in which assert failed. | |
287 | - wxApp::OnAssertFailure() should now be used instead the old wxApp::OnAssert(). | |
288 | - Fixed several bugs in wxDateTime::ParseDate(). | |
289 | - The WXK*PRIOR and WXK*NEXT constants are now aliases for WXK*PAGEUP | |
290 | and WXK*PAGEDOWN. If you have switch statements that use both | |
291 | constants from a set then you need to remove the PRIOR/NEXT | |
292 | versions in order to eliminate compiler errors. | |
293 | - Fixed bug where wxDateTime::Now() would sometimes return an incorrect value | |
294 | the first time it was called. | |
295 | - Added wxString::rbegin() and rend(). | |
296 | - Added wxString::EndsWith(). | |
297 | - wxSocket::_Read continues reading from socket after exhausting pushback buffer. | |
298 | Previously, only the buffer would be returned, even if more data was requested. | |
299 | - Added wxPowerEvent (currently MSW-only). | |
300 | - Make wx-config compatible with Bourne shells. | |
301 | - Fixed wxDb::Open(wxDbConnectInf) when using connection string (Hellwolf Misty). | |
302 | - Fixed crash in wxDb::Open() in Unicode build (Massimiliano Marretta). | |
303 | - Fixed wxTimeSpan::Format() for negative time spans. | |
304 | - Optionally count repeating wxLog messages instead of logging all (Lauri Nurmi). | |
305 | ||
306 | All (GUI): | |
307 | ||
308 | - New AUI (Advanced User Interface) library for docking windows and much more. | |
309 | - Added wxComboCtrl and wxOwnerDrawnComboBox (Jaakko Salli). | |
310 | - Added wxTreebook (uses a wxTreeCtrl to control pages). | |
311 | - Added wxColour/Dir/File/Font/PickerCtrls (Francesco Montorsi). | |
312 | - Added wxDC::GradientFillLinear/Concentric(). | |
313 | - Added wxHyperlinkCtrl (Francesco Montorsi). | |
314 | - Added clipboard events (wxEVT_COMMAND_TEXT_COPY/CUT/PASTE). | |
315 | - Allow to reorder wxGrid columns by drag-and-drop (Santiago Palacios). | |
316 | - Added wxRadioBox::SetItemToolTip(). | |
317 | - Added support for CMYK JPEG images loading (Robert Wruck). | |
318 | - Added wxListCtrl::GetSubItemRect() and subitem hit testing (Agron Selimaj). | |
319 | - Added wxKeyEvent::GetModifiers(). | |
320 | - Added wxDialog::SetEscapeId(). | |
321 | - wxItemContainerImmutable::FindString unified (affects wxRadioBox, wxListBox, | |
322 | wxComboBox and wxChoice). | |
323 | - wxWindow::Fit() now works correctly for frames and dialogs too. | |
324 | - Added access to the border size between pages and controller in book | |
325 | based controls (wxBookCtrlBase::Get/SetInternalBorder). | |
326 | - Added initial wxRichTextCtrl implementation. | |
327 | - All book based controls (notebook, treebook etc.) share now the same | |
328 | options for orientation (wxBK_TOP, wxBK_DEFAULT, ...) instead of duplicated | |
329 | wxLB_TOP, wxNB_TOP, wxCHB_TOP, wxTBK_TOP. | |
330 | - Added parent window parameter to wxHelpController constructor | |
331 | and added SetParentWindow/GetParentWindow. | |
332 | - wxMultiChoiceDialog uses now wxCheckListBox if possible, wxListBox if not. | |
333 | - Added wxBitmapButton::SetHoverBitmap(). | |
334 | - Access to titles through Get/SetTitle is available now only for top level | |
335 | windows (wxDialog, wxFrame). | |
336 | - Fixed memory leak of pending events in wxEvtHandler. | |
337 | - Added wxRadioBox::IsItemEnabled/Shown(). | |
338 | - Added space after list item number in wxHTML. | |
339 | - Implemented <sub> and <sup> handling in wxHTML (based on patch | |
340 | by Sandro Sigala). | |
341 | - Added caption parameter to wxGetFontFromUser and wxGetColourFromUser. | |
342 | - Added wxGetMouseState function. | |
343 | - Added wxHtmlHelpWindow, wxHtmlHelpDialog and wxHtmlModalHelp classes, | |
344 | allowing HTML help to be embedded in an application. | |
345 | - wxCalendarCtrl positioning and hit-testing fixes for dimensions other than | |
346 | best size. | |
347 | - wxCalendarCtrl colour schema changed and adjusted to system settings. | |
348 | - wxImage::Mirror() and GetSubBitmap() now support alpha (Mickey Rose). | |
349 | - More checking of image validity before loading into wxImage. | |
350 | - Added wxImage::ConvertToGreyscale. | |
351 | - Added ability to use templates with static event tables | |
352 | with BEGIN_EVENT_TABLE_TEMPLATEn() macros. | |
353 | - Added play, pause, and state change events to wxMediaCtrl. | |
354 | - Added double-buffering to wxVListBox and fixed a scrolling issue. | |
355 | - Added wxToolbook (uses a wxToolBar to control pages). | |
356 | - Added SetSheetStyle to wxPropertySheetDialog and allowed it to | |
357 | behave like a Mac OS X settings dialog. | |
358 | - Added <disabled> XRC tag for wxToolBar elements and <bg> for wxToolBar itself. | |
359 | - Fixed centering of top level windows on secondary displays. | |
360 | - Implemented wxDisplay::GetFromWindow() for platforms other than MSW. | |
361 | - UpdateUI handler can now show/hide the window too (Ronald Weiss). | |
362 | - More than one filter allowed in in wxDocTemplate filter. | |
363 | - Added wxListBox::HitTest(). | |
364 | - Added wxDisplay::GetClientArea(). | |
365 | - Indices and counts in wxControlWithItems derived API are unsigned. | |
366 | - Added support for links to wxHtmlListBox; use code has to override | |
367 | wxHtmlListBox::OnLinkClicked() to take advantage of it. | |
368 | - Added an easier to use wxMenu::AppendSubMenu(). | |
369 | - wxString <-> wxColour conversions in wxColour class (Francesco Montorsi). | |
370 | - Fixed bug with ignoring blank lines in multiline wxGrid cell labels. | |
371 | - Added wxTextAttr::Merge() (Marcin Simonides). | |
372 | - Added wxTB_NO_TOOLTIPS style (Igor Korot). | |
373 | - Added wxGenericDirCtrl::CollapsePath() (Christian Buhtz). | |
374 | - Added wxTreeCtrl::ExpandAllChildren() (Christian Buhtz) | |
375 | - Fixed 64-bit issue in wxNotebook causing segfaults on Tru64 Unix. | |
376 | - Made it possible to associate context help to a region of a window. | |
377 | - Added support for tabs in wxRichTextCtrl (Ashish More). | |
378 | - Fixed problem with zoom setting in print preview. | |
379 | - Moved wxRichTextCtrl from the advanced library to its own. | |
380 | - wxNB_HITTEST_* flags renamed to wxBK_HITTEST_* to serve all book controls. | |
381 | - Added wxTopLevelWindow::SetTransparent and CanSetTransparent, with | |
382 | implementations (so far) for wxMSW and wxMac. | |
383 |