Changelogs

Overview

These changelogs reflect the history of all files in the Subversion repository. The changelog has been generated at 2016-05-09 08:38:04

Changes per page:

25 50 100 250 500 1000 2000

Changelog for wxWidgets (70435 changes):

2010-09-21 13:44 VZ, revision 65579

Fix wxStaticBox label redrawing when "Alt" is pressed in wxMSW. The default handling for Alt key press in the standard control is to redraw the label to account for showing of the keyboard queues (i.e. if the mnemonics were initially hidden, they are shown when Alt is pressed) but it doesn't redraw it in the correct colour resulting in any custom label colour being lost whenever Alt is pressed anywhere in the window containing the box. Fix this by forcing the box refresh which will result in repainting it using our code which does use the correct colour. Also update the static page of the widgets sample to allow changing the colours of all static controls on this page, including the wxStaticBox, and not just the main wxStaticText. Closes #12497.

2010-09-20 17:38 JMS, revision 65577

Call SetToolTip() for the property editor control when wxPG_EX_HELP_AS_TOOLTIPS style is used

2010-09-20 16:14 VZ, revision 65576

PCH-less compilation fix to GDI+ wxMSW code. Closes #12496.

2010-09-20 15:15 VZ, revision 65575

Correctly recognize when wglChoosePixelFormatARB() fails. This function returns TRUE even if it failed to find any matching formats, so test not only its return value but also the number of formats it found. Closes #12474.

2010-09-20 15:11 VZ, revision 65574

Always use native task dialog for wxProgressDialog under MSW if supported. Use task dialogs even for the dialogs with wxPD_AUTO_HIDE style flag and without wxPD_CAN_ABORT one. Generic fallback was used in this case as native task dialog doesn't support dialogs without buttons but it is finally better to create a dummy button and use the native dialog nevertheless. We already have a mostly disabled "Close" button for the dialogs without wxPD_AUTO_HIDE style so it seems logical to also have it (but just never enable it at all) when this style is used. Closes #12462.

2010-09-20 15:10 VZ, revision 65573

Ignore time component of SYSTEMTIME in wxMSW wxDatePickerCtrl. This is similar to the fix of r64208 for wxCalendarCtrl and ignores the time component of SYSTEMTIME objects returned by the native functions in wxDatePickerCtrl too to ensure that we operate with pure dates only. Closes #12493.

2010-09-20 14:52 VZ, revision 65572

Don't use native MSW functions in wxString::CmpNoCase(). While the native CompareString() is much more efficient than MSVC CRT version of _wcsicmp(), it gives unexpected results for non-letter characters, so don't use it but use the slow but correct wxStricmp() instead. At least don't use char-by-char comparison (in non-UTF-8 case) as it's the slowest possible implementation of this function, the new one using wxStricmp() is 3 times faster (by comparison, using CompareString() is 16 times faster still -- but wrong). Closes #10375.

2010-09-20 14:52 VZ, revision 65571

Add benchmarks for various ways to compare strings. Benchmark the abstraction overhead of wxString methods compared to plain functions and also benchmark native functions for string comparison under MSW.

2010-09-20 14:52 VZ, revision 65570

Flush output after every benchmark. This purely cosmetic change simply allows to see the output of the benchmarks sooner which is more user-friendly when running several long benchmarks.

2010-09-19 18:06 PMO, revision 65569

Minimal implementation for wxTreeCtrl, wxBitmapToggleButton, wxToggleButton, wxRadioBox, wxListCtrl

2010-09-19 12:02 SJL, revision 65568

Increase the number of expected events in TreeCtrlTestCase::KeyDown and ListBaseTestCase::KeyDown from four to six as this is the number of events seen when testing using their samples. This also stops the tests failing after the recent keyboard event improvements.

2010-09-18 18:26 VZ, revision 65565

Really fix setting fonts in RichEdit 4.1 controls. The fix applied in r64394 wasn't enough and the control could still decide to overwrite the font used by default when non-ASCII characters were inserted into it. To really force it to use the font we want we apparently must send it EM_SETCHARFORMAT with SCF_ALL flag (MSDN also documents SCF_DEFAULT but it's not clear if we should use it instead or together with SCF_ALL, for now it doesn't seem to be necessary).

2010-09-18 18:26 VZ, revision 65564

