Wireshark 4.5.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
filter_list_model.h
Go to the documentation of this file.
1
12#ifndef FILTER_LIST_MODEL_h
13#define FILTER_LIST_MODEL_h
14
15#include <config.h>
16
17#include <QAbstractListModel>
18#include <QList>
19#include <QStringList>
20
21class FilterListModel : public QAbstractListModel
22{
23 Q_OBJECT
24
25public:
26 enum FilterListType {
27 Display,
28 Capture,
29 DisplayMacro,
30 };
31
32 explicit FilterListModel(FilterListType type = FilterListModel::Display, QObject * parent = Q_NULLPTR);
33 explicit FilterListModel(QObject * parent = Q_NULLPTR);
34
35 enum {
36 ColumnName,
37 ColumnExpression
38 };
39
40 void setFilterType(FilterListModel::FilterListType type);
41 FilterListModel::FilterListType filterType() const;
42
43 QModelIndex findByName(QString name);
44 QModelIndex findByExpression(QString expression);
45
46 QModelIndex addFilter(QString name, QString expression);
47 void removeFilter(QModelIndex idx);
48
49 void saveList();
50
51 virtual int rowCount(const QModelIndex &parent = QModelIndex()) const override;
52 virtual int columnCount(const QModelIndex &parent = QModelIndex()) const override;
53 virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
54 virtual bool setData(const QModelIndex &index, const QVariant &value, int role) override;
55 virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;
56 virtual Qt::ItemFlags flags(const QModelIndex &index) const override;
57
58 virtual Qt::DropActions supportedDropActions() const override;
59 virtual QStringList mimeTypes() const override;
60 virtual QMimeData *mimeData(const QModelIndexList &indexes) const override;
61 virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override;
62
63private:
64
65 FilterListModel::FilterListType type_;
66
67 QStringList storage;
68
69 void reload();
70};
71
72#endif // FILTER_LIST_MODEL_h
Definition filter_list_model.h:22