summaryrefslogtreecommitdiffstats
path: root/ui/qt/conversation_colorize_action.h
diff options
context:
space:
mode:
Diffstat (limited to 'ui/qt/conversation_colorize_action.h')
-rw-r--r--ui/qt/conversation_colorize_action.h65
1 files changed, 65 insertions, 0 deletions
diff --git a/ui/qt/conversation_colorize_action.h b/ui/qt/conversation_colorize_action.h
new file mode 100644
index 0000000..47f9ea5
--- /dev/null
+++ b/ui/qt/conversation_colorize_action.h
@@ -0,0 +1,65 @@
+/** @file
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#ifndef CONVERSATIONCOLORIZEACTION_H
+#define CONVERSATIONCOLORIZEACTION_H
+
+#include <QAction>
+
+struct conversation_filter_s;
+struct _packet_info;
+
+// Actions for "Conversation Filter" and "Colorize with Filter" menu items.
+
+class ConversationAction : public QAction
+{
+ Q_OBJECT
+public:
+ ConversationAction(QObject *parent, struct conversation_filter_s *conv_filter = NULL);
+
+ bool isFilterValid(struct _packet_info *pinfo);
+
+ const QByteArray filter() { return filter_ba_; }
+
+ void setColorNumber(int color_number) { color_number_ = color_number; }
+ int colorNumber() { return color_number_; }
+
+public slots:
+ // Exactly one of these should be connected.
+ void setPacketInfo(struct _packet_info *pinfo);
+ void setFieldFilter(const QByteArray field_filter);
+
+private:
+ struct conversation_filter_s *conv_filter_;
+ QByteArray filter_ba_;
+ int color_number_;
+};
+
+class ColorizeAction : public QAction
+{
+ Q_OBJECT
+public:
+ ColorizeAction(QObject *parent) : QAction(parent),
+ color_number_(-1)
+ {}
+
+ const QByteArray filter() { return filter_ba_; }
+
+ void setColorNumber(int color_number) { color_number_ = color_number; }
+ int colorNumber() { return color_number_; }
+
+public slots:
+ void setFieldFilter(const QByteArray field_filter) { filter_ba_ = field_filter; }
+
+private:
+ QByteArray filter_ba_;
+ int color_number_;
+};
+
+#endif // CONVERSATIONCOLORIZEACTION_H