From: Michael Bedward Date: Tue, 19 Oct 1999 07:27:56 +0000 (+0000) Subject: Added demo of handling EVT_GRID_SELECT_CELL. X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/c336585eecc38f702a2fec33052dee105a8f2b35?ds=sidebyside Added demo of handling EVT_GRID_SELECT_CELL. A couple of other minor tweaks. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4063 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/samples/newgrid/griddemo.cpp b/samples/newgrid/griddemo.cpp index cf9d04cba6..47e451ef0c 100644 --- a/samples/newgrid/griddemo.cpp +++ b/samples/newgrid/griddemo.cpp @@ -68,6 +68,7 @@ BEGIN_EVENT_TABLE( GridFrame, wxFrame ) EVT_GRID_CELL_LEFT_CLICK( GridFrame::OnCellLeftClick ) EVT_GRID_ROW_SIZE( GridFrame::OnRowSize ) EVT_GRID_COL_SIZE( GridFrame::OnColSize ) + EVT_GRID_SELECT_CELL( GridFrame::OnSelectCell ) EVT_GRID_RANGE_SELECT( GridFrame::OnRangeSelected ) EVT_GRID_CELL_CHANGE( GridFrame::OnCellValueChanged ) END_EVENT_TABLE() @@ -443,20 +444,22 @@ void GridFrame::OnLabelLeftClick( wxGridEvent& ev ) logBuf = ""; if ( ev.GetRow() != -1 ) { - logBuf << "row label " << ev.GetRow(); + logBuf << "Left click on row label " << ev.GetRow(); } else if ( ev.GetCol() != -1 ) { - logBuf << "col label " << ev.GetCol(); + logBuf << "Left click on col label " << ev.GetCol(); } else { - logBuf << "corner label"; + logBuf << "Left click on corner label"; } if ( ev.ShiftDown() ) logBuf << " (shift down)"; wxLogMessage( "%s", logBuf.c_str() ); + // you must call event skip if you want default grid processing + // ev.Skip(); } @@ -464,7 +467,7 @@ void GridFrame::OnLabelLeftClick( wxGridEvent& ev ) void GridFrame::OnCellLeftClick( wxGridEvent& ev ) { logBuf = ""; - logBuf << "Cell at row " << ev.GetRow() + logBuf << "Left click at row " << ev.GetRow() << " col " << ev.GetCol(); wxLogMessage( "%s", logBuf.c_str() ); @@ -494,6 +497,19 @@ void GridFrame::OnColSize( wxGridSizeEvent& ev ) ev.Skip(); } + +void GridFrame::OnSelectCell( wxGridEvent& ev ) +{ + logBuf = ""; + logBuf << "Selected cell at row " << ev.GetRow() + << " col " << ev.GetCol(); + wxLogMessage( "%s", logBuf.c_str() ); + + // you must call Skip() if you want the default processing + // to occur in wxGrid + ev.Skip(); +} + void GridFrame::OnRangeSelected( wxGridRangeSelectEvent& ev ) { logBuf = ""; diff --git a/samples/newgrid/griddemo.h b/samples/newgrid/griddemo.h index 77510d3188..56d10dee2a 100644 --- a/samples/newgrid/griddemo.h +++ b/samples/newgrid/griddemo.h @@ -54,6 +54,7 @@ class GridFrame : public wxFrame void OnCellLeftClick( wxGridEvent& ); void OnRowSize( wxGridSizeEvent& ); void OnColSize( wxGridSizeEvent& ); + void OnSelectCell( wxGridEvent& ); void OnRangeSelected( wxGridRangeSelectEvent& ); void OnCellValueChanged( wxGridEvent& );