Wireshark  2.9.0-477-g68ec514b
The Wireshark network protocol analyzer
protocol_hierarchy_dialog.h
1 /* protocol_hierarchy_dialog.h
2  *
3  * Wireshark - Network traffic analyzer
4  * By Gerald Combs <gerald@wireshark.org>
5  * Copyright 1998 Gerald Combs
6  *
7  * SPDX-License-Identifier: GPL-2.0-or-later
8  */
9 
10 #ifndef PROTOCOL_HIERARCHY_DIALOG_H
11 #define PROTOCOL_HIERARCHY_DIALOG_H
12 
13 #include <QMenu>
14 
15 #include "filter_action.h"
16 #include <ui/qt/models/percent_bar_delegate.h>
17 #include "wireshark_dialog.h"
18 
19 class QPushButton;
20 class QTreeWidgetItem;
21 
22 namespace Ui {
24 }
25 
27 {
28  Q_OBJECT
29 
30 public:
31  explicit ProtocolHierarchyDialog(QWidget &parent, CaptureFile &cf);
33 
34 signals:
35  void filterAction(QString filter, FilterAction::Action action, FilterAction::ActionType type);
36 
37 private slots:
38  void showProtoHierMenu(QPoint pos);
39  void filterActionTriggered();
40  void on_actionCopyAsCsv_triggered();
41  void on_actionCopyAsYaml_triggered();
42  void on_buttonBox_helpRequested();
43 
44 private:
46  QPushButton *copy_button_;
47  QMenu ctx_menu_;
48  PercentBarDelegate percent_bar_delegate_;
49  QString display_filter_;
50 
51  // Callback for g_node_children_foreach
52  static void addTreeNode(GNode *node, gpointer data);
53  void updateWidgets();
54  QList<QVariant> protoHierRowData(QTreeWidgetItem *item) const;
55 };
56 
57 #endif // PROTOCOL_HIERARCHY_DIALOG_H
58 
59 /*
60  * Editor modelines
61  *
62  * Local Variables:
63  * c-basic-offset: 4
64  * tab-width: 8
65  * indent-tabs-mode: nil
66  * End:
67  *
68  * ex: set shiftwidth=4 tabstop=8 expandtab:
69  * :indentSize=4:tabSize=8:noTabs=true:
70  */
Definition: ui_about_dialog.h:291
Definition: percent_bar_delegate.h:36
Definition: protocol_hierarchy_dialog.h:26
Definition: ui_protocol_hierarchy_dialog.h:102
Definition: wireshark_dialog.h:32
Definition: capture_file.h:22