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-27 20:13 JS, revision 65660

Image dialog properties.

2010-09-27 14:55 VZ, revision 65659

Replace some stray _T()s with wxT(). We use wxT() exclusively now so replace some _T()s which crept in unnoticed. This also fixes compilation using Sun CC. See #12452.

2010-09-27 14:55 VZ, revision 65658

Fix wx/event.h compilation with Sun CC compiler. Move wxObjectEventFunctor::operator() definition after wxEvtHandler declaration as it uses call through a pointer to member of this class and Sun CC refuses to compile this without having the full class declaration. Closes #12452.

2010-09-27 14:48 VZ, revision 65657

Use wxString methods for UTF-8 conversions in wxX11 code. Use wxString::utf8_str() and FromUTF8() to convert to and from UTF-8. This is more efficient than using wxConvUTF8 as the code did before as it avoids the conversion entirely when wxString uses UTF-8 internally (as it does by default in wxX11) and also has the advantage of compiling in STL build unlike the old code. Closes #12518.

2010-09-27 14:48 VZ, revision 65656

Small clean up in wxX11 Pango code. Don't use unnecessary explicit casts of wxCharBuffer to "const char *". Use wxCharBuffer::length() instead of strlen().

2010-09-27 14:48 VZ, revision 65655

Fix wxX11 compilation when using PCH. wx/unix/utilsx11.h is not included by wx/wxprec.h so we need to include it when using PCH too. Closes #12517.

2010-09-27 13:57 VZ, revision 65654

Document wxSpinDoubleEvent class. Add documentation for the class itself and the associated EVT_SPINCTRLDOUBLE macro. Patch by Carsten Fuchs. Closes #12520.

2010-09-27 13:52 VZ, revision 65653

Close a modal dialog even when it doesn't have any buttons. The close button in the dialog title bar should work even if there are no buttons in the dialog itself (unlike the Escape key which works as an accelerator for a button), so close the dialog explicitly if the emulated button click wasn't processed in wxDialogBase::OnCloseWindow(). Closes #12513.

2010-09-27 13:51 VZ, revision 65652

Fix typo in wxStandardPathsBase::ResourceCat description and document it. Document the enum itself and also correct GetLocalizedResourcesDir() documentation which didn't specify the default value for the category parameter. Closes #12523.

2010-09-27 00:11 VZ, revision 65651

Compilation fix for MinGW STL build. std::tr1::unordeded_map<T *>::find() doesn't accept "const T *" pointer, at least with MinGW 4.4.0 standard library version, so add an explicit const_cast<> to fix compilation.

2010-09-27 00:11 VZ, revision 65650

Compilation fix for MinGW 4.x in new keyboard code. Explicitly choose the comparison operator to use when comparing wchar_t and int values, otherwise MinGW (correctly) complains about ambiguity between (int, int) and (wchar_t, const wxUniChar&) overloads.

2010-09-27 00:11 VZ, revision 65649

Make wxDateTime::Tm::yday public and document it. There doesn't seem any reason to allow access to all the other struct Tm fields but not yday so make it public, fill it in correctly when creating Tm without using its ctor from struct tm and document struct Tm itself including its yday field.

2010-09-27 00:11 VZ, revision 65648

Initialize wxDateTime::Tm::yday in the ctor. Set Tm::yday to a fixed value in the ctor as well instead of not initializing it at all. This bug actually didn't have any visible consequences as yday is currently a private member of struct tm and didn't seem to be used anywhere but it at least avoids MinGW 4.x warnings about possibly uninitialized variable and might become important in the future if we allow accessing this field.

2010-09-27 00:11 VZ, revision 65647

Correct g++ 4.x warnings about suggested explicit braces. Several warnings were generated for wxLogLastError() calls inside CALL_CARET_API macro by MinGW 4.4. Fix them by adding the extra braces. See also r61475.

2010-09-26 22:26 PMO, revision 65646

Added basic implementation for wxRadioBox and simplified choices handling for wxComboBox and wxChoice

2010-09-26 20:39 PMO, revision 65645

Added basic implementation for wxCheckBox

2010-09-26 18:38 PMO, revision 65644

Added implementation of wxWindow::DoFindFocus

2010-09-26 18:07 JS, revision 65643

General tidying of the floating image layout code Added CanEditProperties, EditProperties to make object editing more generic

2010-09-26 16:39 PMO, revision 65642

Added missing wxStaticLine::GetHandle() implementation

2010-09-26 16:33 PMO, revision 65641

Removed manual deletion of Qt widgets (wxQtPointer destructor is doing this now)

2010-09-26 14:00 PMO, revision 65640

Replaced QPointer usage with wxQtPointer

2010-09-25 16:15 JS, revision 65639

Fix

2010-09-24 19:44 JMS, revision 65631

Correct empty space drawing

2010-09-24 19:40 JMS, revision 65630

Removed debug log message

2010-09-24 17:22 JMS, revision 65629

Fixed PCH-less build

2010-09-24 16:47 JMS, revision 65628

