Deletes all rows that have beend flagged Flag 'deleteFlagged = false' doesn't work right now!! */
| 2029 | |
| 2030 | */ |
| 2031 | void 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 |
no test coverage detected