From e95308c0aebf4f1deb8e7818a6375ebd8405bbfd Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 13 Jul 2008 18:16:38 +0000 Subject: [PATCH] set wxKeyEvent::m_uniChar correctly in the events generated by generic wxListCtrl (#4581) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@54608 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/changes.txt | 2 ++ src/generic/listctrl.cpp | 38 +++++++++----------------------------- 2 files changed, 11 insertions(+), 29 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index f007465473..6e917da3b8 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -101,6 +101,8 @@ All (GUI): - Fixed wxHTML default font size for printing to be 12pt regardless of the platform, instead of depending on GUI toolkit's screen configuration. - Support wxDP_ALLOWNONE style in generic wxDatePickerCtrl version. +- Set wxKeyEvent::m_uniChar correctly in the events generated by generic + wxListCtrl (Mikkel S). All (Unix): diff --git a/src/generic/listctrl.cpp b/src/generic/listctrl.cpp index 060a54398d..1a29e04146 100644 --- a/src/generic/listctrl.cpp +++ b/src/generic/listctrl.cpp @@ -3415,16 +3415,9 @@ void wxListMainWindow::OnKeyDown( wxKeyEvent &event ) wxWindow *parent = GetParent(); // propagate the key event upwards - wxKeyEvent ke( wxEVT_KEY_DOWN ); - ke.m_shiftDown = event.m_shiftDown; - ke.m_controlDown = event.m_controlDown; - ke.m_altDown = event.m_altDown; - ke.m_metaDown = event.m_metaDown; - ke.m_keyCode = event.m_keyCode; - ke.m_x = event.m_x; - ke.m_y = event.m_y; - ke.SetEventObject( parent ); - if (parent->GetEventHandler()->ProcessEvent( ke )) return; + wxKeyEvent ke(event); + if (parent->GetEventHandler()->ProcessEvent( ke )) + return; event.Skip(); } @@ -3434,16 +3427,10 @@ void wxListMainWindow::OnKeyUp( wxKeyEvent &event ) wxWindow *parent = GetParent(); // propagate the key event upwards - wxKeyEvent ke( wxEVT_KEY_UP ); - ke.m_shiftDown = event.m_shiftDown; - ke.m_controlDown = event.m_controlDown; - ke.m_altDown = event.m_altDown; - ke.m_metaDown = event.m_metaDown; - ke.m_keyCode = event.m_keyCode; - ke.m_x = event.m_x; - ke.m_y = event.m_y; + wxKeyEvent ke(event); ke.SetEventObject( parent ); - if (parent->GetEventHandler()->ProcessEvent( ke )) return; + if (parent->GetEventHandler()->ProcessEvent( ke )) + return; event.Skip(); } @@ -3464,16 +3451,9 @@ void wxListMainWindow::OnChar( wxKeyEvent &event ) } // propagate the char event upwards - wxKeyEvent ke( wxEVT_CHAR ); - ke.m_shiftDown = event.m_shiftDown; - ke.m_controlDown = event.m_controlDown; - ke.m_altDown = event.m_altDown; - ke.m_metaDown = event.m_metaDown; - ke.m_keyCode = event.m_keyCode; - ke.m_x = event.m_x; - ke.m_y = event.m_y; - ke.SetEventObject( parent ); - if (parent->GetEventHandler()->ProcessEvent( ke )) return; + wxKeyEvent ke(event); + if (parent->GetEventHandler()->ProcessEvent( ke )) + return; if (event.GetKeyCode() == WXK_TAB) {