Wireshark  4.3.0
The Wireshark network protocol analyzer
display_filter_expression_dialog.h
Go to the documentation of this file.
1 
10 #ifndef DISPLAY_FILTER_EXPRESSION_DIALOG_H
11 #define DISPLAY_FILTER_EXPRESSION_DIALOG_H
12 
13 #include "config.h"
14 
15 #include <epan/ftypes/ftypes.h>
16 
17 #include "geometry_state_dialog.h"
18 
19 #include <QFutureWatcher>
20 
21 #if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
22 /* Qt6 introduces QPromise interface that makes it possible to add tree entries
23  * protocol by protocol instead of all at once.
24  */
25 #define DISPLAY_FILTER_EXPRESSION_DIALOG_USE_QPROMISE
26 #endif
27 
28 class QTreeWidgetItem;
29 struct true_false_string;
30 struct _value_string;
31 struct _val64_string;
32 
33 namespace Ui {
35 }
36 
38 {
39  Q_OBJECT
40 
41 public:
42  explicit DisplayFilterExpressionDialog(QWidget *parent = 0);
44 
45 signals:
46  void insertDisplayFilter(const QString &filter);
47 
48 private slots:
49 #ifdef DISPLAY_FILTER_EXPRESSION_DIALOG_USE_QPROMISE
50  void addTreeItem(int result);
51 #endif
52  void fillTree();
53  void updateWidgets();
54 
55  void on_fieldTreeWidget_itemSelectionChanged();
56  void on_relationListWidget_itemSelectionChanged();
57  void on_enumListWidget_itemSelectionChanged();
58  void on_searchLineEdit_textChanged(const QString &search_re);
59  void on_buttonBox_accepted();
60  void on_buttonBox_helpRequested();
61 
62 private:
63 #ifdef DISPLAY_FILTER_EXPRESSION_DIALOG_USE_QPROMISE
64  QFutureWatcher<QTreeWidgetItem *> *watcher;
65 #else
66  QFutureWatcher<QList<QTreeWidgetItem *> *> *watcher;
67 #endif
68  Ui::DisplayFilterExpressionDialog *ui;
69  void fillEnumBooleanValues(const struct true_false_string *tfs);
70  void fillEnumIntValues(const struct _value_string *vals, int base);
71  void fillEnumInt64Values(const struct _val64_string *vals64, int base);
72  void fillEnumRangeValues(const struct _range_string *rvals);
73 
74  enum ftenum ftype_;
75  const char *field_;
76  QString value_label_pfx_;
77 };
78 
79 #endif // DISPLAY_FILTER_EXPRESSION_DIALOG_H
Definition: display_filter_expression_dialog.h:38
Definition: geometry_state_dialog.h:17
Definition: value_string.h:293
Definition: value_string.h:133
Definition: value_string.h:26
Definition: tfs.h:27