aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoland Knall <rknall@gmail.com>2019-10-04 21:05:13 +0200
committerRoland Knall <rknall@gmail.com>2019-10-07 21:00:31 +0000
commitcb352105b83a850cf5b3a8d5609c3c226e9f849f (patch)
tree0ebc52b17b568cb89a1a8bf142a6a8aafd88d738
parent5750c4981c56464ef1dbb8d7cfb0446cdb4b12ec (diff)
Qt: Reduce use of CaptureFile
In preparation of having just a single instance of CaptureFile dialogs are redesigned to not use CaptureFile Change-Id: I2bff036d6f9e946954873c90b935b6653fbeb474 Reviewed-on: https://code.wireshark.org/review/34723 Petri-Dish: Roland Knall <rknall@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Roland Knall <rknall@gmail.com>
-rw-r--r--ui/qt/main_window_slots.cpp10
-rw-r--r--ui/qt/resolved_addresses_dialog.cpp37
-rw-r--r--ui/qt/resolved_addresses_dialog.h4
3 files changed, 29 insertions, 22 deletions
diff --git a/ui/qt/main_window_slots.cpp b/ui/qt/main_window_slots.cpp
index ec2288addd..e827e1c5b2 100644
--- a/ui/qt/main_window_slots.cpp
+++ b/ui/qt/main_window_slots.cpp
@@ -3637,7 +3637,15 @@ void MainWindow::on_actionStatisticsCaptureFileProperties_triggered()
void MainWindow::on_actionStatisticsResolvedAddresses_triggered()
{
- ResolvedAddressesDialog *resolved_addresses_dialog = new ResolvedAddressesDialog(this, &capture_file_);
+ QString capFileName;
+ wtap* wth = Q_NULLPTR;
+ if ( capture_file_.isValid() )
+ {
+ capFileName = capture_file_.capFile()->filename;
+ wth = capture_file_.capFile()->provider.wth;
+ }
+ ResolvedAddressesDialog *resolved_addresses_dialog =
+ new ResolvedAddressesDialog(this, capFileName, wth);
resolved_addresses_dialog->show();
}
diff --git a/ui/qt/resolved_addresses_dialog.cpp b/ui/qt/resolved_addresses_dialog.cpp
index c6c669cccc..03f3bc624c 100644
--- a/ui/qt/resolved_addresses_dialog.cpp
+++ b/ui/qt/resolved_addresses_dialog.cpp
@@ -33,7 +33,7 @@
const QString no_entries_ = QObject::tr("No entries.");
const QString entry_count_ = QObject::tr("%1 entries.");
-ResolvedAddressesDialog::ResolvedAddressesDialog(QWidget *parent, CaptureFile *capture_file) :
+ResolvedAddressesDialog::ResolvedAddressesDialog(QWidget *parent, QString captureFile, wtap* wth) :
GeometryStateDialog(parent),
ui(new Ui::ResolvedAddressesDialog),
file_name_(tr("[no file]"))
@@ -43,8 +43,8 @@ ResolvedAddressesDialog::ResolvedAddressesDialog(QWidget *parent, CaptureFile *c
QStringList title_parts = QStringList() << tr("Resolved Addresses");
- if (capture_file->isValid()) {
- file_name_ = capture_file->capFile()->filename;
+ if (captureFile.isEmpty()) {
+ file_name_ = captureFile;
title_parts << file_name_;
}
setWindowTitle(wsApp->windowTitleString(title_parts));
@@ -53,25 +53,22 @@ ResolvedAddressesDialog::ResolvedAddressesDialog(QWidget *parent, CaptureFile *c
ui->plainTextEdit->setReadOnly(true);
ui->plainTextEdit->setWordWrapMode(QTextOption::NoWrap);
- if (capture_file->isValid()) {
- wtap* wth = capture_file->capFile()->provider.wth;
- if (wth) {
- // might return null
- wtap_block_t nrb_hdr;
+ if (wth) {
+ // might return null
+ wtap_block_t nrb_hdr;
+
+ /*
+ * XXX - support multiple NRBs.
+ */
+ nrb_hdr = wtap_file_get_nrb(wth);
+ if (nrb_hdr != NULL) {
+ char *str;
/*
- * XXX - support multiple NRBs.
- */
- nrb_hdr = wtap_file_get_nrb(wth);
- if (nrb_hdr != NULL) {
- char *str;
-
- /*
- * XXX - support multiple comments.
- */
- if (wtap_block_get_nth_string_option_value(nrb_hdr, OPT_COMMENT, 0, &str) == WTAP_OPTTYPE_SUCCESS) {
- comment_ = str;
- }
+ * XXX - support multiple comments.
+ */
+ if (wtap_block_get_nth_string_option_value(nrb_hdr, OPT_COMMENT, 0, &str) == WTAP_OPTTYPE_SUCCESS) {
+ comment_ = str;
}
}
}
diff --git a/ui/qt/resolved_addresses_dialog.h b/ui/qt/resolved_addresses_dialog.h
index 58272d55f1..1b074ffd94 100644
--- a/ui/qt/resolved_addresses_dialog.h
+++ b/ui/qt/resolved_addresses_dialog.h
@@ -12,6 +12,8 @@
#include "geometry_state_dialog.h"
+#include <wiretap/wtap.h>
+
class CaptureFile;
class AStringListListSortFilterProxyModel;
@@ -24,7 +26,7 @@ class ResolvedAddressesDialog : public GeometryStateDialog
Q_OBJECT
public:
- explicit ResolvedAddressesDialog(QWidget *parent, CaptureFile *capture_file);
+ explicit ResolvedAddressesDialog(QWidget *parent, QString captureFile, wtap* wth);
~ResolvedAddressesDialog();
protected slots: