void InstrumentWizard::on_linkedButton_clicked() { QList<QTreeWidgetItem*> wi = partiturList->selectedItems(); if (wi.isEmpty()) return; QTreeWidgetItem* item = wi.front(); if (item->type() != STAFF_LIST_ITEM) return; StaffListItem* sli = (StaffListItem*)item; Staff* staff = sli->staff; PartListItem* pli = (PartListItem*)sli->parent(); pli->setVisible(true); StaffListItem* nsli = new StaffListItem(); nsli->staff = staff; nsli->setClef(sli->clef()); nsli->setLinked(true); if (staff) nsli->op = ITEM_ADD; pli->insertChild(pli->indexOfChild(sli)+1, nsli); partiturList->clearSelection(); // should not be necessary partiturList->setItemSelected(nsli, true); }