grid->SetCellValue( 0, 2, "Blah" );
grid->SetCellValue( 0, 3, "Read only" );
grid->SetReadOnly( 0, 3 );
+
+ grid->SetCellValue( 0, 4, "Can veto edit this cell" );
grid->SetCellValue( 0, 5, "Press\nCtrl+arrow\nto skip over\ncells" );
if ( ev.ShiftDown() ) logBuf << " (shift down)";
if ( ev.ControlDown() ) logBuf << " (control down)";
- wxLogMessage( "%s", logBuf.c_str() );
+ wxLogMessage( wxT("%s"), logBuf.c_str() );
// you must call event skip if you want default grid processing
//
logBuf = "";
logBuf << "Left click at row " << ev.GetRow()
<< " col " << ev.GetCol();
- wxLogMessage( "%s", logBuf.c_str() );
+ wxLogMessage( wxT("%s"), logBuf.c_str() );
// you must call event skip if you want default grid processing
// (cell highlighting etc.)
{
logBuf = "";
logBuf << "Resized row " << ev.GetRowOrCol();
- wxLogMessage( "%s", logBuf.c_str() );
+ wxLogMessage( wxT("%s"), logBuf.c_str() );
ev.Skip();
}
{
logBuf = "";
logBuf << "Resized col " << ev.GetRowOrCol();
- wxLogMessage( "%s", logBuf.c_str() );
+ wxLogMessage( wxT("%s"), logBuf.c_str() );
ev.Skip();
}
<< ", ShiftDown: "<< (ev.ShiftDown() ? 'T':'F')
<< ", AltDown: "<< (ev.AltDown() ? 'T':'F')
<< ", MetaDown: "<< (ev.MetaDown() ? 'T':'F') << " )";
- wxLogMessage( "%s", logBuf.c_str() );
+ wxLogMessage( wxT("%s"), logBuf.c_str() );
// you must call Skip() if you want the default processing
// to occur in wxGrid
<< ", ShiftDown: "<< (ev.ShiftDown() ? 'T':'F')
<< ", AltDown: "<< (ev.AltDown() ? 'T':'F')
<< ", MetaDown: "<< (ev.MetaDown() ? 'T':'F') << " )";
- wxLogMessage( "%s", logBuf.c_str() );
+ wxLogMessage( wxT("%s"), logBuf.c_str() );
ev.Skip();
}
<< " row " << ev.GetRow()
<< " col " << ev.GetCol();
- wxLogMessage( "%s", logBuf.c_str() );
+ wxLogMessage( wxT("%s"), logBuf.c_str() );
ev.Skip();
}
void GridFrame::OnEditorShown( wxGridEvent& ev )
{
- wxLogMessage( "Cell editor shown." );
+
+ if ( (ev.GetCol() == 4) &&
+ (ev.GetRow() == 0) &&
+ (wxMessageBox(_T("Are you sure you wish to edit this cell"),
+ _T("Checking"),wxYES_NO) == wxNO ) ) {
+
+ ev.Veto();
+ return;
+ }
+
+
+ wxLogMessage( wxT("Cell editor shown.") );
ev.Skip();
}
void GridFrame::OnEditorHidden( wxGridEvent& ev )
{
- wxLogMessage( "Cell editor hidden." );
+
+ if ( (ev.GetCol() == 4) &&
+ (ev.GetRow() == 0) &&
+ (wxMessageBox(_T("Are you sure you wish to finish editing this cell"),
+ _T("Checking"),wxYES_NO) == wxNO ) ) {
+
+ ev.Veto();
+ return;
+ }
+
+ wxLogMessage( wxT("Cell editor hidden.") );
ev.Skip();
}