No changes, just refactor wxTextCtrl::SetStyle() in wxMSW. Split this overly long function into MSWSetCharFormat() and MSWSetParaFormat(). No real changes otherwise except for the use of PARAFORMAT instead of PARAFORMAT2 if wxUSE_RICHEDIT2 is not set as it was certainly intended (but the fact that nobody complained about this problem means that nobody must be compiling without wxUSE_RICHEDIT2 by now so arguably we should just remove it completely).

2010-09-18 18:26 VZ, revision 65563

Set wxTextCtrl::m_verRichEdit to 4 for RichEdit 4.1. Set m_verRichEdit to a different value for the version 4.1 of the control as it behaves subtly differently from the previous versions. Also clarify that value of 2 is used for both 2.0 and 3.0 versions of the control. No real changes yet.

2010-09-17 21:07 RR, revision 65562

Postpone EnsureVisible() to idle as this sometimes seems to be required, fixes #12480: wxDataViewCtrl::EnsureVisible does not make item visible in some circumstances on GTK

2010-09-17 13:17 DS, revision 65561

Set svn properties on .cpp files. Add missing svn:eol-style property to all .cpp files. Also set svn:keywords for .cpp files which don't have that property yet to Id, including src/osx/core/glgrab.cpp for consistency (it doesn't make use of the property).

2010-09-16 21:36 VZ, revision 65560

Allow setting Mac-specific menu item ids to wxID_NONE to suppress them. If s_macAboutMenuItemId or s_macPreferencesMenuItemId was explicitly set to wxID_NONE by the application, don't add them to the standard menu at all, otherwise they would be present there but be always disabled and useless. This is still not documented because we really need a better API for this but it at least provides a temporary workaround for having useless menu items under OS X.

2010-09-16 21:36 VZ, revision 65559

Allow use of report mode non-native wxListCtrl in wxListBook under Mac. The use of wxListBook in report mode was disabled for wxOSX in r54001 and r54318 (see #9484) because it created problems with the native wxListCtrl implementation but the report mode can be used if we're using the generic wxListCtrl version so do allow to use it if the system option governing the choice of the version to use is set to "generic". Of course, the real fix would be to correct the bugs in the native wxListCtrl version and use report mode always but for now this at least restores correct behaviour with the generic version.

2010-09-16 13:05 VZ, revision 65558

Only use wxFORCE_LINK_MODULE() in mediaplayer sample in static build. The linking optimization this macro protects against can't happen when using DLL and so using it is at best useless and actually harmful (because it doesn't contain the correct DLL export declarations) in the latter case.

2010-09-16 13:05 VZ, revision 65557

Compilation fixes for non-MSVC 9 compilers after r65555. Somehow MSVC 9 compiled invalid wxT(__FUNCTION__) expressions but both MinGW and MSVC 6 (correctly) failed. Don't use this construct at all but instead call wxLogLastError() with the real function name. Also refactor the code slightly to avoid having to repeat this fix thrice.

2010-09-16 11:05 VS, revision 65556

Fix wxMSW rendering artifacts with modal dialogs. When a modal dialog showed another modal dialog, parts of the parent window weren't refreshed correctly. This demonstrated itself as rendering artifacts when moving the child dialog to another position: parts of the dialog were shown as disabled, parts as enabled. Fixed by explicitly refreshing the window.

2010-09-16 01:04 VZ, revision 65555

Remove display information caching from MSW wxDisplay implementation. Don't cache display rectangle and client rectangle as they can both change during the program lifetime (especially the latter which changes whenever taskbar is moved or shown/hidden) and retrieving them every time they're needed doesn't seem to be a problem performance-wise anyhow. We still cache the list of all the monitors, ideally we'd refresh it when we receive a notification about a display being [dis]connected. Closes #4582.

2010-09-16 00:13 DS, revision 65554

Fix possible errors introduced while generating Xcode project. Under some unknown circumstances two added source files are concatenated into one faulty entry in an Xcode project (this probably occurs either at the Xcode or XMLTools2 level). Try to detect these errors in the Python script and fix them by patching up the project.pbxproj file.

2010-09-16 00:10 VZ, revision 65553

Document limitations of the generic wxTextEntry hints. Calling methods other than SetValue() or ChangeValue() doesn't update the display correctly currently, see #12475.

2010-09-16 00:10 VZ, revision 65552

