#2266 AppFwk : Add editor attribute setCurrentIndexWhenItemIsChecked

Fix bug when a selection is active
This commit is contained in:
Magne Sjaastad
2017-12-14 16:03:14 +01:00
parent 3b9e7d0106
commit 81129302f3
2 changed files with 12 additions and 6 deletions

View File

@@ -573,14 +573,18 @@ void PdmUiTreeSelectionEditor::slotCurrentChanged(const QModelIndex& current, co
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void PdmUiTreeSelectionEditor::slotClicked(const QModelIndex& current)
void PdmUiTreeSelectionEditor::slotClicked(const QModelIndex& index)
{
if (current.isValid())
if (m_attributes.setCurrentIndexWhenItemIsChecked && index.isValid())
{
QVariant v = m_proxyModel->data(current, Qt::CheckStateRole);
if (v == Qt::Checked)
QModelIndexList selectedIndexes = m_treeView->selectionModel()->selectedIndexes();
if (selectedIndexes.size() < 2)
{
m_treeView->setCurrentIndex(current);
QVariant v = m_proxyModel->data(index, Qt::CheckStateRole);
if (v == Qt::Checked)
{
m_treeView->setCurrentIndex(index);
}
}
}
}