Wireshark 4.7.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
interface_toolbar.h
Go to the documentation of this file.
1
10#ifndef INTERFACE_TOOLBAR_H
11#define INTERFACE_TOOLBAR_H
12
13#include "ui/iface_toolbar.h"
14#include "funnel_text_dialog.h"
16
17#include <QFrame>
18#include <QList>
19#include <QMap>
20#include <QString>
21
22
23namespace Ui {
25}
26
31{
33 QThread *reader_thread;
34
36 int out_fd;
37
39 QMap<int, QByteArray> value;
40
42 QMap<int, bool> value_changed;
43
45 QMap<int, QList<QByteArray> > list;
46
48 QMap<int, FunnelTextDialog *> log_dialog;
49
51 QMap<int, QString> log_text;
52
54 QMap<int, bool> widget_disabled;
55};
56
60class InterfaceToolbar : public QFrame
61{
62 Q_OBJECT
63
64public:
70 explicit InterfaceToolbar(QWidget *parent = 0, const iface_toolbar *toolbar = NULL);
71
76
81 void startCapture(GArray *ifaces);
82
86 void stopCapture();
87
93 bool hasInterface(QString ifname);
94
95public slots:
100
108 void controlReceived(QString ifname, int num, int command, QByteArray message);
109
110signals:
115
116private slots:
122 void startReaderThread(QString ifname, void *control_in);
123
127 void updateWidgets();
128
132 void onControlButtonClicked();
133
137 void onLogButtonClicked();
138
142 void onHelpButtonClicked();
143
147 void onRestoreButtonClicked();
148
153 void onCheckBoxChanged(int state);
154
159 void onComboBoxChanged(int idx);
160
164 void onLineEditChanged();
165
169 void closeLog();
170
175 void on_interfacesComboBox_currentTextChanged(const QString &ifname);
176
177private:
182 void initializeControls(const iface_toolbar *toolbar);
183
189 void setDefaultValue(int num, const QByteArray &value);
190
195 void sendChangedValues(QString ifname);
196
202 QWidget *createCheckbox(iface_toolbar_control *control);
203
209 QWidget *createButton(iface_toolbar_control *control);
210
216 QWidget *createSelector(iface_toolbar_control *control);
217
223 QWidget *createString(iface_toolbar_control *control);
224
232 void controlSend(QString ifname, int num, int type, const QByteArray &payload);
233
240 void setWidgetValue(QWidget *widget, int type, QByteArray payload);
241
250 void setInterfaceValue(QString ifname, QWidget *widget, int num, int type, QByteArray payload);
251
253 Ui::InterfaceToolbar *ui;
254
256 QMap<QString, struct interface_values> interface_;
257
259 QMap<int, QByteArray> default_value_;
260
262 QMap<int, QList<QByteArray> > default_list_;
263
265 QMap<int, QWidget *> control_widget_;
266
268 QMap<int, QWidget *> label_widget_;
269
271 QString help_link_;
272
274 bool use_spacer_;
275};
276
277#endif // INTERFACE_TOOLBAR_H
A toolbar widget dynamically generated for interface-specific controls.
Definition interface_toolbar.h:61
~InterfaceToolbar()
Destroys the InterfaceToolbar.
Definition interface_toolbar.cpp:104
void stopCapture()
Stops the capture and disables active controls.
Definition interface_toolbar.cpp:825
void closeReader()
Signal emitted to request the reader threads to close.
void controlReceived(QString ifname, int num, int command, QByteArray message)
Slot triggered when a control message is received from an interface.
Definition interface_toolbar.cpp:550
void startCapture(GArray *ifaces)
Initializes and starts the capture controls for the given interfaces.
Definition interface_toolbar.cpp:760
bool hasInterface(QString ifname)
Checks if this toolbar is managing a specific interface.
Definition interface_toolbar.cpp:926
void interfaceListChanged()
Slot triggered when the global list of interfaces changes.
Definition interface_toolbar.cpp:976
Describes a single control widget within an interface toolbar.
Definition iface_toolbar.h:56
Describes an interface toolbar and the set of controls it exposes.
Definition iface_toolbar.h:75
Holds state and values for a specific capture interface's toolbar.
Definition interface_toolbar.h:31
QMap< int, QList< QByteArray > > list
Definition interface_toolbar.h:45
QMap< int, bool > value_changed
Definition interface_toolbar.h:42
QMap< int, FunnelTextDialog * > log_dialog
Definition interface_toolbar.h:48
QThread * reader_thread
Definition interface_toolbar.h:33
QMap< int, QByteArray > value
Definition interface_toolbar.h:39
QMap< int, QString > log_text
Definition interface_toolbar.h:51
int out_fd
Definition interface_toolbar.h:36
QMap< int, bool > widget_disabled
Definition interface_toolbar.h:54