aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChuck Craft <bubbasnmp@gmail.com>2021-06-05 16:59:41 -0500
committerAndersBroman <a.broman58@gmail.com>2022-10-31 14:14:00 +0000
commit81bd7b1415228706e5fecb1c1c750268cf937e1c (patch)
treea070165c36e03ba2db386b449f3cdcb3737e6df8
parentdd5f86c674098657efba208852715916d76bc497 (diff)
Qt: filter_dialog - make Cancel button functional
Works properly when called from Capture/Display filter bookmark. This change duplicates that code.
-rw-r--r--ui/logray/logray_main_window.cpp4
-rw-r--r--ui/logray/logray_main_window.h2
-rw-r--r--ui/logray/logray_main_window_slots.cpp20
-rw-r--r--ui/qt/wireshark_main_window.cpp4
-rw-r--r--ui/qt/wireshark_main_window.h2
-rw-r--r--ui/qt/wireshark_main_window_slots.cpp20
6 files changed, 16 insertions, 36 deletions
diff --git a/ui/logray/logray_main_window.cpp b/ui/logray/logray_main_window.cpp
index 8a3b38b0b3..8b739c0f96 100644
--- a/ui/logray/logray_main_window.cpp
+++ b/ui/logray/logray_main_window.cpp
@@ -327,8 +327,6 @@ LograyMainWindow::LograyMainWindow(QWidget *parent) :
, capture_options_dialog_(NULL)
, info_data_()
#endif
- , display_filter_dlg_(NULL)
- , capture_filter_dlg_(NULL)
#if defined(Q_OS_MAC)
, dock_menu_(NULL)
#endif
@@ -706,8 +704,6 @@ LograyMainWindow::~LograyMainWindow()
// freed by its parent. Free then here explicitly to avoid leak and numerous
// Valgrind complaints.
delete file_set_dialog_;
- delete capture_filter_dlg_;
- delete display_filter_dlg_;
#ifdef HAVE_LIBPCAP
delete capture_options_dialog_;
#endif
diff --git a/ui/logray/logray_main_window.h b/ui/logray/logray_main_window.h
index 280154600b..92112579df 100644
--- a/ui/logray/logray_main_window.h
+++ b/ui/logray/logray_main_window.h
@@ -180,8 +180,6 @@ private:
CaptureOptionsDialog *capture_options_dialog_;
info_data_t info_data_;
#endif
- FilterDialog *display_filter_dlg_;
- FilterDialog *capture_filter_dlg_;
#if defined(Q_OS_MAC)
QMenu *dock_menu_;
diff --git a/ui/logray/logray_main_window_slots.cpp b/ui/logray/logray_main_window_slots.cpp
index badbf53fff..d8465aca6d 100644
--- a/ui/logray/logray_main_window_slots.cpp
+++ b/ui/logray/logray_main_window_slots.cpp
@@ -2733,12 +2733,10 @@ void LograyMainWindow::connectCaptureMenuActions()
});
connect(main_ui_->actionCaptureCaptureFilters, &QAction::triggered, this, [this]() {
- if (!capture_filter_dlg_) {
- capture_filter_dlg_ = new FilterDialog(this, FilterDialog::CaptureFilter);
- }
- capture_filter_dlg_->show();
- capture_filter_dlg_->raise();
- capture_filter_dlg_->activateWindow();
+ FilterDialog *capture_filter_dlg = new FilterDialog(window(), FilterDialog::CaptureFilter);
+ capture_filter_dlg->setWindowModality(Qt::ApplicationModal);
+ capture_filter_dlg->setAttribute(Qt::WA_DeleteOnClose);
+ capture_filter_dlg->show();
});
#ifdef HAVE_LIBPCAP
@@ -2882,12 +2880,10 @@ void LograyMainWindow::matchFieldFilter(FilterAction::Action action, FilterActio
void LograyMainWindow::on_actionAnalyzeDisplayFilters_triggered()
{
- if (!display_filter_dlg_) {
- display_filter_dlg_ = new FilterDialog(this, FilterDialog::DisplayFilter);
- }
- display_filter_dlg_->show();
- display_filter_dlg_->raise();
- display_filter_dlg_->activateWindow();
+ FilterDialog *display_filter_dlg = new FilterDialog(window(), FilterDialog::DisplayFilter);
+ display_filter_dlg->setWindowModality(Qt::ApplicationModal);
+ display_filter_dlg->setAttribute(Qt::WA_DeleteOnClose);
+ display_filter_dlg->show();
}
struct epan_uat;
diff --git a/ui/qt/wireshark_main_window.cpp b/ui/qt/wireshark_main_window.cpp
index 0f2632b525..186fed40f2 100644
--- a/ui/qt/wireshark_main_window.cpp
+++ b/ui/qt/wireshark_main_window.cpp
@@ -329,8 +329,6 @@ WiresharkMainWindow::WiresharkMainWindow(QWidget *parent) :
, capture_options_dialog_(NULL)
, info_data_()
#endif
- , display_filter_dlg_(NULL)
- , capture_filter_dlg_(NULL)
#if defined(Q_OS_MAC)
, dock_menu_(NULL)
#endif
@@ -759,8 +757,6 @@ WiresharkMainWindow::~WiresharkMainWindow()
// freed by its parent. Free then here explicitly to avoid leak and numerous
// Valgrind complaints.
delete file_set_dialog_;
- delete capture_filter_dlg_;
- delete display_filter_dlg_;
#ifdef HAVE_LIBPCAP
delete capture_options_dialog_;
#endif
diff --git a/ui/qt/wireshark_main_window.h b/ui/qt/wireshark_main_window.h
index c455345416..2ea1afe3dd 100644
--- a/ui/qt/wireshark_main_window.h
+++ b/ui/qt/wireshark_main_window.h
@@ -189,8 +189,6 @@ private:
CaptureOptionsDialog *capture_options_dialog_;
info_data_t info_data_;
#endif
- FilterDialog *display_filter_dlg_;
- FilterDialog *capture_filter_dlg_;
#if defined(Q_OS_MAC)
QMenu *dock_menu_;
diff --git a/ui/qt/wireshark_main_window_slots.cpp b/ui/qt/wireshark_main_window_slots.cpp
index 6a3b4e2edb..15d5d12f9c 100644
--- a/ui/qt/wireshark_main_window_slots.cpp
+++ b/ui/qt/wireshark_main_window_slots.cpp
@@ -2905,12 +2905,10 @@ void WiresharkMainWindow::connectCaptureMenuActions()
});
connect(main_ui_->actionCaptureCaptureFilters, &QAction::triggered, this, [this]() {
- if (!capture_filter_dlg_) {
- capture_filter_dlg_ = new FilterDialog(this, FilterDialog::CaptureFilter);
- }
- capture_filter_dlg_->show();
- capture_filter_dlg_->raise();
- capture_filter_dlg_->activateWindow();
+ FilterDialog *capture_filter_dlg = new FilterDialog(window(), FilterDialog::CaptureFilter);
+ capture_filter_dlg->setWindowModality(Qt::ApplicationModal);
+ capture_filter_dlg->setAttribute(Qt::WA_DeleteOnClose);
+ capture_filter_dlg->show();
});
#ifdef HAVE_LIBPCAP
@@ -3054,12 +3052,10 @@ void WiresharkMainWindow::matchFieldFilter(FilterAction::Action action, FilterAc
void WiresharkMainWindow::on_actionAnalyzeDisplayFilters_triggered()
{
- if (!display_filter_dlg_) {
- display_filter_dlg_ = new FilterDialog(this, FilterDialog::DisplayFilter);
- }
- display_filter_dlg_->show();
- display_filter_dlg_->raise();
- display_filter_dlg_->activateWindow();
+ FilterDialog *display_filter_dlg = new FilterDialog(window(), FilterDialog::DisplayFilter);
+ display_filter_dlg->setWindowModality(Qt::ApplicationModal);
+ display_filter_dlg->setAttribute(Qt::WA_DeleteOnClose);
+ display_filter_dlg->show();
}
struct epan_uat;