diff --git a/scwx-qt/source/scwx/qt/ui/edit_marker_dialog.cpp b/scwx-qt/source/scwx/qt/ui/edit_marker_dialog.cpp index ef7966d1..882bbe68 100644 --- a/scwx-qt/source/scwx/qt/ui/edit_marker_dialog.cpp +++ b/scwx-qt/source/scwx/qt/ui/edit_marker_dialog.cpp @@ -265,6 +265,8 @@ void EditMarkerDialog::Impl::set_icon_color(const std::string& color) auto* iconComboBox = self_->ui->iconComboBox; + const QVariant currentIcon = iconComboBox->currentData(); + self_->ui->iconComboBox->clear(); for (auto& markerIcon : markerManager_->get_icons()) { @@ -281,6 +283,15 @@ void EditMarkerDialog::Impl::set_icon_color(const std::string& color) self_->ui->iconComboBox->setItemIcon(i, icon); } } + + const int i = + iconComboBox->findData(currentIcon); + if (i < 0) + { + return; + } + + iconComboBox->setCurrentIndex(i); } void EditMarkerDialog::Impl::handle_accepted()