From 5dd4ef755b4f81e1b769a3f15658fc43a1bec24e Mon Sep 17 00:00:00 2001 From: Skarn Date: Thu, 22 Oct 2020 14:23:11 +0300 Subject: [PATCH] minimap generator: add option to deselect all ADTs with right click settings: add default value to import.txt file --- src/noggit/ui/MinimapCreator.cpp | 16 ++++++++++++---- src/noggit/ui/SettingsPanel.cpp | 2 +- src/noggit/ui/minimap_widget.cpp | 6 ++++-- src/noggit/ui/minimap_widget.hpp | 5 +++-- 4 files changed, 20 insertions(+), 9 deletions(-) diff --git a/src/noggit/ui/MinimapCreator.cpp b/src/noggit/ui/MinimapCreator.cpp index 7f092126..a2dc7675 100644 --- a/src/noggit/ui/MinimapCreator.cpp +++ b/src/noggit/ui/MinimapCreator.cpp @@ -216,8 +216,8 @@ namespace noggit { if (world->mapIndex.hasTile(tile_index(x + i, y + j))) { - _render_settings.selected_tiles[64 * (x + i) + (y + j)] = !QApplication::keyboardModifiers().testFlag( - Qt::ControlModifier); + _render_settings.selected_tiles[64 * (x + i) + (y + j)] + = !QApplication::keyboardModifiers().testFlag(Qt::ControlModifier); } } @@ -227,8 +227,8 @@ namespace noggit { if (world->mapIndex.hasTile(tile_index(tile.x(), tile.y()))) { - _render_settings.selected_tiles[64 * tile.x() + tile.y()] = !QApplication::keyboardModifiers().testFlag( - Qt::ControlModifier); + _render_settings.selected_tiles[64 * tile.x() + tile.y()] + = !QApplication::keyboardModifiers().testFlag(Qt::ControlModifier); } } @@ -236,6 +236,14 @@ namespace noggit } ); + QObject::connect + ( _minimap_widget, &minimap_widget::reset_selection + , [this, world] () + { + _render_settings.selected_tiles.fill(false); + } + ); + } void MinimapCreator::changeRadius(float change) diff --git a/src/noggit/ui/SettingsPanel.cpp b/src/noggit/ui/SettingsPanel.cpp index 41cc4000..cc5c766f 100644 --- a/src/noggit/ui/SettingsPanel.cpp +++ b/src/noggit/ui/SettingsPanel.cpp @@ -212,7 +212,7 @@ namespace noggit { gamePathField->actual->setText (_settings->value ("project/game_path").toString()); projectPathField->actual->setText (_settings->value ("project/path").toString()); - importPathField->actual->setText (_settings->value ("project/import_file").toString()); + importPathField->actual->setText (_settings->value ("project/import_file", "import.txt").toString()); wmvLogPathField->actual->setText (_settings->value ("project/wmv_log_file").toString()); viewDistanceField->setValue (_settings->value ("view_distance", 1000.f).toFloat()); farZField->setValue (_settings->value ("farZ", 2048.f).toFloat()); diff --git a/src/noggit/ui/minimap_widget.cpp b/src/noggit/ui/minimap_widget.cpp index ba05ec93..b7315e2d 100644 --- a/src/noggit/ui/minimap_widget.cpp +++ b/src/noggit/ui/minimap_widget.cpp @@ -208,9 +208,11 @@ namespace noggit void minimap_widget::mousePressEvent(QMouseEvent* event) { - if (event->button() != Qt::LeftButton) + if (event->button() == Qt::RightButton) { - event->ignore(); + _is_selecting = false; + emit reset_selection(); + return; } diff --git a/src/noggit/ui/minimap_widget.hpp b/src/noggit/ui/minimap_widget.hpp index 5886ea4f..ff596a2a 100644 --- a/src/noggit/ui/minimap_widget.hpp +++ b/src/noggit/ui/minimap_widget.hpp @@ -56,8 +56,9 @@ namespace noggit QPoint locateTile(QMouseEvent* event); signals: - void map_clicked (const ::math::vector_3d&); - void tile_clicked (const QPoint&); + void map_clicked(const ::math::vector_3d&); + void tile_clicked(const QPoint&); + void reset_selection(); private: World const* _world;