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);
|
RefreshRect(rect);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void wxHeaderCtrl::RefreshColIfNotNone(unsigned int idx)
|
||||||
|
{
|
||||||
|
if ( idx != COL_NONE )
|
||||||
|
RefreshCol(idx);
|
||||||
|
}
|
||||||
|
|
||||||
void wxHeaderCtrl::RefreshColsAfter(unsigned int idx)
|
void wxHeaderCtrl::RefreshColsAfter(unsigned int idx)
|
||||||
{
|
{
|
||||||
wxRect rect = GetClientRect();
|
wxRect rect = GetClientRect();
|
||||||
@@ -283,7 +289,20 @@ void wxHeaderCtrl::OnMouse(wxMouseEvent& mevent)
|
|||||||
|
|
||||||
// find if the event is over a column at all
|
// find if the event is over a column at all
|
||||||
bool onSeparator;
|
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 )
|
if ( col == COL_NONE )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user