Selaa lähdekoodia

Fix checkable header column in server node table

Need to set the check state explicitly for header nodes
to remember selection and display correctly at startup.
Steve Pieper 14 vuotta sitten
vanhempi
commit
4f0e64e58a
1 muutettua tiedostoa jossa 3 lisäystä ja 0 poistoa
  1. 3 0
      Libs/DICOM/Widgets/ctkDICOMServerNodeWidget.cpp

+ 3 - 0
Libs/DICOM/Widgets/ctkDICOMServerNodeWidget.cpp

@@ -76,6 +76,7 @@ ctkDICOMServerNodeWidget::ctkDICOMServerNodeWidget(QWidget* _parent):Superclass(
   if ( settings.value("ServerNodeCount").toInt() == 0 )
   {
     node["Name"] = "localhost";
+    node["CheckState"] = Qt::Checked;
     node["AETitle"] = "CTK_AE";
     node["Address"] = "localhost";
     node["Port"] = "11112";
@@ -91,6 +92,7 @@ ctkDICOMServerNodeWidget::ctkDICOMServerNodeWidget(QWidget* _parent):Superclass(
     node = settings.value(QString("ServerNodes/%1").arg(row)).toMap();
     QTableWidgetItem *newItem;
     newItem = new QTableWidgetItem( node["Name"].toString() );
+    newItem->setCheckState( Qt::CheckState(node["CheckState"].toInt()) );
     d->nodeTable->setItem(row, 0, newItem);
     newItem = new QTableWidgetItem( node["AETitle"].toString() );
     d->nodeTable->setItem(row, 1, newItem);
@@ -182,6 +184,7 @@ void ctkDICOMServerNodeWidget::saveSettings()
       {
         node[keys.at(k)] = d->nodeTable->item(row,k)->text();
       }
+      node["CheckState"] = d->nodeTable->item(row,0)->checkState();
       settings.setValue(QString("ServerNodes/%1").arg(row), QVariant(node));
     }
   }