Update the text hint display correctly when ChangeValue() is called. wxTextEntry::ChangeValue() doesn't generate any events so we need to explicitly update the text stored by wxTextEntryHintData when it is called to ensure that it corresponds to the real controls value.

2010-09-16 00:10 VZ, revision 65551

Fix several bugs in generic text entry hints implementation. The text controls contents and colour was not updated correctly in several situations (see #12475). The old code was completely wrong as it didn't store the actual value of the control at all and so could never work. Do store and update it now and show the hint if and only if the real contents is empty. Also handle "text updated" event to correctly update the hint when the control becomes [non-]empty. Closes #12475.

2010-09-16 00:10 VZ, revision 65550

Fix wxTextEntry::SelectAll() in presence of hints in wxGTK. Translation of wx (-1, -1) selection to (0, GetValue().length()) in wxTextCtrl::SetSelection() was unnecessary as it ended up calling the base class wxTextEntry::SetSelection() version which didn't need it. Moreover, this translation was actually harmful when the text control happened to show a hint string as its official value was empty in this case and so SetSelection(0, 0) was called which didn't do anything and broke clearing/changing the controls text when it was showing a hint. Simply don't translate the indices when using a single line control to fix this. See #12475.

2010-09-15 13:45 DS, revision 65549

Use a unique namespace for generating identifiers. Instead of using uuid.NAMESPACE_DNS as namespace use a newly generated UUID. Also minor cleanup of import uuid statement.

2010-09-15 13:29 DS, revision 65548

Make Xcode identifier consecutive when there is a collision. Making them consecutive groups source files that are repeated next to each other in the project file like Xcode does, instead of creating a complete new random identifier which resulted in creating a distance between the source files after they were sorted.

2010-09-14 20:35 VS, revision 65547

Click on wxOwnerDrawnComboBox's animating popup should close it. Previously, it behaved differently from native combo box: clicking the popup while its opening animation was running had no effect. This was different from the native control, which would close the popup in this case (just like when it's fully opened).

2010-09-14 19:35 PJC, revision 65544

Fix incorrect behaviour of wxRibbonGallery::EnsureVisible when the ribbon is vertical rather than horizontal.

2010-09-14 15:18 VZ, revision 65541

Fix drawing of items with custom background in wxGenericListCtrl. This was broken by the changes of r64879 which erroneously used wxRendererNative::DrawItemSelectionRect() even for the non-selected items. Now only use DrawItemSelectionRect() for the selected items to make them appear natively while drawing the non-selected items with custom background colour ourselves. Also refactor the code to avoid (the not quite and hence especially pernicious) duplication between wxListLineData::Draw() and DrawInReportMode(): rename SetAttributes() to ApplyAttributes() and draw the item background in this function now instead of doing it in both Draw() and DrawInReportMode().

2010-09-14 12:24 VZ, revision 65540

Fix hang on termination of wxProgressDialog with wxPD_AUTO_HIDE style. We don't need to run a modal event loop waiting for the wxProgressDialog to be closed when it has wxPD_AUTO_HIDE style because it does it on its own. Closes #12472.

2010-09-13 22:12 RR, revision 65539

Document wxDataViewListModel as common abstract base class for wxDataViewIndexListModel and wxDataViewVirtualListModel. Add wxDataViewListModel::GetCount() as both have it.

2010-09-13 22:02 RR, revision 65538

Further work on wxDataViewListModel::Reset()

2010-09-13 00:58 VZ, revision 65537

Update wxRibbonPanel documentation to mention use of sizers. This documents the changes of r65436. Closes #12418.

2010-09-13 00:58 VZ, revision 65536

Delete wxListCtrl item data after handling its deletion event in wxMSW. We deleted the data associated with the item too soon as we did it before the handler for the item deletion event was run and this handler could still access this data. Only free the data after the handler returns now. Closes #12449.

2010-09-13 00:58 VZ, revision 65535

Fix compilation of EnumerateLoadedModules() call for MinGW64 4.5. Our logic for detection of whether the first argument of PENUMLOADED_MODULES_CALLBACK is const or not didn't work for MinGW64 4.5. Replace it with a less error-prone (even if more ugly) version which simply casts the callback to the type expected by the function. Closes #12465.

2010-09-13 00:05 VZ, revision 65534

Define MAPVK_VK_TO_CHAR to fix wxMSW compilation with old SDK headers. At least MinGW headers don't define this constant.

