X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c92b0f9abd8348df6c43e69e66cc428fb9aac59c..6a54cc2a1156229f1db27ec816c9be84e8da2ee3:/demos/dbbrowse/dbgrid.cpp?ds=sidebyside diff --git a/demos/dbbrowse/dbgrid.cpp b/demos/dbbrowse/dbgrid.cpp index b83245f264..3412640ac7 100644 --- a/demos/dbbrowse/dbgrid.cpp +++ b/demos/dbbrowse/dbgrid.cpp @@ -31,23 +31,29 @@ #include "std.h" // sorgsam Pflegen ! //---------------------------------------------------------------------------------------- BEGIN_EVENT_TABLE(DBGrid, wxGrid) - EVT_MOTION (DBGrid::OnMouseMove) - // DBGrid - EVT_GRID_LABEL_LEFT_CLICK( DBGrid::OnLabelLeftClick ) - EVT_GRID_LABEL_RIGHT_CLICK( DBGrid::OnLabelRightClick ) - EVT_GRID_LABEL_LEFT_DCLICK( DBGrid::OnLabelLeftDClick ) - EVT_GRID_LABEL_RIGHT_DCLICK( DBGrid::OnLabelRightDClick ) - EVT_GRID_CELL_LEFT_CLICK( DBGrid::OnCellLeftClick ) - EVT_GRID_CELL_RIGHT_CLICK( DBGrid::OnCellRightClick ) - EVT_GRID_CELL_LEFT_DCLICK( DBGrid::OnCellLeftDClick ) - EVT_GRID_CELL_RIGHT_DCLICK( DBGrid::OnCellRightDClick ) - EVT_GRID_ROW_SIZE( DBGrid::OnRowSize ) - // EVT_GRID_COL_SIZE( DBGrid::OnColSize ) - EVT_GRID_RANGE_SELECT( DBGrid::OnRangeSelected ) - EVT_GRID_CELL_CHANGE( DBGrid::OnCellChange ) - EVT_MENU(GRID_EDIT,DBGrid::OnModusEdit) - EVT_MENU(GRID_BROWSE,DBGrid::OnModusBrowse) + EVT_MOTION (DBGrid::OnMouseMove) + // DBGrid + // ------------ + EVT_GRID_CELL_CHANGE( DBGrid::OnCellChange ) + EVT_GRID_CELL_LEFT_CLICK( DBGrid::OnCellLeftClick ) + EVT_GRID_CELL_LEFT_DCLICK( DBGrid::OnCellLeftDClick ) + EVT_GRID_CELL_RIGHT_CLICK( DBGrid::OnCellRightClick ) + EVT_GRID_CELL_RIGHT_DCLICK( DBGrid::OnCellRightDClick ) + // EVT_GRID_COL_SIZE( DBGrid::OnColSize ) + // EVT_GRID_ROW_SIZE( DBGrid::OnRowSize ) + EVT_GRID_EDITOR_SHOWN( DBGrid::OnEditorShown ) + EVT_GRID_EDITOR_HIDDEN( DBGrid::OnEditorHidden ) + EVT_GRID_LABEL_LEFT_CLICK( DBGrid::OnLabelLeftClick ) + EVT_GRID_LABEL_LEFT_DCLICK( DBGrid::OnLabelLeftDClick ) + EVT_GRID_LABEL_RIGHT_CLICK( DBGrid::OnLabelRightClick ) + EVT_GRID_LABEL_RIGHT_DCLICK( DBGrid::OnLabelRightDClick ) + EVT_GRID_RANGE_SELECT( DBGrid::OnRangeSelected ) + EVT_GRID_ROW_SIZE( DBGrid::OnRowSize ) + EVT_GRID_SELECT_CELL( DBGrid::OnSelectCell ) + EVT_MENU(GRID_EDIT,DBGrid::OnModusEdit) + EVT_MENU(GRID_BROWSE,DBGrid::OnModusBrowse) END_EVENT_TABLE() + //---------------------------------------------------------------------------------------- // wxListCtrl(parent, id, pos, size, style) // wxGrid(parent,-1,wxPoint( 0, 0 ), wxSize( 400, 300 ) ); @@ -57,314 +63,364 @@ END_EVENT_TABLE() // DBGrid::DBGrid(wxWindow *parent, const wxWindowID id,const wxPoint& pos,const wxSize& size): // wxGrid(parent, id, pos, size) DBGrid::DBGrid(wxWindow *parent, const wxWindowID id,const wxPoint& pos,const wxSize& size, long style): - wxGrid(parent, id, pos, size, style) +wxGrid(parent, id, pos, size, style) { - b_EditModus = TRUE; - //--------------------------------------------------------------------------------------- - popupMenu1 = new wxMenu(""); - popupMenu1->Append(GRID_EDIT, _("Edit Modus")); - popupMenu2 = new wxMenu(""); - popupMenu2->Append(GRID_BROWSE, _("Browse Modus")); + b_EditModus = FALSE; + //--------------------------------------------------------------------------------------- + popupMenu1 = new wxMenu(""); + popupMenu1->Append(GRID_EDIT, _("Edit Modus")); + popupMenu2 = new wxMenu(""); + popupMenu2->Append(GRID_BROWSE, _("Browse Modus")); } + //---------------------------------------------------------------------------------------- DBGrid::~DBGrid() { + delete popupMenu1; + delete popupMenu2; } + //---------------------------------------------------------------------------------------- int DBGrid::OnTableView(wxString Table) { - //--------------------------------------------------------------------------------------- - int i=0,x,y,z, ValidTable=0; - wxString Temp0; - //SetLabelFont(* f_Temp); - wxBeginBusyCursor(); - SetFont(* pDoc->ft_Doc); - //--------------------------------------------------------------------------------------- - ct_BrowserDB = (db_Br+i_Which)->ct_BrowserDB; // Get the DSN Pointer - //--------------------------------------------------------------------------------------- - if (ct_BrowserDB) // Valid pointer (!= NULL) ? - { // Pointer is Valid, use the wxDatabase Information - for (x=0;xnumTables;x++) // go through the Tables - { - if (!wxStrcmp((ct_BrowserDB->pTableInf+x)->tableName,Table)) // is this our Table ? - { // Yes, the Data of this Table shall be put into the Grid - ValidTable = x; // Save the Tablenumber - (db_Br+i_Which)->OnSelect(Table,FALSE); // Select * from "table" - // Set the local Pointer to the Column Information we are going to use - (db_Br+i_Which)->cl_BrowserDB = (ct_BrowserDB->pTableInf+x)->pColInf; - if ((ct_BrowserDB->pTableInf+x)->pColInf) // Valid pointer (!= NULL) ? - { // Pointer is Valid, Column Informationen sind Vorhanden - i = (db_Br+i_Which)->i_Records; // How many Records are there - (db_Br+i_Which)->i_Which = ValidTable; // Still used ???? mj10777 - if (i == 0) // If the Table is empty, then show one empty row - i++; - // wxLogMessage(_("\n-I-> DBGrid::OnTableView():: Vor CreateGrid")); - CreateGrid(i,(ct_BrowserDB->pTableInf+x)->numCols); // Records , Columns - for (y=0;y<(ct_BrowserDB->pTableInf+x)->numCols;y++) // Loop through the Fields - { // The Field / Column name is used here as Row Titel - SetColLabelValue(y,((ct_BrowserDB->pTableInf+x)->pColInf+y)->colName); - SetColSize(y,95); - } // for (y=0;y<(ct_BrowserDB->pTableInf+x)->numCols;y++) - SetColSize(((ct_BrowserDB->pTableInf+x)->numCols-1),120); // Make the last Column Wider - // The Grid has been created, now fill it - for (z=0;z<(db_Br+i_Which)->i_Records;z++) // Loop through the Records - { - Temp0.Printf("%06d",z+1); SetRowLabelValue(z,Temp0); // Set Row Lable Value - (db_Br+i_Which)->OnGetNext((ct_BrowserDB->pTableInf+ValidTable)->numCols,FALSE); - for (y=0;y<(ct_BrowserDB->pTableInf+ValidTable)->numCols;y++) // Loop through the Fields - { // BrowserDB::OnGetNext Formats the field Value into tablename - SetCellValue(z, y,((db_Br+i_Which)->cl_BrowserDB+y)->tableName); - } - if (z % 50 == 0) - { - Temp0.Printf(_("-I-> DBGrid::OnTableView(%s) - Record %6d has been read."),Table.c_str(),z); - pDoc->p_MainFrame->SetStatusText(Temp0, 0); - } - } // for (z=0;z<(db_Br+i_Which)->i_Records;z++) - Temp0.Printf(_("-I-> DBGrid::OnTableView(%s) - %6d Records have been read."),Table.c_str(),z); - pDoc->p_MainFrame->SetStatusText(Temp0, 0); - // The Grid has been filled, now leave - goto Weiter; - } // if ((ct_BrowserDB->pTableInf+x)->pColInf) + wxStopWatch sw; + //--------------------------------------------------------------------------------------- + int i=0,x,y,z, ValidTable=0; + wxString Temp0; + wxBeginBusyCursor(); + SetDefaultCellFont(* pDoc->ft_Doc); + //--------------------------------------------------------------------------------------- + ct_BrowserDB = (db_Br+i_Which)->ct_BrowserDB; // Get the DSN Pointer + //--------------------------------------------------------------------------------------- + if (ct_BrowserDB) // Valid pointer (!= NULL) ? + { // Pointer is Valid, use the wxDatabase Information + for (x=0;xnumTables;x++) // go through the Tables + { + if (!wxStrcmp((ct_BrowserDB->pTableInf+x)->tableName,Table)) // is this our Table ? + { // Yes, the Data of this Table shall be put into the Grid + ValidTable = x; // Save the Tablenumber + (db_Br+i_Which)->OnSelect(Table,FALSE); // Select * from "table" + // Set the local Pointer to the Column Information we are going to use + (db_Br+i_Which)->cl_BrowserDB = (ct_BrowserDB->pTableInf+x)->pColInf; + if ((ct_BrowserDB->pTableInf+x)->pColInf) // Valid pointer (!= NULL) ? + { // Pointer is Valid, Column Informationen sind Vorhanden + i = (db_Br+i_Which)->i_Records; // How many Records are there + (db_Br+i_Which)->i_Which = ValidTable; // Still used ???? mj10777 + if (i == 0) // If the Table is empty, then show one empty row + i++; + // wxLogMessage(_("\n-I-> DBGrid::OnTableView() : Vor CreateGrid")); + CreateGrid(i,(ct_BrowserDB->pTableInf+x)->numCols); // Records , Columns + for (y=0;y<(ct_BrowserDB->pTableInf+x)->numCols;y++) // Loop through the Fields + { // The Field / Column name is used here as Row Titel + SetColLabelValue(y,((ct_BrowserDB->pTableInf+x)->pColInf+y)->colName); + SetColSize(y,95); + } // for (y=0;y<(ct_BrowserDB->pTableInf+x)->numCols;y++) + SetColSize(((ct_BrowserDB->pTableInf+x)->numCols-1),120); // Make the last Column Wider + // The Grid has been created, now fill it + for (z=0;z<(db_Br+i_Which)->i_Records;z++) // Loop through the Records + { + Temp0.Printf("%06d",z+1); SetRowLabelValue(z,Temp0); // Set Row Lable Value + (db_Br+i_Which)->OnGetNext((ct_BrowserDB->pTableInf+ValidTable)->numCols,FALSE); + for (y=0;y<(ct_BrowserDB->pTableInf+ValidTable)->numCols;y++) // Loop through the Fields + { // BrowserDB::OnGetNext Formats the field Value into tablename + SetCellValue(z, y,((db_Br+i_Which)->cl_BrowserDB+y)->tableName); + } + if (z % 50 == 0) + { + Temp0.Printf(_("-I-> DBGrid::OnTableView(%s) - Record %6d (from %d) has been read."),Table.c_str(),z,(db_Br+i_Which)->i_Records); + pDoc->p_MainFrame->SetStatusText(Temp0, 0); + } + } // for (z=0;z<(db_Br+i_Which)->i_Records;z++) + Temp0.Printf(_("-I-> DBGrid::OnTableView(%s) - %6d Records have been read. - Time needed : %ld ms"),Table.c_str(),z,sw.Time()); + wxLogMessage(Temp0); + pDoc->p_MainFrame->SetStatusText(Temp0, 0); + // The Grid has been filled, now leave + goto Weiter; + } // if ((ct_BrowserDB->pTableInf+x)->pColInf) + else + wxLogMessage(_("\n-E-> DBGrid::OnTableView() : Invalid Column Pointer : Failed")); + } // if ((ct_BrowserDB->pTableInf+x)->tableType == "TABLE") + } // for (x=0;xnumTables;x++) + } // if (ct_BrowserDB) else - wxLogMessage(_("\n-E-> DBGrid::OnTableView():: Invalid Column Pointer : Failed")); - } // if ((ct_BrowserDB->pTableInf+x)->tableType == "TABLE") - } // for (x=0;xnumTables;x++) - } // if (ct_BrowserDB) - else - wxLogMessage(_("\n-E-> DBGrid::OnTableView():: Invalid DSN Pointer : Failed")); - //--------------------------------------------------------------------------------------- - Weiter: - SetEditInPlace(b_EditModus); // Activate in-place Editing (FALSE) - wxEndBusyCursor(); - //--------------------------------------------------------------------------------------- - wxLogMessage(_("-I-> DBGrid::OnTableView() - End")); - return 0; + wxLogMessage(_("\n-E-> DBGrid::OnTableView() : Invalid DSN Pointer : Failed")); + //--------------------------------------------------------------------------------------- +Weiter: + EnableEditing(b_EditModus); // Deactivate in-place Editing + wxEndBusyCursor(); + //--------------------------------------------------------------------------------------- + wxLogMessage(_("-I-> DBGrid::OnTableView() - End")); + return 0; } + //---------------------------------------------------------------------------------------- -void DBGrid::OnModusEdit(wxMenu& menu, wxCommandEvent& event) +void DBGrid::OnModusEdit(wxCommandEvent& event) { - b_EditModus = TRUE; // Needed by PopupMenu - SetEditable(FALSE); // Do not Edit with Text Edit Control - SetEditInPlace(b_EditModus); // Deactivate in-place Editing - UpdateDimensions(); // Redraw the Grid + b_EditModus = TRUE; // Needed by PopupMenu + EnableEditing(b_EditModus); // Activate in-place Editing + UpdateDimensions(); // Redraw the Grid + // wxLogMessage(_("-I-> DBGrid::OnModusEdit() - End")); } + //---------------------------------------------------------------------------------------- -void DBGrid::OnModusBrowse(wxMenu& menu, wxCommandEvent& event) +void DBGrid::OnModusBrowse(wxCommandEvent& event) { - b_EditModus = FALSE; // Needed by PopupMenu - SetEditInPlace(b_EditModus); // Deactivate in-place Editing - UpdateDimensions(); // Redraw the Grid + b_EditModus = FALSE; // Needed by PopupMenu + EnableEditing(b_EditModus); // Deactivate in-place Editing + UpdateDimensions(); // Redraw the Grid + // wxLogMessage(_("-I-> DBGrid::OnModusBrowse() - End")); } + +//---------------------------------------------------------------------------------------- +void DBGrid::OnEditorShown( wxGridEvent& ev ) +{ + // wxLogMessage(_("-I-> DBGrid::OnEditorShown() - End")); + ev.Skip(); +} + +//---------------------------------------------------------------------------------------- +void DBGrid::OnEditorHidden( wxGridEvent& ev ) +{ + // wxLogMessage(_("-I-> DBGrid::OnEditorHidden() - End")); + ev.Skip(); +} + +//---------------------------------------------------------------------------------------- +void DBGrid::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 DBGrid::OnMouseMove(wxMouseEvent &event) { - MousePos = event.GetPosition(); + MousePos = event.GetPosition(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnLabelLeftClick( wxGridEvent& ev ) { - logBuf = "DBGrid::OnLabelLeftClick : "; - if ( ev.GetRow() != -1 ) - { - logBuf << "row label " << ev.GetRow(); - } - else if ( ev.GetCol() != -1 ) - { - logBuf << "col label " << ev.GetCol(); - } - else - { - logBuf << "corner label"; - } - if ( ev.ShiftDown() ) - logBuf << " (shift down)"; - // wxLogMessage( "%s", logBuf.c_str() ); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - ev.Skip(); + logBuf = "DBGrid::OnLabelLeftClick : "; + if ( ev.GetRow() != -1 ) + { + logBuf << "row label " << ev.GetRow(); + } + else if ( ev.GetCol() != -1 ) + { + logBuf << "col label " << ev.GetCol(); + } + else + { + logBuf << "corner label"; + } + if ( ev.ShiftDown() ) + logBuf << " (shift down)"; + + // wxLogMessage( "%s", logBuf.c_str() ); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnLabelRightClick( wxGridEvent& ev ) { - //------------------- - if (b_EditModus) - PopupMenu(popupMenu2,MousePos.x,MousePos.y); - else - PopupMenu(popupMenu1,MousePos.x,MousePos.y); - //------------------- - logBuf = "DBGrid::OnLabelRightClick : "; - if ( ev.GetRow() != -1 ) - { - logBuf << "row label " << ev.GetRow(); - } - else if ( ev.GetCol() != -1 ) - { - logBuf << "col label " << ev.GetCol(); - } - else - { - logBuf << "corner label"; - } - if ( ev.ShiftDown() ) - logBuf << " (shift down)"; - // wxLogMessage( "%s", logBuf.c_str() ); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - ev.Skip(); + //------------------------------------------------------- + if (b_EditModus) + PopupMenu(popupMenu2,MousePos.x,MousePos.y); + else + PopupMenu(popupMenu1,MousePos.x,MousePos.y); + //------------------- + logBuf = "DBGrid::OnLabelRightClick : "; + if ( ev.GetRow() != -1 ) + { + logBuf << "row label " << ev.GetRow(); + } + else if ( ev.GetCol() != -1 ) + { + logBuf << "col label " << ev.GetCol(); + } + else + { + logBuf << "corner label"; + } + if ( ev.ShiftDown() ) + logBuf << " (shift down)"; + + // wxLogMessage( "%s", logBuf.c_str() ); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnLabelLeftDClick( wxGridEvent& ev ) { - logBuf = "DBGrid::OnLabelLeftDClick : "; - if ( ev.GetRow() != -1 ) - { - logBuf << "row label " << ev.GetRow(); - } - else if ( ev.GetCol() != -1 ) - { - logBuf << "col label " << ev.GetCol(); - } - else - { - logBuf << "corner label"; - } - if ( ev.ShiftDown() ) - logBuf << " (shift down)"; - // wxLogMessage( "%s", logBuf.c_str() ); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - ev.Skip(); + logBuf = "DBGrid::OnLabelLeftDClick : "; + if ( ev.GetRow() != -1 ) + { + logBuf << "row label " << ev.GetRow(); + } + else if ( ev.GetCol() != -1 ) + { + logBuf << "col label " << ev.GetCol(); + } + else + { + logBuf << "corner label"; + } + if ( ev.ShiftDown() ) + logBuf << " (shift down)"; + + // wxLogMessage( "%s", logBuf.c_str() ); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnLabelRightDClick( wxGridEvent& ev ) { - logBuf = "DBGrid::OnLabelRightDClick : "; - if ( ev.GetRow() != -1 ) - { - logBuf << "row label " << ev.GetRow(); - } - else if ( ev.GetCol() != -1 ) - { - logBuf << "col label " << ev.GetCol(); - } - else - { - logBuf << "corner label"; - } - if ( ev.ShiftDown() ) - logBuf << " (shift down)"; - // wxLogMessage( "%s", logBuf.c_str() ); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - ev.Skip(); + logBuf = "DBGrid::OnLabelRightDClick : "; + if ( ev.GetRow() != -1 ) + { + logBuf << "row label " << ev.GetRow(); + } + else if ( ev.GetCol() != -1 ) + { + logBuf << "col label " << ev.GetCol(); + } + else + { + logBuf << "corner label"; + } + if ( ev.ShiftDown() ) + logBuf << " (shift down)"; + // wxLogMessage( "%s", logBuf.c_str() ); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnCellLeftClick( wxGridEvent& ev ) { - logBuf = "DBGrid::OnCellLeftClick : "; - logBuf << "Cell at row " << ev.GetRow() - << " col " << ev.GetCol(); - // wxLogMessage( "%s", logBuf.c_str() ); - // wxMessageBox(logBuf); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - // you must call event skip if you want default grid processing - // (cell highlighting etc.) - // - ev.Skip(); + logBuf = "DBGrid::OnCellLeftClick : "; + logBuf << "Cell at row " << ev.GetRow() + << " col " << ev.GetCol(); + // wxLogMessage( "%s", logBuf.c_str() ); + // wxMessageBox(logBuf); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + // you must call event skip if you want default grid processing + // (cell highlighting etc.) + // + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnCellRightClick( wxGridEvent& ev ) { - logBuf = "DBGrid::OnCellRightClick : "; - logBuf << "Cell at row " << ev.GetRow() - << " col " << ev.GetCol(); - // wxLogMessage( "%s", logBuf.c_str() ); - // wxMessageBox(logBuf); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - // you must call event skip if you want default grid processing - // (cell highlighting etc.) - // - ev.Skip(); + logBuf = "DBGrid::OnCellRightClick : "; + logBuf << "Cell at row " << ev.GetRow() + << " col " << ev.GetCol(); + // wxLogMessage( "%s", logBuf.c_str() ); + // wxMessageBox(logBuf); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + // you must call event skip if you want default grid processing + // (cell highlighting etc.) + // + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnCellLeftDClick( wxGridEvent& ev ) { - logBuf = "DBGrid::OnCellLeftDClick : "; - logBuf << "Cell at row " << ev.GetRow() - << " col " << ev.GetCol(); - // wxLogMessage( "%s", logBuf.c_str() ); - // wxMessageBox(logBuf); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - // you must call event skip if you want default grid processing - // (cell highlighting etc.) - // - ev.Skip(); + logBuf = "DBGrid::OnCellLeftDClick : "; + logBuf << "Cell at row " << ev.GetRow() + << " col " << ev.GetCol(); + // wxLogMessage( "%s", logBuf.c_str() ); + // wxMessageBox(logBuf); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + // you must call event skip if you want default grid processing + // (cell highlighting etc.) + // + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnCellRightDClick( wxGridEvent& ev ) { - logBuf = "DBGrid::OnCellRightDClick : "; - logBuf << "Cell at row " << ev.GetRow() - << " col " << ev.GetCol(); - // wxLogMessage( "%s", logBuf.c_str() ); - // wxMessageBox(logBuf); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - // you must call event skip if you want default grid processing - // (cell highlighting etc.) - // - ev.Skip(); + logBuf = "DBGrid::OnCellRightDClick : "; + logBuf << "Cell at row " << ev.GetRow() + << " col " << ev.GetCol(); + // wxLogMessage( "%s", logBuf.c_str() ); + // wxMessageBox(logBuf); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + // you must call event skip if you want default grid processing + // (cell highlighting etc.) + // + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnCellChange( wxGridEvent& ev ) { - logBuf = "DBGrid::OnCellChange : "; - logBuf << "Cell at row " << ev.GetRow() - << " col " << ev.GetCol(); - // wxLogMessage( "%s", logBuf.c_str() ); - // wxMessageBox(logBuf); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - // you must call event skip if you want default grid processing - // (cell highlighting etc.) - // - ev.Skip(); + logBuf = "DBGrid::OnCellChange : "; + logBuf << "Cell at row " << ev.GetRow() + << " col " << ev.GetCol(); + // wxLogMessage( "%s", logBuf.c_str() ); + // wxMessageBox(logBuf); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + // you must call event skip if you want default grid processing + // (cell highlighting etc.) + // + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnRowSize( wxGridSizeEvent& ev ) { - logBuf = "DBGrid::OnRowSize : "; - logBuf << "Resized row " << ev.GetRowOrCol(); - // wxLogMessage( "%s", logBuf.c_str() ); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - ev.Skip(); + logBuf = "DBGrid::OnRowSize : "; + logBuf << "Resized row " << ev.GetRowOrCol(); + // wxLogMessage( "%s", logBuf.c_str() ); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnColSize( wxGridSizeEvent& ev ) { - logBuf = "DBGrid::OnColSize : "; - logBuf << "Resized col " << ev.GetRowOrCol(); - // wxLogMessage( "%s", logBuf.c_str() ); - logBuf += "\n"; - wxLogMessage(logBuf.c_str()); - ev.Skip(); + logBuf = "DBGrid::OnColSize : "; + logBuf << "Resized col " << ev.GetRowOrCol(); + // wxLogMessage( "%s", logBuf.c_str() ); + logBuf += "\n"; + wxLogMessage(logBuf.c_str()); + ev.Skip(); } + //---------------------------------------------------------------------------------------- void DBGrid::OnRangeSelected( wxGridRangeSelectEvent& ev ) { - logBuf = "DBGrid::OnRangeSelected : "; - logBuf << "Selected cells from row " << ev.GetTopRow() - << " col " << ev.GetLeftCol() - << " to row " << ev.GetBottomRow() - << " col " << ev.GetRightCol(); - logBuf += "\n"; - // wxLogMessage( "%s", logBuf.c_str() ); - wxLogMessage(logBuf.c_str()); - ev.Skip(); + logBuf = "DBGrid::OnRangeSelected : "; + logBuf << "Selected cells from row " << ev.GetTopRow() + << " col " << ev.GetLeftCol() + << " to row " << ev.GetBottomRow() + << " col " << ev.GetRightCol(); + logBuf += "\n"; + // wxLogMessage( "%s", logBuf.c_str() ); + wxLogMessage(logBuf.c_str()); + ev.Skip(); } //----------------------------------------------------------------------------------------