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
10 #ifndef BYTE_VIEW_TAB_H
11 #define BYTE_VIEW_TAB_H
15 #include <epan/packet.h>
16 #include <epan/proto.h>
17 #include <epan/tvbuff.h>
19 #include <ui/qt/utils/field_information.h>
26 #include <ui/qt/widgets/byte_view_text.h>
28 class ByteViewTab
: public QTabWidget
33 explicit ByteViewTab(QWidget
*parent
= 0, epan_dissect_t
*edt_fixed
= 0);
36 /* Set the capture file */
37 void setCaptureFile(capture_file
*cf
);
38 /* Creates the tabs and data, depends on an dissection which has already run */
39 void selectedFrameChanged(QList
<int>);
40 /* Selects or marks a field */
41 void selectedFieldChanged(FieldInformation
*);
42 /* Highlights field */
43 void highlightedFieldChanged(FieldInformation
*);
44 void captureFileClosing(void);
47 void fieldSelected(FieldInformation
*);
48 void fieldHighlight(FieldInformation
*);
49 void byteViewSettingsChanged(void);
50 void byteViewUnmarkField(void);
51 void detachData(void);
54 capture_file
*cap_file_
;
55 bool is_fixed_packet_
; /* true if this byte view is related to a single
56 packet in the packet dialog and false if the
57 packet dissection context can change. */
58 epan_dissect_t
*edt_
; /* Packet dissection result for the currently selected packet. */
61 void setTabsVisible();
62 ByteViewText
* findByteViewTextForTvb(tvbuff_t
* search
, int * idx
= 0);
63 void addTab(const char *name
= "", tvbuff_t
*tvb
= NULL
);
66 void tabInserted(int);
70 void byteViewTextHovered(int);
71 void byteViewTextMarked(int);
73 void connectToMainWindow();
75 void captureActive(int);
78 #endif // BYTE_VIEW_TAB_H