X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/cabeffb029bfc532cf54ba1789b1c9ea2ef93771..0ffb2aa6e47721eebc485931efaad028b51b0565:/src/generic/listctrl.cpp diff --git a/src/generic/listctrl.cpp b/src/generic/listctrl.cpp index ce68571c65..4c7760728a 100644 --- a/src/generic/listctrl.cpp +++ b/src/generic/listctrl.cpp @@ -1808,8 +1808,6 @@ void wxListHeaderWindow::OnPaint( wxPaintEvent &WXUNUSED(event) ) void wxListHeaderWindow::DrawCurrent() { - return; - int x1 = m_currentX; int y1 = 0; m_owner->ClientToScreen( &x1, &y1 ); @@ -1920,8 +1918,8 @@ void wxListHeaderWindow::OnMouse( wxMouseEvent &event ) { m_isDragging = TRUE; m_currentX = x; - DrawCurrent(); CaptureMouse(); + DrawCurrent(); } //else: column resizing was vetoed by the user code } @@ -1956,6 +1954,7 @@ void wxListHeaderWindow::OnMouse( wxMouseEvent &event ) void wxListHeaderWindow::OnSetFocus( wxFocusEvent &WXUNUSED(event) ) { m_owner->SetFocus(); + m_owner->Update(); } bool wxListHeaderWindow::SendListEvent(wxEventType type, wxPoint pos) @@ -3070,6 +3069,9 @@ void wxListMainWindow::OnArrowChar(size_t newCurrent, const wxKeyEvent& event) { ChangeCurrent(newCurrent); + // refresh the old focus to remove it + RefreshLine( oldCurrent ); + // select all the items between the old and the new one if ( oldCurrent > newCurrent ) { @@ -3087,8 +3089,8 @@ void wxListMainWindow::OnArrowChar(size_t newCurrent, const wxKeyEvent& event) ChangeCurrent(newCurrent); - // refresh the old focus to remove it - RefreshLine( oldCurrent ); + // refresh the old focus to remove it + RefreshLine( oldCurrent ); if ( !event.ControlDown() ) { @@ -3096,6 +3098,7 @@ void wxListMainWindow::OnArrowChar(size_t newCurrent, const wxKeyEvent& event) } } + RefreshLine( m_current ); MoveToFocus();