m_owner->ClientToScreen( &x2, &y2 );
wxScreenDC dc;
- dc.SetLogicalFunction( wxXOR );
+ dc.SetLogicalFunction( wxINVERT );
dc.SetPen( wxPen( *wxBLACK, 2, wxSOLID ) );
dc.SetBrush( *wxTRANSPARENT_BRUSH );
ke.SetEventObject( parent );
if (parent->GetEventHandler()->ProcessEvent( ke )) return;
+ if (event.KeyCode() == WXK_TAB)
+ {
+ wxNavigationKeyEvent nevent;
+ nevent.SetDirection( !event.ShiftDown() );
+ nevent.SetCurrentFocus( m_parent );
+ if (m_parent->GetEventHandler()->ProcessEvent( nevent )) return;
+ }
+
/* no item -> nothing to do */
if (!m_current)
{
m_current = line;
FocusLine( m_current );
RefreshLine( m_current );
- RefreshLine( oldCurrent );
+ if (oldCurrent) RefreshLine( oldCurrent );
}
}
UnfocusLine( m_current );
m_current = line;
FocusLine( m_current );
- oldCurrent->Hilight( FALSE );
+ if (oldCurrent) oldCurrent->Hilight( FALSE );
RefreshLine( m_current );
- RefreshLine( oldCurrent );
+ if (oldCurrent) RefreshLine( oldCurrent );
}
bool on = state & wxLIST_STATE_SELECTED;
if (on != line->IsHilighted())