bool TableView::moveSelectedDown() { QList<int> rows = getSelectedRows(); qSort(rows.begin(), rows.end(), qGreater<int>()); TableModel * currentModel = static_cast<TableModel *>(model()); for(int i = 0; i < rows.size(); i++) { if(rows[i] == currentModel->rowCount() - 1) { break; } currentModel->swapRows(rows[i], rows[i] + 1); rows[i] += 1; } setSelectedRows(rows); return true; }