Kerberos: add kerberos_inject_longterm_key() helper function
[wireshark-sm.git] / ui / qt / protocol_hierarchy_dialog.h
blob33191d1e3ee16402b804ab0d04595c2a01c26eea
1 /** @file
3 * Wireshark - Network traffic analyzer
4 * By Gerald Combs <gerald@wireshark.org>
5 * Copyright 1998 Gerald Combs
7 * SPDX-License-Identifier: GPL-2.0-or-later
8 */
10 #ifndef PROTOCOL_HIERARCHY_DIALOG_H
11 #define PROTOCOL_HIERARCHY_DIALOG_H
13 #include <QMenu>
14 #include <QSet>
16 #include "filter_action.h"
17 #include <ui/qt/models/percent_bar_delegate.h>
18 #include "wireshark_dialog.h"
20 class QPushButton;
21 class QTreeWidgetItem;
23 namespace Ui {
24 class ProtocolHierarchyDialog;
27 class ProtocolHierarchyDialog : public WiresharkDialog
29 Q_OBJECT
31 public:
32 explicit ProtocolHierarchyDialog(QWidget &parent, CaptureFile &cf);
33 ~ProtocolHierarchyDialog();
35 signals:
36 void filterAction(QString filter, FilterAction::Action action, FilterAction::ActionType type);
38 private slots:
39 void showProtoHierMenu(QPoint pos);
40 void filterActionTriggered();
41 void on_actionCopyAsCsv_triggered();
42 void on_actionCopyAsYaml_triggered();
43 void on_actionCopyProtoList_triggered();
44 void on_actionDisableProtos_triggered();
45 void on_actionRevertProtos_triggered();
46 void on_buttonBox_helpRequested();
48 private:
49 Ui::ProtocolHierarchyDialog *ui;
50 QAction *proto_disable_;
51 QAction *proto_revert_;
52 QMenu ctx_menu_;
53 PercentBarDelegate percent_bar_delegate_;
54 QString display_filter_;
55 QSet<QString> used_protos_;
57 // Callback for g_node_children_foreach
58 static void addTreeNode(GNode *node, void *data);
59 void updateWidgets();
60 QList<QVariant> protoHierRowData(QTreeWidgetItem *item) const;
63 #endif // PROTOCOL_HIERARCHY_DIALOG_H