2010-09-12 22:07 RR, revision 65533

Moved more code from wxDataViewCtrl to wxDataViewCtrlInternal. Add new special API for wxDataViewVirtualIndexModel::Reset() as wxDataViewModel::Clear is something different and needs a different, two step API under GTK+, one for destroying the current view and one for rereading the new contents. Added ::BeforeReset() and ::AfterReset() notifications for that purpose.

2010-09-12 18:16 JS, revision 65532

Fix for % symbols going missing from style parameter

2010-09-12 18:16 JS, revision 65531

Fix for % symbols going missing from style parameter

2010-09-11 13:20 VZ, revision 65528

Compilation fix for wxOSX. Remove stray closing brace. Also fix a warning about unused parameter.

2010-09-11 12:19 VZ, revision 65527

Generate the same flags for modifier key events in wxGTK as in wxMSW. Resolve the discrepancy between modifier flags of the key events corresponding to the modifier key itself between wxMSW and wxGTK by changing the latter to follow wxMSW behaviour. Clearly document the now officially correct behaviour of the modifiers for the key events corresponding to the modifiers keys themselves in the manual. This fix also makes it unnecessary to work around this bug in the keyboard unit test so remove it from there.

2010-09-11 12:19 VZ, revision 65526

Generate unshifted Unicode key codes in wxEVT_KEY_XXX events in wxGTK. wxGTK generated wxEVT_KEY_XXX with key codes corresponding to the unshifted state of the key (except for the letters) but Unicode key codes corresponding to the current shift state. This was inconsistent with wxMSW and also with the idea that key events, unlike char ones, don't depend on the modifiers states. Change wxGTK to behave as wxMSW and use unshifted values for Unicode key codes as well. Remove the now unnecessary workaround for different key event Unicode codes from test. Also try to explain the difference between normal and Unicode keys and key and char events even better and mention that the Unicode key codes for the key events are also untranslated in the documentation.

2010-09-11 12:19 VZ, revision 65525

Fix generation of key events for non-alphabetic keys under Windows. Don't hardcode the values of VK_OEM_XXX keys which are completely nonsensical on keyboards with non-US layouts. Use the real unshifted value of the key as its key code instead -- at least if it's a Latin-1 character. Otherwise, use WXK_NONE as the key code and pass the character generated by the key as Unicode character code. Also generate WXK_NONE events for dead keys to avoid confusing them with the corresponding normal key events.

2010-09-11 12:18 VZ, revision 65524

Improve printing out of pressed keys in the keyboard sample. Add missing elements of wxKeyCode enum ("Windows" and "Command" keys) to the GetVirtualKeyCodeName() function in the sample. Also output "unknown" and not blank for WXK_NONE.

2010-09-11 12:18 VZ, revision 65523

Rename wxCharCode{MSWToWX,WXToMSW}() and move them to a separate header. These functions were confusingly named as they work with MSW (virtual) key codes and not character codes, rename them to better indicate what they do. They also don't need to be in wx/msw/window.h included by all wx code when they are only really needed in a couple of files, so move them to a private header. No changes in behaviour.

2010-09-11 12:18 VZ, revision 65522

Fixes to key codes in keyboard events generated by wxMSW. Only set Unicode key code if the event corresponds to a character key and set it to (newly added) WXK_NONE for the other ones to avoid nonsensical values in it for e.g. "Home" key presses. Also set non-Unicode key to WXK_NONE for the characters that can't be represented in the current locale. This is consistent with wxGTK and avoids conflicts between special key values and Unicode keys. Clearly document the above behaviour. Notice that implementing the correct behaviour in wxMSW involved untangling previously interwoven WM_KEY{DOWN,UP} and WM_CHAR messages handlers. Clearly separate them now as they get different input (key codes for the former, characters for the latter) and especially don't try to convert from both kinds of input using a single wxCharCodeMSWToWX() function. As this function doesn't need to distinguish between keys and characters any more it can simply return the converted value in all cases instead of returning 0 sometimes to indicate a character value instead of a key. Simplify the code using this function accordingly.

2010-09-11 12:18 VZ, revision 65521

Add WXK_NONE symbolic constant indicating absence of a key. wxKeyEvent::GetKeyCode() and GetUnicodeKey() return 0 to indicate that the key code or Unicode character is not available, give symbolic name to this 0 to make the code using these methods more clear.