Wireshark  2.9.0-477-g68ec514b
The Wireshark network protocol analyzer
coloring_rules_dialog.h
1 /* coloring_rules_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 COLORING_RULES_DIALOG_H
11 #define COLORING_RULES_DIALOG_H
12 
13 #include "geometry_state_dialog.h"
14 #include "filter_action.h"
15 
16 #include <ui/qt/models/coloring_rules_model.h>
17 #include <ui/qt/models/coloring_rules_delegate.h>
18 
19 #include <QMap>
20 
21 class QAbstractButton;
22 
23 namespace Ui {
25 }
26 
28 {
29  Q_OBJECT
30 
31 public:
32  explicit ColoringRulesDialog(QWidget *parent = 0, QString add_filter = QString());
34 
35 signals:
36  void filterAction(QString filter, FilterAction::Action action, FilterAction::ActionType type);
37 
38 protected:
39  void showEvent(QShowEvent *);
40 
41 private slots:
42  void colorRuleSelectionChanged(const QItemSelection &selected, const QItemSelection &deselected);
43  void on_fGPushButton_clicked();
44  void on_bGPushButton_clicked();
45  void on_displayFilterPushButton_clicked();
46  void on_newToolButton_clicked();
47  void on_deleteToolButton_clicked();
48  void on_copyToolButton_clicked();
49  void on_buttonBox_clicked(QAbstractButton *button);
50  void on_buttonBox_accepted();
51  void on_buttonBox_helpRequested();
52  void invalidField(const QModelIndex &index, const QString& errMessage);
53  void validField(const QModelIndex &index);
54 
55 private:
57  QPushButton *import_button_;
58  QPushButton *export_button_;
59  ColoringRulesModel colorRuleModel_;
60  ColoringRulesDelegate colorRuleDelegate_;
61 
62  QMap<QModelIndex, QString> errors_;
63 
64  void setColorButtons(QModelIndex &index);
65  void updateHint();
66 
67  void addRule(bool copy_from_current = false);
68  void changeColor(bool foreground = true);
69 };
70 
71 #endif // COLORING_RULES_DIALOG_H
72 
73 /*
74  * Editor modelines
75  *
76  * Local Variables:
77  * c-basic-offset: 4
78  * tab-width: 8
79  * indent-tabs-mode: nil
80  * End:
81  *
82  * ex: set shiftwidth=4 tabstop=8 expandtab:
83  * :indentSize=4:tabSize=8:noTabs=true:
84  */
Definition: coloring_rules_dialog.h:27
Definition: coloring_rules_delegate.h:19
Definition: geometry_state_dialog.h:15
Definition: ui_about_dialog.h:291
Definition: ui_coloring_rules_dialog.h:178
Definition: coloring_rules_model.h:42