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.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -211,6 +211,7 @@ public:
|
|||||||
void OnPaint( wxPaintEvent &event );
|
void OnPaint( wxPaintEvent &event );
|
||||||
void OnSetFocus( wxFocusEvent &event );
|
void OnSetFocus( wxFocusEvent &event );
|
||||||
void OnKillFocus( wxFocusEvent &event );
|
void OnKillFocus( wxFocusEvent &event );
|
||||||
|
void OnKeyDown( wxKeyEvent &event );
|
||||||
void OnChar( wxKeyEvent &event );
|
void OnChar( wxKeyEvent &event );
|
||||||
void OnMouse( wxMouseEvent &event );
|
void OnMouse( wxMouseEvent &event );
|
||||||
void OnGetToolTip( wxTreeEvent &event );
|
void OnGetToolTip( wxTreeEvent &event );
|
||||||
|
|||||||
@@ -902,6 +902,7 @@ BEGIN_EVENT_TABLE(wxGenericTreeCtrl, wxTreeCtrlBase)
|
|||||||
EVT_PAINT (wxGenericTreeCtrl::OnPaint)
|
EVT_PAINT (wxGenericTreeCtrl::OnPaint)
|
||||||
EVT_SIZE (wxGenericTreeCtrl::OnSize)
|
EVT_SIZE (wxGenericTreeCtrl::OnSize)
|
||||||
EVT_MOUSE_EVENTS (wxGenericTreeCtrl::OnMouse)
|
EVT_MOUSE_EVENTS (wxGenericTreeCtrl::OnMouse)
|
||||||
|
EVT_KEY_DOWN (wxGenericTreeCtrl::OnKeyDown)
|
||||||
EVT_CHAR (wxGenericTreeCtrl::OnChar)
|
EVT_CHAR (wxGenericTreeCtrl::OnChar)
|
||||||
EVT_SET_FOCUS (wxGenericTreeCtrl::OnSetFocus)
|
EVT_SET_FOCUS (wxGenericTreeCtrl::OnSetFocus)
|
||||||
EVT_KILL_FOCUS (wxGenericTreeCtrl::OnKillFocus)
|
EVT_KILL_FOCUS (wxGenericTreeCtrl::OnKillFocus)
|
||||||
@@ -3021,16 +3022,19 @@ void wxGenericTreeCtrl::OnKillFocus( wxFocusEvent &event )
|
|||||||
event.Skip();
|
event.Skip();
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxGenericTreeCtrl::OnChar( wxKeyEvent &event )
|
void wxGenericTreeCtrl::OnKeyDown( wxKeyEvent &event )
|
||||||
{
|
{
|
||||||
|
// send a tree event
|
||||||
wxTreeEvent te( wxEVT_COMMAND_TREE_KEY_DOWN, this);
|
wxTreeEvent te( wxEVT_COMMAND_TREE_KEY_DOWN, this);
|
||||||
te.m_evtKey = event;
|
te.m_evtKey = event;
|
||||||
if ( GetEventHandler()->ProcessEvent( te ) )
|
if ( GetEventHandler()->ProcessEvent( te ) )
|
||||||
{
|
|
||||||
// intercepted by the user code
|
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
|
event.Skip();
|
||||||
|
}
|
||||||
|
|
||||||
|
void wxGenericTreeCtrl::OnChar( wxKeyEvent &event )
|
||||||
|
{
|
||||||
if ( (m_current == 0) || (m_key_current == 0) )
|
if ( (m_current == 0) || (m_key_current == 0) )
|
||||||
{
|
{
|
||||||
event.Skip();
|
event.Skip();
|
||||||
|
|||||||
Reference in New Issue
Block a user