MCPcopy Create free account
hub / github.com/Tablecruncher/tablecruncher / deleteFlaggedCB

Method deleteFlaggedCB

src/csvapplication.cpp:2031–2061  ·  view source on GitHub ↗

Deletes all rows that have beend flagged Flag 'deleteFlagged = false' doesn't work right now!! */

Source from the content-addressed store, hash-verified

2029
2030 */
2031void CsvApplication::deleteFlaggedCB(bool deleteFlagged) {
2032 std::string msg;
2033 int choice;
2034 int countFlaggedRows = windows[app.getTopWindow()].table->countFlaggedRows();
2035 if( countFlaggedRows == 0 ) {
2036 myFlChoice("Info", "There are no flagged rows.", {"Okay"});
2037 return;
2038 }
2039 if( deleteFlagged ) {
2040 msg = "Really delete " + std::to_string(countFlaggedRows) + " flagged row(s)?";
2041 } else {
2042 msg = "Really delete " + std::to_string(windows[app.getTopWindow()].table->getNumberRows() - countFlaggedRows) + " unflagged row(s)?";
2043 }
2044 choice = myFlChoice("Confirm", msg, {"Yes", "No"});
2045 if( choice == 1 || choice == -1 ) {
2046 return;
2047 }
2048 windows[app.getTopWindow()].setChanged(true);
2049 windows[app.getTopWindow()].setUsed(true);
2050 showImWorkingWindow("Deleting flagged rows ...");
2051 if( deleteFlagged ) {
2052 windows[app.getTopWindow()].addUndoStateTable("Delete Flagged Rows");
2053 } else {
2054 windows[app.getTopWindow()].addUndoStateTable("Delete Unflagged Rows");
2055 }
2056 windows[app.getTopWindow()].table->deleteFlaggedRows(deleteFlagged);
2057 hideImWorkingWindow();
2058 windows[app.getTopWindow()].grid->rows( windows[app.getTopWindow()].table->getNumberRows() );
2059 windows[app.getTopWindow()].grid->redraw();
2060 Fl::check();
2061}
2062
2063
2064

Callers 1

MyMenuCallbackMethod · 0.80

Calls 10

to_stringFunction · 0.85
checkFunction · 0.85
countFlaggedRowsMethod · 0.80
getTopWindowMethod · 0.80
getNumberRowsMethod · 0.80
setChangedMethod · 0.80
setUsedMethod · 0.80
addUndoStateTableMethod · 0.80
deleteFlaggedRowsMethod · 0.80
rowsMethod · 0.80

Tested by

no test coverage detected