diff --git a/scwx-qt/source/scwx/qt/gl/draw/geo_icons.cpp b/scwx-qt/source/scwx/qt/gl/draw/geo_icons.cpp index 71501930..743b0df9 100644 --- a/scwx-qt/source/scwx/qt/gl/draw/geo_icons.cpp +++ b/scwx-qt/source/scwx/qt/gl/draw/geo_icons.cpp @@ -903,7 +903,7 @@ bool GeoIcons::RunMousePicking( const QPointF& mouseGlobalPos, const glm::vec2& mouseCoords, const common::Coordinate& /* mouseGeoCoords */, - std::shared_ptr& eventHandler ) + std::shared_ptr& eventHandler) { std::unique_lock lock {p->iconMutex_}; diff --git a/scwx-qt/source/scwx/qt/manager/marker_manager.cpp b/scwx-qt/source/scwx/qt/manager/marker_manager.cpp index 5678106f..21cb90cd 100644 --- a/scwx-qt/source/scwx/qt/manager/marker_manager.cpp +++ b/scwx-qt/source/scwx/qt/manager/marker_manager.cpp @@ -28,11 +28,11 @@ namespace manager static const std::string logPrefix_ = "scwx::qt::manager::marker_manager"; static const auto logger_ = scwx::util::Logger::Create(logPrefix_); -static const std::string kNameName_ = "name"; -static const std::string kLatitudeName_ = "latitude"; -static const std::string kLongitudeName_ = "longitude"; -static const std::string kIconName_ = "icon"; -static const std::string kIconColorName_ = "icon-color"; +static const std::string kNameName_ = "name"; +static const std::string kLatitudeName_ = "latitude"; +static const std::string kLongitudeName_ = "longitude"; +static const std::string kIconName_ = "icon"; +static const std::string kIconColorName_ = "icon-color"; static const std::string defaultIconName = "images/location-marker"; @@ -68,7 +68,6 @@ public: class MarkerManager::Impl::MarkerRecord { public: - MarkerRecord(const types::MarkerInfo& info) : markerInfo_ {info} { @@ -93,7 +92,6 @@ public: util::color::ToArgbString(record->markerInfo_.iconColor)}}; } - friend MarkerRecord tag_invoke(boost::json::value_to_tag, const boost::json::value& jv) { @@ -102,7 +100,7 @@ public: const boost::json::object& jo = jv.as_object(); - std::string iconName = defaultIconName; + std::string iconName = defaultIconName; boost::gil::rgba8_pixel_t iconColor = defaultIconColor; if (jo.contains(kIconName_) && jo.at(kIconName_).is_string()) @@ -112,7 +110,8 @@ public: if (jo.contains(kIconColorName_) && jo.at(kIconName_).is_string()) { - try { + try + { iconColor = util::color::ToRgba8PixelT( boost::json::value_to(jv.at(kIconColorName_))); } @@ -181,7 +180,6 @@ void MarkerManager::Impl::ReadMarkerSettings() { // For each marker entry auto& markerArray = markerJson.as_array(); - //std::vector fileNames {}; markerRecords_.reserve(markerArray.size()); idToIndex_.reserve(markerArray.size()); for (auto& markerEntry : markerArray) @@ -206,13 +204,13 @@ void MarkerManager::Impl::ReadMarkerSettings() } util::TextureAtlas& textureAtlas = util::TextureAtlas::Instance(); - textureAtlas.BuildAtlas(2048, 2048); // Should this code be moved to ResourceManager? + textureAtlas.BuildAtlas( + 2048, 2048); // Should this code be moved to ResourceManager? logger_->debug("{} location marker entries", markerRecords_.size()); } } - Q_EMIT self_->MarkersUpdated(); } @@ -457,7 +455,8 @@ void MarkerManager::add_icon(const std::string& name, bool startup) if (!startup) { util::TextureAtlas& textureAtlas = util::TextureAtlas::Instance(); - textureAtlas.BuildAtlas(2048, 2048); // Should this code be moved to ResourceManager? + textureAtlas.BuildAtlas( + 2048, 2048); // Should this code be moved to ResourceManager? Q_EMIT IconAdded(name); } } diff --git a/scwx-qt/source/scwx/qt/manager/marker_manager.hpp b/scwx-qt/source/scwx/qt/manager/marker_manager.hpp index 9e897660..7004e117 100644 --- a/scwx-qt/source/scwx/qt/manager/marker_manager.hpp +++ b/scwx-qt/source/scwx/qt/manager/marker_manager.hpp @@ -23,11 +23,11 @@ public: size_t marker_count(); std::optional get_marker(types::MarkerId id); - std::optional get_index(types::MarkerId id); + std::optional get_index(types::MarkerId id); void set_marker(types::MarkerId id, const types::MarkerInfo& marker); types::MarkerId add_marker(const types::MarkerInfo& marker); - void remove_marker(types::MarkerId id); - void move_marker(size_t from, size_t to); + void remove_marker(types::MarkerId id); + void move_marker(size_t from, size_t to); void add_icon(const std::string& name, bool startup = false); std::optional get_icon(const std::string& name); @@ -39,7 +39,7 @@ public: void set_marker_settings_path(const std::string& path); static std::shared_ptr Instance(); - static const std::string& getDefaultIconName(); + static const std::string& getDefaultIconName(); signals: void MarkersInitialized(size_t count); @@ -51,7 +51,6 @@ signals: void IconsReady(); void IconAdded(std::string name); - private: class Impl; std::unique_ptr p; diff --git a/scwx-qt/source/scwx/qt/model/marker_model.cpp b/scwx-qt/source/scwx/qt/model/marker_model.cpp index 7c012921..32294de0 100644 --- a/scwx-qt/source/scwx/qt/model/marker_model.cpp +++ b/scwx-qt/source/scwx/qt/model/marker_model.cpp @@ -133,7 +133,8 @@ QVariant MarkerModel::data(const QModelIndex& index, int role) const { std::optional icon = p->markerManager_->get_icon(markerInfo->iconName); - if (icon) { + if (icon) + { return util::modulateColors(icon->qIcon, QSize(iconSize_, iconSize_), QColor(markerInfo->iconColor[0], diff --git a/scwx-qt/source/scwx/qt/types/marker_types.hpp b/scwx-qt/source/scwx/qt/types/marker_types.hpp index 1848adfa..09f9a06b 100644 --- a/scwx-qt/source/scwx/qt/types/marker_types.hpp +++ b/scwx-qt/source/scwx/qt/types/marker_types.hpp @@ -31,7 +31,7 @@ struct MarkerInfo { } - MarkerId id{0}; + MarkerId id {0}; std::string name; double latitude; double longitude; @@ -39,37 +39,38 @@ struct MarkerInfo boost::gil::rgba8_pixel_t iconColor; }; -struct MarkerIconInfo { +struct MarkerIconInfo +{ explicit MarkerIconInfo(types::ImageTexture texture, std::int32_t hotX, std::int32_t hotY) : - name{types::GetTextureName(texture)}, - path{types::GetTexturePath(texture)}, - hotX{hotX}, - hotY{hotY}, - qIcon{QIcon(QString::fromStdString(path))}, - image{} + name {types::GetTextureName(texture)}, + path {types::GetTexturePath(texture)}, + hotX {hotX}, + hotY {hotY}, + qIcon {QIcon(QString::fromStdString(path))}, + image {} { } - explicit MarkerIconInfo(const std::string& path, - std::int32_t hotX, - std::int32_t hotY, + explicit MarkerIconInfo(const std::string& path, + std::int32_t hotX, + std::int32_t hotY, std::shared_ptr image) : - name{path}, - path{path}, - hotX{hotX}, - hotY{hotY}, - qIcon{QIcon(QString::fromStdString(path))}, - image{image} + name {path}, + path {path}, + hotX {hotX}, + hotY {hotY}, + qIcon {QIcon(QString::fromStdString(path))}, + image {image} { } - std::string name; - std::string path; - std::int32_t hotX; - std::int32_t hotY; - QIcon qIcon; + std::string name; + std::string path; + std::int32_t hotX; + std::int32_t hotY; + QIcon qIcon; std::optional> image; }; diff --git a/scwx-qt/source/scwx/qt/types/texture_types.cpp b/scwx-qt/source/scwx/qt/types/texture_types.cpp index 336a26d8..18efd9b9 100644 --- a/scwx-qt/source/scwx/qt/types/texture_types.cpp +++ b/scwx-qt/source/scwx/qt/types/texture_types.cpp @@ -46,14 +46,12 @@ static const std::unordered_map imageTextureInfo_ { {ImageTexture::LocationMarker, {"images/location-marker", ":/res/textures/images/location-marker.svg"}}, {ImageTexture::LocationPin, - {"images/location-pin", - ":/res/icons/font-awesome-6/location-pin.svg"}}, + {"images/location-pin", ":/res/icons/font-awesome-6/location-pin.svg"}}, {ImageTexture::LocationStar, {"images/location-star", ":/res/icons/font-awesome-6/star-solid-white.svg"}}, {ImageTexture::LocationTent, - {"images/location-tent", - ":/res/icons/font-awesome-6/tent-solid.svg"}}, + {"images/location-tent", ":/res/icons/font-awesome-6/tent-solid.svg"}}, {ImageTexture::MapboxLogo, {"images/mapbox-logo", ":/res/textures/images/mapbox-logo.svg"}}, {ImageTexture::MapTilerLogo, 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 70625be4..b3c34e96 100644 --- a/scwx-qt/source/scwx/qt/ui/edit_marker_dialog.cpp +++ b/scwx-qt/source/scwx/qt/ui/edit_marker_dialog.cpp @@ -30,10 +30,7 @@ static const auto logger_ = scwx::util::Logger::Create(logPrefix_); class EditMarkerDialog::Impl { public: - explicit Impl(EditMarkerDialog* self) : - self_{self} - { - } + explicit Impl(EditMarkerDialog* self) : self_ {self} {} void show_color_dialog(); void show_icon_file_dialog(); @@ -46,15 +43,15 @@ public: void handle_rejected(); EditMarkerDialog* self_; - QPushButton* deleteButton_; + QPushButton* deleteButton_; QIcon get_colored_icon(const types::MarkerIconInfo& marker, const std::string& color); std::shared_ptr markerManager_ = manager::MarkerManager::Instance(); types::MarkerId editId_; - bool adding_; - std::string setIconOnAdded_{""}; + bool adding_; + std::string setIconOnAdded_ {""}; }; QIcon EditMarkerDialog::Impl::get_colored_icon( @@ -66,9 +63,9 @@ QIcon EditMarkerDialog::Impl::get_colored_icon( } EditMarkerDialog::EditMarkerDialog(QWidget* parent) : - QDialog(parent), - p {std::make_unique(this)}, - ui(new Ui::EditMarkerDialog) + QDialog(parent), + p {std::make_unique(this)}, + ui(new Ui::EditMarkerDialog) { ui->setupUi(this); @@ -98,7 +95,7 @@ void EditMarkerDialog::setup(double latitude, double longitude) // By default use foreground color as marker color, mainly so the icons // are vissable in the dropdown menu. QColor color = QWidget::palette().color(QWidget::foregroundRole()); - p->editId_ = p->markerManager_->add_marker(types::MarkerInfo( + p->editId_ = p->markerManager_->add_marker(types::MarkerInfo( "", latitude, longitude, @@ -114,8 +111,7 @@ void EditMarkerDialog::setup(double latitude, double longitude) void EditMarkerDialog::setup(types::MarkerId id) { - std::optional marker = - p->markerManager_->get_marker(id); + std::optional marker = p->markerManager_->get_marker(id); if (!marker) { return; @@ -143,7 +139,7 @@ void EditMarkerDialog::setup(types::MarkerId id) types::MarkerInfo EditMarkerDialog::get_marker_info() const { - QString colorName = ui->iconColorLineEdit->text(); + QString colorName = ui->iconColorLineEdit->text(); boost::gil::rgba8_pixel_t color = util::color::ToRgba8PixelT(colorName.toStdString()); @@ -270,7 +266,6 @@ void EditMarkerDialog::Impl::set_icon_color(const std::string& color) auto* iconComboBox = self_->ui->iconComboBox; - self_->ui->iconComboBox->clear(); for (auto& markerIcon : markerManager_->get_icons()) { diff --git a/scwx-qt/source/scwx/qt/ui/edit_marker_dialog.hpp b/scwx-qt/source/scwx/qt/ui/edit_marker_dialog.hpp index 5dac04ea..4008b990 100644 --- a/scwx-qt/source/scwx/qt/ui/edit_marker_dialog.hpp +++ b/scwx-qt/source/scwx/qt/ui/edit_marker_dialog.hpp @@ -32,10 +32,9 @@ public: private: class Impl; std::unique_ptr p; - Ui::EditMarkerDialog* ui; + Ui::EditMarkerDialog* ui; }; - } // namespace ui } // namespace qt } // namespace scwx diff --git a/test/source/scwx/qt/model/marker_model.test.cpp b/test/source/scwx/qt/model/marker_model.test.cpp index f152ddec..74ad28a9 100644 --- a/test/source/scwx/qt/model/marker_model.test.cpp +++ b/test/source/scwx/qt/model/marker_model.test.cpp @@ -10,7 +10,6 @@ #include #include - namespace scwx { namespace qt @@ -37,7 +36,6 @@ static const boost::gil::rgba8_pixel_t defaultIconColor = util::color::ToRgba8PixelT("#ffff0000"); static const std::string defaultIconName = "images/location-marker"; - void CompareFiles(const std::string& file1, const std::string& file2) { std::ifstream ifs1 {file1}; @@ -57,7 +55,8 @@ void CopyFile(const std::string& from, const std::string& to) CompareFiles(from, to); } -using TestFunction = void (std::shared_ptr, MarkerModel &); +using TestFunction = void(std::shared_ptr, + MarkerModel&); void RunTest(const std::string& filename, TestFunction testFunction) { @@ -126,7 +125,10 @@ TEST(MarkerModelTest, AddRemove) RunTest(ONE_MARKERS_FILE, [](std::shared_ptr manager, MarkerModel&) - { manager->add_marker(types::MarkerInfo("Null", 0, 0, defaultIconName, defaultIconColor)); }); + { + manager->add_marker(types::MarkerInfo( + "Null", 0, 0, defaultIconName, defaultIconColor)); + }); RunTest( EMPTY_MARKERS_FILE, [](std::shared_ptr manager, MarkerModel& model) @@ -150,11 +152,16 @@ TEST(MarkerModelTest, AddFive) RunTest(FIVE_MARKERS_FILE, [](std::shared_ptr manager, MarkerModel&) { - manager->add_marker(types::MarkerInfo("Null", 0, 0, defaultIconName, defaultIconColor)); - manager->add_marker(types::MarkerInfo("North", 90, 0, defaultIconName, defaultIconColor)); - manager->add_marker(types::MarkerInfo("South", -90, 0, defaultIconName, defaultIconColor)); - manager->add_marker(types::MarkerInfo("East", 0, 90, defaultIconName, defaultIconColor)); - manager->add_marker(types::MarkerInfo("West", 0, -90, defaultIconName, defaultIconColor)); + manager->add_marker(types::MarkerInfo( + "Null", 0, 0, defaultIconName, defaultIconColor)); + manager->add_marker(types::MarkerInfo( + "North", 90, 0, defaultIconName, defaultIconColor)); + manager->add_marker(types::MarkerInfo( + "South", -90, 0, defaultIconName, defaultIconColor)); + manager->add_marker(types::MarkerInfo( + "East", 0, 90, defaultIconName, defaultIconColor)); + manager->add_marker(types::MarkerInfo( + "West", 0, -90, defaultIconName, defaultIconColor)); }); std::filesystem::remove(TEMP_MARKERS_FILE); @@ -168,10 +175,14 @@ TEST(MarkerModelTest, AddFour) RunTest(FIVE_MARKERS_FILE, [](std::shared_ptr manager, MarkerModel&) { - manager->add_marker(types::MarkerInfo("North", 90, 0, defaultIconName, defaultIconColor)); - manager->add_marker(types::MarkerInfo("South", -90, 0, defaultIconName, defaultIconColor)); - manager->add_marker(types::MarkerInfo("East", 0, 90, defaultIconName, defaultIconColor)); - manager->add_marker(types::MarkerInfo("West", 0, -90, defaultIconName, defaultIconColor)); + manager->add_marker(types::MarkerInfo( + "North", 90, 0, defaultIconName, defaultIconColor)); + manager->add_marker(types::MarkerInfo( + "South", -90, 0, defaultIconName, defaultIconColor)); + manager->add_marker(types::MarkerInfo( + "East", 0, 90, defaultIconName, defaultIconColor)); + manager->add_marker(types::MarkerInfo( + "West", 0, -90, defaultIconName, defaultIconColor)); }); std::filesystem::remove(TEMP_MARKERS_FILE);