Have wxPropertyGrid inherit from wxControl and wxScrollHelper instead of wxScrolledWindow. This is the approach other scrolled controls use.

2010-09-23 23:12 RD, revision 65627

Fix sending a size event for the displayed page when the notebook is sized

2010-09-23 23:11 RD, revision 65626

Use the wx version of the wxDECLARE_EVENT_TABLE_ENTRY macro

2010-09-23 23:10 RD, revision 65625

Avoid an endless recursion situation

2010-09-23 23:09 RD, revision 65624

Allow the renderer to also work with wxMemoryDCs

2010-09-23 23:08 RD, revision 65623

SetUserScale(1.0, 1.0) in Unmask() so the image will not be scaled again when blitted

2010-09-23 23:07 RD, revision 65622

CanSetTransparent needs to be virtual

2010-09-23 23:05 RD, revision 65621

Various build tweaks and updates for wxPython 2.9.1.1

2010-09-23 22:54 RD, revision 65620

Add flag to enable specifying an architecture to build on Mac. Also add x86_64 architecture to universal build when buildng wxOSX-Cocoa

2010-09-23 19:02 SJL, revision 65597

Remove an assert that was not backed up by the documentation and so failed on some platforms but not on others. Re-enable some tests that were disabled in wxGTK as they now pass.

2010-09-23 18:55 SJL, revision 65596

Add ClearEventCount to wxTestableFrame. This means we can clear an event count when an event counter goes out of scope so the are no spurious results in later tests.

2010-09-23 18:24 JS, revision 65595

Fix bug finding line after line break

2010-09-23 18:16 JS, revision 65594

Fix bug finding line after line break

2010-09-23 14:58 JMS, revision 65593

Streamline wxPropertyGrid tooltip code

2010-09-23 14:55 JMS, revision 65592

When setting empty string as a tooltip, call gtk_widget_set_has_tooltip() with FALSE to remove the tooltip. This will bring wxGTK behavior in line with wxMSW.

2010-09-22 21:24 SJL, revision 65591

Fix assert when changing the filter selection on a multiple selection wxGenericDirCtrl. Because ExpandPaths selects the item we can simply grab a list of selected paths and then expand them all in the multiple selection case. The single selection case is unchanged. Closes #12340

2010-09-22 15:31 VZ, revision 65590

Better checks for wxMSWKeyboard::VKToWX() return value. Don't generate key events without any valid key code (this shouldn't normally happen but might on exotic keyboards with keys that we don't know about). Also ensure that we can distinguish between VKToWX() returning dead keys and non-Latin-1 keys by setting wchar_t output parameter to WXK_NONE too in the former case but not the latter. Generate wxEVT_CHAR_HOOK events for non-Latin-1 keys too in Unicode build.

2010-09-22 15:31 VZ, revision 65589

Fix recently broken generation of wxEVT_CHAR_HOOK events in wxMSW. Changes to VKToWX() semantics broke the logic of the global keyboard hook function in wxMSW which didn't generate wxEVT_CHAR_HOOK events for ASCII special keys such as WXK_ESCAPE any more. Fix this and also generate wxEVT_CHAR_HOOK for all events, not just the non-ASCII keys for consistency with the documentation and wxGTK. Closes #12501.

2010-09-22 14:45 SJL, revision 65588

Re-enable disabled wxWindow label tests under wxGTK as they were fixed in r65374

2010-09-22 12:06 SJL, revision 65587

Send generic wxTreeCtrl wxEVT_COMMAND_TREE_KEY_DOWN events from OnKeyDown rather than OnChar. This change means it sends events for the same keys as the wxMSW control. It also fixes the failing unit test.

2010-09-22 10:48 SJL, revision 65586

Send generic wxListCtrl wxEVT_COMMAND_LIST_KEY_DOWN events from OnKeyDown rather than OnChar. Also remove the HasCurrent check. These changes bring the generic control into line with the control under wxMSW. Re-enable the previously failing unit test and document that the key down event might not have a valid item associated with it.

2010-09-21 21:54 PMO, revision 65583

Adding wxQtPointer to ease the memory management of Qt objects.

2010-09-21 14:57 VZ, revision 65582

Compilation fixes for old SDKs (VC6) after recent commit. Define WM_QUERYUISTATE in wx/msw/missing.h too as src/msw/statbox.cpp uses it now. Also move DT_HIDEPREFIX definition from wx/msw/private/button.h to missing.h as well as it's now used in statbox.cpp too. Include missing.h explicitly from the files that use DT_HIDEPREFIX.

2010-09-21 13:56 VZ, revision 65581

Compilation fix of wxSocket code for older Solaris versions. Include sys/filio.h to define FIONBIO in all cases (sometimes this header is already included from sys/ioctl.h but not always). Closes #12481.

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

Correct drawing of mnemonics in wxStaticBox label under wxMSW. Only show the mnemonics if they need to be shown, i.e. use the same logic as the standard controls use, to avoid showing mnemonics in wxStaticBox with custom label colour even when other wxStaticBoxes don't show it.

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.