Skip to content
Snippets Groups Projects
Commit 0b7ddc4f authored by Rashad Kanavath's avatar Rashad Kanavath
Browse files

BUG: removing items and adding again clears previous selection. mantis #1025

parent 3e5afd29
No related branches found
No related tags found
No related merge requests found
...@@ -37,22 +37,33 @@ QtWidgetListViewParameter::~QtWidgetListViewParameter() ...@@ -37,22 +37,33 @@ QtWidgetListViewParameter::~QtWidgetListViewParameter()
void QtWidgetListViewParameter::DoUpdateGUI() void QtWidgetListViewParameter::DoUpdateGUI()
{ {
// remove all the items set before size_t numSelected = m_ListViewParam->GetSelectedItems().size();
while(m_ListView->takeItem(0))
//Clear m_ListView add re-add choices only if no items selected.
//Otherwise results in mantis #1025
if(numSelected < 1)
{ {
m_ListView->removeItemWidget( m_ListView->takeItem(0) ); while(m_ListView->takeItem(0))
{
m_ListView->removeItemWidget( m_ListView->takeItem(0) );
}
for (unsigned int i = 0; i < m_ListViewParam->GetNbChoices(); ++i)
{
// Add listBox items
QString key = m_ListViewParam->GetChoiceKey(i).c_str();
m_ListView->addItem( key);
}
} }
for (unsigned int i = 0; i < m_ListViewParam->GetNbChoices(); ++i) //I can't find any reason for calling m_ListView->setCurrentRow(value) in this
//case because QListWidget is a MultiSelection widget.
if (m_ListView->selectionMode() == QAbstractItemView::SingleSelection)
{ {
// Add listBox items unsigned int value = m_ListViewParam->GetValue( );
QString key = m_ListViewParam->GetChoiceKey(i).c_str(); m_ListView->setCurrentRow(value);
m_ListView->addItem( key);
} }
// Update the combobox value
unsigned int value = m_ListViewParam->GetValue( );
m_ListView->setCurrentRow(value);
} }
void QtWidgetListViewParameter::DoCreateWidget() void QtWidgetListViewParameter::DoCreateWidget()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment