Fixed SetCurrentCell for Motif, removed SelectionToDEviceRect.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_2_BRANCH@7503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Neis
2000-05-28 14:16:10 +00:00
parent e54334e7f1
commit d270402a9f
2 changed files with 6 additions and 24 deletions

View File

@@ -1311,15 +1311,6 @@ public:
wxRect BlockToDeviceRect( const wxGridCellCoords & topLeft,
const wxGridCellCoords & bottomRight );
// This function returns the rectangle that encloses the selected cells
// in device coords and clipped to the client size of the grid window.
//
wxRect SelectionToDeviceRect()
{
return BlockToDeviceRect( m_selectingTopLeft,
m_selectingBottomRight );
}
// Access or update the selection fore/back colours
wxColour GetSelectionBackground() const
{ return m_selectionBackground; }

View File

@@ -5358,6 +5358,9 @@ void wxGrid::SetCurrentCell( const wxGridCellCoords& coords )
return;
}
wxClientDC dc(m_gridWin);
PrepareDC(dc);
if ( m_currentCellCoords != wxGridNoCellCoords )
{
HideCellEditControl();
@@ -5377,28 +5380,16 @@ void wxGrid::SetCurrentCell( const wxGridCellCoords& coords )
// Otherwise refresh redraws the highlight!
m_currentCellCoords = coords;
m_gridWin->Refresh( FALSE, &r );
CalcCellsExposed( r );
DrawGridCellArea(dc);
DrawAllGridLines( dc, r );
}
m_currentCellCoords = coords;
wxClientDC dc(m_gridWin);
PrepareDC(dc);
wxGridCellAttr* attr = GetCellAttr(coords);
DrawCellHighlight(dc, attr);
attr->DecRef();
#if 0
// SN: For my extended selection code, automatic
// deselection is definitely not a good idea.
if ( IsSelection() )
{
wxRect r( SelectionToDeviceRect() );
ClearSelection();
if ( !GetBatchCount() ) m_gridWin->Refresh( FALSE, &r );
}
#endif
}