some extra refreshing and updating on wxMac so the grid renders itself correctly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -7788,6 +7788,10 @@ void wxGrid::HideCellEditControl()
|
|||||||
wxRect rect( CellToRect(row, col) );
|
wxRect rect( CellToRect(row, col) );
|
||||||
CalcScrolledPosition(rect.x, rect.y, &rect.x, &rect.y );
|
CalcScrolledPosition(rect.x, rect.y, &rect.x, &rect.y );
|
||||||
rect.width = m_gridWin->GetClientSize().GetWidth() - rect.x;
|
rect.width = m_gridWin->GetClientSize().GetWidth() - rect.x;
|
||||||
|
#ifdef __WXMAC__
|
||||||
|
// ensure that the pixels under the focus ring get refreshed as well
|
||||||
|
rect.Inflate(10,10);
|
||||||
|
#endif
|
||||||
m_gridWin->Refresh( false, &rect );
|
m_gridWin->Refresh( false, &rect );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -807,6 +807,9 @@ void wxGridSelection::ClearSelection()
|
|||||||
{
|
{
|
||||||
r = m_grid->BlockToDeviceRect( coords1, coords1 );
|
r = m_grid->BlockToDeviceRect( coords1, coords1 );
|
||||||
((wxWindow *)m_grid->m_gridWin)->Refresh( false, &r );
|
((wxWindow *)m_grid->m_gridWin)->Refresh( false, &r );
|
||||||
|
#ifdef __WXMAC__
|
||||||
|
((wxWindow *)m_grid->m_gridWin)->Update();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -823,6 +826,9 @@ void wxGridSelection::ClearSelection()
|
|||||||
{
|
{
|
||||||
r = m_grid->BlockToDeviceRect( coords1, coords2 );
|
r = m_grid->BlockToDeviceRect( coords1, coords2 );
|
||||||
((wxWindow *)m_grid->m_gridWin)->Refresh( false, &r );
|
((wxWindow *)m_grid->m_gridWin)->Refresh( false, &r );
|
||||||
|
#ifdef __WXMAC__
|
||||||
|
((wxWindow *)m_grid->m_gridWin)->Update();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -839,6 +845,9 @@ void wxGridSelection::ClearSelection()
|
|||||||
r = m_grid->BlockToDeviceRect( wxGridCellCoords( row, 0 ),
|
r = m_grid->BlockToDeviceRect( wxGridCellCoords( row, 0 ),
|
||||||
wxGridCellCoords( row, m_grid->GetNumberCols() - 1 ) );
|
wxGridCellCoords( row, m_grid->GetNumberCols() - 1 ) );
|
||||||
((wxWindow *)m_grid->m_gridWin)->Refresh( false, &r );
|
((wxWindow *)m_grid->m_gridWin)->Refresh( false, &r );
|
||||||
|
#ifdef __WXMAC__
|
||||||
|
((wxWindow *)m_grid->m_gridWin)->Update();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -856,6 +865,9 @@ void wxGridSelection::ClearSelection()
|
|||||||
r = m_grid->BlockToDeviceRect( wxGridCellCoords( 0, col ),
|
r = m_grid->BlockToDeviceRect( wxGridCellCoords( 0, col ),
|
||||||
wxGridCellCoords( m_grid->GetNumberRows() - 1, col ) );
|
wxGridCellCoords( m_grid->GetNumberRows() - 1, col ) );
|
||||||
((wxWindow *)m_grid->m_gridWin)->Refresh( false, &r );
|
((wxWindow *)m_grid->m_gridWin)->Refresh( false, &r );
|
||||||
|
#ifdef __WXMAC__
|
||||||
|
((wxWindow *)m_grid->m_gridWin)->Update();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user