update column highlight when mouse hovers over the control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -193,6 +193,12 @@ void wxHeaderCtrl::RefreshCol(unsigned int idx)
|
||||
RefreshRect(rect);
|
||||
}
|
||||
|
||||
void wxHeaderCtrl::RefreshColIfNotNone(unsigned int idx)
|
||||
{
|
||||
if ( idx != COL_NONE )
|
||||
RefreshCol(idx);
|
||||
}
|
||||
|
||||
void wxHeaderCtrl::RefreshColsAfter(unsigned int idx)
|
||||
{
|
||||
wxRect rect = GetClientRect();
|
||||
@@ -283,7 +289,20 @@ void wxHeaderCtrl::OnMouse(wxMouseEvent& mevent)
|
||||
|
||||
// find if the event is over a column at all
|
||||
bool onSeparator;
|
||||
const unsigned col = FindColumnAtPos(mevent.GetX(), onSeparator);
|
||||
const unsigned col = mevent.Leaving()
|
||||
? (onSeparator = false, COL_NONE)
|
||||
: FindColumnAtPos(mevent.GetX(), onSeparator);
|
||||
|
||||
// update the highlighted column if it changed
|
||||
if ( col != m_hover )
|
||||
{
|
||||
const unsigned hoverOld = m_hover;
|
||||
m_hover = col;
|
||||
|
||||
RefreshColIfNotNone(hoverOld);
|
||||
RefreshColIfNotNone(m_hover);
|
||||
}
|
||||
|
||||
if ( col == COL_NONE )
|
||||
return;
|
||||
|
||||
|
Reference in New Issue
Block a user