Wireshark  4.3.0
The Wireshark network protocol analyzer
capture_options_dialog.h
Go to the documentation of this file.
1 
11 #ifndef CAPTURE_OPTIONS_DIALOG_H
12 #define CAPTURE_OPTIONS_DIALOG_H
13 
14 #include <config.h>
15 
16 #ifdef HAVE_LIBPCAP
17 
19 
20 #include "geometry_state_dialog.h"
21 #include <QPushButton>
22 #include <QTreeWidget>
23 
24 typedef struct if_stat_cache_s if_stat_cache_t;
25 
26 namespace Ui {
27 class CaptureOptionsDialog;
28 }
29 
30 #include <QStyledItemDelegate>
31 
32 class InterfaceTreeDelegate : public QStyledItemDelegate
33 {
34  Q_OBJECT
35 private:
36  QTreeWidget* tree_;
37 
38 public:
39  InterfaceTreeDelegate(QObject *parent = 0);
40  ~InterfaceTreeDelegate();
41 
42  QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &idx) const;
43  void setTree(QTreeWidget* tree) { tree_ = tree; }
44  bool eventFilter(QObject *object, QEvent *event);
45 
46 signals:
47  void filterChanged(const QString filter);
48 
49 private slots:
50  void linkTypeChanged(const QString selected_link_type);
51  void snapshotLengthChanged(int value);
52  void bufferSizeChanged(int value);
53 };
54 
55 class CaptureOptionsDialog : public GeometryStateDialog
56 {
57  Q_OBJECT
58 
59 public:
60  explicit CaptureOptionsDialog(QWidget *parent = 0);
61  ~CaptureOptionsDialog();
62 
63  void updateInterfaces();
64 
65 public slots:
66  void interfaceSelected();
67 
68 protected:
69  virtual void showEvent(QShowEvent *);
70 
71 private slots:
72  void on_capturePromModeCheckBox_toggled(bool checked);
73  void on_gbStopCaptureAuto_toggled(bool checked);
74  void on_cbUpdatePacketsRT_toggled(bool checked);
75  void on_cbAutoScroll_toggled(bool checked);
76  void on_gbNewFileAuto_toggled(bool checked);
77  void on_cbExtraCaptureInfo_toggled(bool checked);
78  void on_cbResolveMacAddresses_toggled(bool checked);
79  void on_compileBPF_clicked();
80  void on_manageButton_clicked();
81  void on_cbResolveNetworkNames_toggled(bool checked);
82  void on_cbResolveTransportNames_toggled(bool checked);
83  void on_buttonBox_accepted();
84  void on_buttonBox_rejected();
85  void on_buttonBox_helpRequested();
86  void filterEdited();
87  void updateWidgets();
88  void updateStatistics(void);
89  void refreshInterfaceList();
90  void updateLocalInterfaces();
91  void browseButtonClicked();
92  void interfaceItemChanged(QTreeWidgetItem *item, int column);
93  void itemClicked(QTreeWidgetItem *item, int column);
94  void itemDoubleClicked(QTreeWidgetItem *item, int column);
95  void changeEvent(QEvent* event);
96  void tempDirBrowseButtonClicked();
97 
98 signals:
99  void startCapture();
100  void stopCapture();
101  void setSelectedInterfaces();
102  void setFilterValid(bool valid, const QString capture_filter);
103  void interfacesChanged();
104  void ifsChanged();
105  void interfaceListChanged();
106  void captureFilterTextEdited(const QString & text);
107  void showExtcapOptions(QString &device_name, bool startCaptureOnClose);
108 
109 private:
110  Ui::CaptureOptionsDialog *ui;
111 
112  if_stat_cache_t *stat_cache_;
113  QTimer *stat_timer_;
114  InterfaceTreeDelegate interface_item_delegate_;
115 
116  interface_t *getDeviceByName(const QString device_name);
117  bool saveOptionsToPreferences();
118  void updateSelectedFilter();
119 
120  void updateGlobalDeviceSelections();
121  void updateFromGlobalDeviceSelections();
122 };
123 
124 #endif /* HAVE_LIBPCAP */
125 
126 #endif // CAPTURE_OPTIONS_DIALOG_H
Definition: geometry_state_dialog.h:16
Definition: androiddump.c:218