//============================================================================== void syncSelectedItemsWithDeviceList (const ReferenceCountedArray<MidiDeviceListEntry>& midiDevices) { SparseSet<int> selectedRows; for (int i = 0; i < midiDevices.size(); ++i) if (midiDevices[i]->inDevice != nullptr || midiDevices[i]->outDevice != nullptr) selectedRows.addRange (Range<int> (i, i+1)); lastSelectedItems = selectedRows; updateContent(); setSelectedRows (selectedRows, dontSendNotification); }
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; }