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_captureMonitorModeCheckBox_toggled(bool checked);
74  void on_gbStopCaptureAuto_toggled(bool checked);
75  void on_cbUpdatePacketsRT_toggled(bool checked);
76  void on_cbAutoScroll_toggled(bool checked);
77  void on_gbNewFileAuto_toggled(bool checked);
78  void on_cbExtraCaptureInfo_toggled(bool checked);
79  void on_cbResolveMacAddresses_toggled(bool checked);
80  void on_compileBPF_clicked();
81  void on_manageButton_clicked();
82  void on_cbResolveNetworkNames_toggled(bool checked);
83  void on_cbResolveTransportNames_toggled(bool checked);
84  void on_buttonBox_accepted();
85  void on_buttonBox_rejected();
86  void on_buttonBox_helpRequested();
87  void filterEdited();
88  void updateWidgets();
89  void updateStatistics(void);
90  void refreshInterfaceList();
91  void updateLocalInterfaces();
92  void browseButtonClicked();
93  void interfaceItemChanged(QTreeWidgetItem *item, int column);
94  void itemClicked(QTreeWidgetItem *item, int column);
95  void itemDoubleClicked(QTreeWidgetItem *item, int column);
96  void changeEvent(QEvent* event);
97  void tempDirBrowseButtonClicked();
98 
99 signals:
100  void startCapture();
101  void stopCapture();
102  void setSelectedInterfaces();
103  void setFilterValid(bool valid, const QString capture_filter);
104  void interfacesChanged();
105  void ifsChanged();
106  void interfaceListChanged();
107  void captureFilterTextEdited(const QString & text);
108  void showExtcapOptions(QString &device_name, bool startCaptureOnClose);
109 
110 private:
111  Ui::CaptureOptionsDialog *ui;
112 
113  if_stat_cache_t *stat_cache_;
114  QTimer *stat_timer_;
115  InterfaceTreeDelegate interface_item_delegate_;
116 
117  interface_t *getDeviceByName(const QString device_name);
118  bool saveOptionsToPreferences();
119  void updateSelectedFilter();
120 
121  void updateGlobalDeviceSelections();
122  void updateFromGlobalDeviceSelections();
123 };
124 
125 #endif /* HAVE_LIBPCAP */
126 
127 #endif // CAPTURE_OPTIONS_DIALOG_H
Definition: geometry_state_dialog.h:17
Definition: androiddump.c:219