Не получается выбрать несколько элементов в QTreeView.
Повешен обработчик на сигнал модели (QAbstractItemModel):
bool ok;
ok = connect(externTree->selectionModel(), SIGNAL(selectionChanged(const QItemSelection &,const QItemSelection &)),
this, SLOT(markNode(const QItemSelection &,const QItemSelection &)));
Вот реализация функции markNode:
void MyClassDlg::markNode(const QItemSelection & selected, const QItemSelection & deselected){
QModelIndexList selList = selected.indexes();
QModelIndexList deselList = deselected.indexes();
for(int i=0; i<deselList.count(); i++){
MyPropertyNode *node = treeModel->nodeFromIndex( deselList[i] );
if(node)
node->setIsSelected(false);
}
for(int i=0; i<selList.count(); i++){
MyPropertyNode *node = treeModel->nodeFromIndex( selList[i] );
if(node)
node->setIsSelected(true);
}
}
Пытаюсь, зажимая Shift мышкой выбирать в таблице несколько элементов, но
все равно равен 1.
Что я делаю не так?
Спасибо)