Qt: filter_dialog - make Cancel button functional

Works properly when called from Capture/Display filter bookmark.
This change duplicates that code.
This commit is contained in:
Chuck Craft 2021-06-05 16:59:41 -05:00 committed by AndersBroman
parent dd5f86c674
commit 81bd7b1415
6 changed files with 16 additions and 36 deletions

View File

@ -327,8 +327,6 @@ LograyMainWindow::LograyMainWindow(QWidget *parent) :
, capture_options_dialog_(NULL) , capture_options_dialog_(NULL)
, info_data_() , info_data_()
#endif #endif
, display_filter_dlg_(NULL)
, capture_filter_dlg_(NULL)
#if defined(Q_OS_MAC) #if defined(Q_OS_MAC)
, dock_menu_(NULL) , dock_menu_(NULL)
#endif #endif
@ -706,8 +704,6 @@ LograyMainWindow::~LograyMainWindow()
// freed by its parent. Free then here explicitly to avoid leak and numerous // freed by its parent. Free then here explicitly to avoid leak and numerous
// Valgrind complaints. // Valgrind complaints.
delete file_set_dialog_; delete file_set_dialog_;
delete capture_filter_dlg_;
delete display_filter_dlg_;
#ifdef HAVE_LIBPCAP #ifdef HAVE_LIBPCAP
delete capture_options_dialog_; delete capture_options_dialog_;
#endif #endif

View File

@ -180,8 +180,6 @@ private:
CaptureOptionsDialog *capture_options_dialog_; CaptureOptionsDialog *capture_options_dialog_;
info_data_t info_data_; info_data_t info_data_;
#endif #endif
FilterDialog *display_filter_dlg_;
FilterDialog *capture_filter_dlg_;
#if defined(Q_OS_MAC) #if defined(Q_OS_MAC)
QMenu *dock_menu_; QMenu *dock_menu_;

View File

@ -2733,12 +2733,10 @@ void LograyMainWindow::connectCaptureMenuActions()
}); });
connect(main_ui_->actionCaptureCaptureFilters, &QAction::triggered, this, [this]() { connect(main_ui_->actionCaptureCaptureFilters, &QAction::triggered, this, [this]() {
if (!capture_filter_dlg_) { FilterDialog *capture_filter_dlg = new FilterDialog(window(), FilterDialog::CaptureFilter);
capture_filter_dlg_ = new FilterDialog(this, FilterDialog::CaptureFilter); capture_filter_dlg->setWindowModality(Qt::ApplicationModal);
} capture_filter_dlg->setAttribute(Qt::WA_DeleteOnClose);
capture_filter_dlg_->show(); capture_filter_dlg->show();
capture_filter_dlg_->raise();
capture_filter_dlg_->activateWindow();
}); });
#ifdef HAVE_LIBPCAP #ifdef HAVE_LIBPCAP
@ -2882,12 +2880,10 @@ void LograyMainWindow::matchFieldFilter(FilterAction::Action action, FilterActio
void LograyMainWindow::on_actionAnalyzeDisplayFilters_triggered() void LograyMainWindow::on_actionAnalyzeDisplayFilters_triggered()
{ {
if (!display_filter_dlg_) { FilterDialog *display_filter_dlg = new FilterDialog(window(), FilterDialog::DisplayFilter);
display_filter_dlg_ = new FilterDialog(this, FilterDialog::DisplayFilter); display_filter_dlg->setWindowModality(Qt::ApplicationModal);
} display_filter_dlg->setAttribute(Qt::WA_DeleteOnClose);
display_filter_dlg_->show(); display_filter_dlg->show();
display_filter_dlg_->raise();
display_filter_dlg_->activateWindow();
} }
struct epan_uat; struct epan_uat;

View File

@ -329,8 +329,6 @@ WiresharkMainWindow::WiresharkMainWindow(QWidget *parent) :
, capture_options_dialog_(NULL) , capture_options_dialog_(NULL)
, info_data_() , info_data_()
#endif #endif
, display_filter_dlg_(NULL)
, capture_filter_dlg_(NULL)
#if defined(Q_OS_MAC) #if defined(Q_OS_MAC)
, dock_menu_(NULL) , dock_menu_(NULL)
#endif #endif
@ -759,8 +757,6 @@ WiresharkMainWindow::~WiresharkMainWindow()
// freed by its parent. Free then here explicitly to avoid leak and numerous // freed by its parent. Free then here explicitly to avoid leak and numerous
// Valgrind complaints. // Valgrind complaints.
delete file_set_dialog_; delete file_set_dialog_;
delete capture_filter_dlg_;
delete display_filter_dlg_;
#ifdef HAVE_LIBPCAP #ifdef HAVE_LIBPCAP
delete capture_options_dialog_; delete capture_options_dialog_;
#endif #endif

View File

@ -189,8 +189,6 @@ private:
CaptureOptionsDialog *capture_options_dialog_; CaptureOptionsDialog *capture_options_dialog_;
info_data_t info_data_; info_data_t info_data_;
#endif #endif
FilterDialog *display_filter_dlg_;
FilterDialog *capture_filter_dlg_;
#if defined(Q_OS_MAC) #if defined(Q_OS_MAC)
QMenu *dock_menu_; QMenu *dock_menu_;

View File

@ -2905,12 +2905,10 @@ void WiresharkMainWindow::connectCaptureMenuActions()
}); });
connect(main_ui_->actionCaptureCaptureFilters, &QAction::triggered, this, [this]() { connect(main_ui_->actionCaptureCaptureFilters, &QAction::triggered, this, [this]() {
if (!capture_filter_dlg_) { FilterDialog *capture_filter_dlg = new FilterDialog(window(), FilterDialog::CaptureFilter);
capture_filter_dlg_ = new FilterDialog(this, FilterDialog::CaptureFilter); capture_filter_dlg->setWindowModality(Qt::ApplicationModal);
} capture_filter_dlg->setAttribute(Qt::WA_DeleteOnClose);
capture_filter_dlg_->show(); capture_filter_dlg->show();
capture_filter_dlg_->raise();
capture_filter_dlg_->activateWindow();
}); });
#ifdef HAVE_LIBPCAP #ifdef HAVE_LIBPCAP
@ -3054,12 +3052,10 @@ void WiresharkMainWindow::matchFieldFilter(FilterAction::Action action, FilterAc
void WiresharkMainWindow::on_actionAnalyzeDisplayFilters_triggered() void WiresharkMainWindow::on_actionAnalyzeDisplayFilters_triggered()
{ {
if (!display_filter_dlg_) { FilterDialog *display_filter_dlg = new FilterDialog(window(), FilterDialog::DisplayFilter);
display_filter_dlg_ = new FilterDialog(this, FilterDialog::DisplayFilter); display_filter_dlg->setWindowModality(Qt::ApplicationModal);
} display_filter_dlg->setAttribute(Qt::WA_DeleteOnClose);
display_filter_dlg_->show(); display_filter_dlg->show();
display_filter_dlg_->raise();
display_filter_dlg_->activateWindow();
} }
struct epan_uat; struct epan_uat;