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