Added dialog tabbing to wxX11.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
2002-03-12 22:15:41 +00:00
parent 32f8e36335
commit 120b822df1

View File

@@ -486,15 +486,28 @@ bool wxApp::ProcessXEvent(WXEvent* _event)
// wxLogDebug( "OnKey from %s", win->GetName().c_str() );
// We didn't process wxEVT_KEY_DOWN, so send
// wxEVT_CHAR
if (!win->GetEventHandler()->ProcessEvent( keyEvent ))
// We didn't process wxEVT_KEY_DOWN, so send wxEVT_CHAR
if (win->GetEventHandler()->ProcessEvent( keyEvent ))
return TRUE;
keyEvent.SetEventType(wxEVT_CHAR);
if (win->GetEventHandler()->ProcessEvent( keyEvent ))
return TRUE;
if ( (keyEvent.m_keyCode == WXK_TAB) &&
win->GetParent() && (win->GetParent()->HasFlag( wxTAB_TRAVERSAL)) )
{
keyEvent.SetEventType(wxEVT_CHAR);
if (!win->GetEventHandler()->ProcessEvent( keyEvent ))
return FALSE;
wxNavigationKeyEvent new_event;
new_event.SetEventObject( win->GetParent() );
/* GDK reports GDK_ISO_Left_Tab for SHIFT-TAB */
new_event.SetDirection( (keyEvent.m_keyCode == WXK_TAB) );
/* CTRL-TAB changes the (parent) window, i.e. switch notebook page */
new_event.SetWindowChange( keyEvent.ControlDown() );
new_event.SetCurrentFocus( win );
return win->GetParent()->GetEventHandler()->ProcessEvent( new_event );
}
return TRUE;
return FALSE;
}
case KeyRelease:
{