diff --git a/scwx-qt/source/scwx/qt/map/map_widget.cpp b/scwx-qt/source/scwx/qt/map/map_widget.cpp index 9096a4b7..466a03fe 100644 --- a/scwx-qt/source/scwx/qt/map/map_widget.cpp +++ b/scwx-qt/source/scwx/qt/map/map_widget.cpp @@ -1,3 +1,4 @@ +#include #include #include #include @@ -204,8 +205,7 @@ public: const std::vector emptyStyles_ {}; std::vector customStyles_ { MapStyle {.name_ {"Custom"}, .url_ {}, .drawBelow_ {}}}; - QStringList styleLayers_; - types::LayerVector customLayers_; + QStringList styleLayers_; boost::uuids::uuid customStyleUrlChangedCallbackId_ {}; boost::uuids::uuid customStyleDrawBelowChangedCallbackId_ {}; @@ -1187,18 +1187,18 @@ void MapWidgetImpl::AddLayers() placefileLayers_.clear(); // Update custom layer list from model - customLayers_ = model::LayerModel::Instance()->GetLayers(); + types::LayerVector customLayers = model::LayerModel::Instance()->GetLayers(); // Start by drawing layers before any style-defined layers std::string before = styleLayers_.front().toStdString(); // Loop through each custom layer in reverse order - for (auto it = customLayers_.crbegin(); it != customLayers_.crend(); ++it) + for (const auto& customLayer : std::ranges::reverse_view(customLayers)) { - if (it->type_ == types::LayerType::Map) + if (customLayer.type_ == types::LayerType::Map) { // Style-defined map layers - switch (std::get(it->description_)) + switch (std::get(customLayer.description_)) { // Subsequent layers are drawn underneath the map symbology layer case types::MapLayer::MapUnderlay: @@ -1214,10 +1214,12 @@ void MapWidgetImpl::AddLayers() break; } } - else if (it->displayed_[id_]) + // id_ is always < 4, so this is safe + // NOLINTNEXTLINE(cppcoreguidelines-pro-bounds-constant-array-index) + else if (customLayer.displayed_[id_]) { // If the layer is displayed for the current map, add it - AddLayer(it->type_, it->description_, before); + AddLayer(customLayer.type_, customLayer.description_, before); } } }