From 3451faf16102851753f771e2da5554b5d2c9d225 Mon Sep 17 00:00:00 2001 From: Dan Paulat Date: Tue, 2 May 2023 22:54:46 -0500 Subject: [PATCH] Move map or view alert on alert double click based on settings --- .../source/scwx/qt/ui/alert_dock_widget.cpp | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/scwx-qt/source/scwx/qt/ui/alert_dock_widget.cpp b/scwx-qt/source/scwx/qt/ui/alert_dock_widget.cpp index 59acceae..f8da6d6e 100644 --- a/scwx-qt/source/scwx/qt/ui/alert_dock_widget.cpp +++ b/scwx-qt/source/scwx/qt/ui/alert_dock_widget.cpp @@ -1,9 +1,11 @@ #include "alert_dock_widget.hpp" #include "ui_alert_dock_widget.h" +#include #include #include #include +#include #include #include #include @@ -165,6 +167,39 @@ void AlertDockWidgetImpl::ConnectSignals() logger_->debug("Selected: {}", selectedAlertKey_.ToString()); }); + connect(self_->ui->alertView, + &QTreeView::doubleClicked, + this, + [this](const QModelIndex& /* index */) + { + // If an item is selected + if (selectedAlertKey_ != types::TextEventKey {}) + { + types::AlertAction alertAction = types::GetAlertAction( + manager::SettingsManager::general_settings() + .default_alert_action() + .GetValue()); + + switch (alertAction) + { + case types::AlertAction::Go: + // Move map + emit self_->MoveMap(selectedAlertCentroid_.latitude_, + selectedAlertCentroid_.longitude_); + break; + + case types::AlertAction::View: + // View alert + alertDialog_->SelectAlert(selectedAlertKey_); + alertDialog_->show(); + break; + + default: + // Do nothing + break; + } + } + }); connect(self_->ui->alertViewButton, &QPushButton::clicked, this,