From: Ove Kaaven Date: Wed, 19 Jul 2000 08:36:53 +0000 (+0000) Subject: If, in a single-selection listctrl, a focused item is selected, and the X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/4aefa363efc2b256668fe90e3a20984b69cac89e If, in a single-selection listctrl, a focused item is selected, and the focus is moved programmatically (SetItemState) without selecting the new item, the old focused item wasn't deselected, making the listctrl end up with TWO selected items when the focused item gets selected by the user. So I made SetItemState deselect the old focused item when the focus is moved in a single-selection listctrl. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@7776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/generic/listctrl.cpp b/src/generic/listctrl.cpp index 63e50fb380..3fc7d41a6a 100644 --- a/src/generic/listctrl.cpp +++ b/src/generic/listctrl.cpp @@ -2499,6 +2499,7 @@ void wxListMainWindow::SetItemState( long item, long state, long stateMask ) UnfocusLine( m_current ); m_current = line; FocusLine( m_current ); + if ((m_mode & wxLC_SINGLE_SEL) && oldCurrent) oldCurrent->Hilight( FALSE ); RefreshLine( m_current ); if (oldCurrent) RefreshLine( oldCurrent ); }