Wireshark 4.7.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
overlay_scroll_bar.h
Go to the documentation of this file.
1
10#ifndef __OVERLAY_SCROLL_BAR_H__
11#define __OVERLAY_SCROLL_BAR_H__
12
13#include <QScrollBar>
14
15class QProxyStyle;
16
20class OverlayScrollBar : public QScrollBar
21{
22 Q_OBJECT
23
24public:
30 OverlayScrollBar(Qt::Orientation orientation, QWidget * parent = 0);
31
35 virtual ~OverlayScrollBar();
36
41 virtual QSize sizeHint() const;
42
47 virtual int sliderPosition();
48
63 void setNearOverlayImage(QImage &overlay_image, int packet_count = -1, int start_pos = -1, int end_pos = -1, QList<int> positions = QList<int>(), int rowHeight = 1);
64
71 void setMarkedPacketImage(QImage &mp_image);
72
77 QRect grooveRect();
78
79public slots:
85 void setChildRange(int min, int max) { child_sb_.setRange(min, max); }
86
87protected:
92 virtual void resizeEvent(QResizeEvent * event);
93
98 virtual void paintEvent(QPaintEvent * event);
99
106 virtual bool eventFilter(QObject *watched, QEvent *event);
107
111 virtual void mousePressEvent(QMouseEvent *) { /* No-op */ }
112
117 virtual void mouseReleaseEvent(QMouseEvent * event);
118
119private:
121 QProxyStyle* style_;
122
124 QProxyStyle* child_style_;
125
127 QScrollBar child_sb_;
128
130 QImage packet_map_img_;
131
133 QImage marked_packet_img_;
134
136 int packet_map_width_;
137
139 int marked_packet_width_;
140
142 int packet_count_;
143
145 int start_pos_;
146
148 int end_pos_;
149
151 QList<int> positions_;
152
154 int row_height_;
155
156#if QT_VERSION >= QT_VERSION_CHECK(6, 1, 0)
160 void updateChildStyle();
161#endif
162};
163
164#endif // __OVERLAY_SCROLL_BAR_H__
A custom scroll bar with overlay images for packet representation.
Definition overlay_scroll_bar.h:21
virtual void paintEvent(QPaintEvent *event)
Handles paint events.
Definition overlay_scroll_bar.cpp:164
virtual QSize sizeHint() const
Returns the recommended size for the scroll bar.
Definition overlay_scroll_bar.cpp:102
virtual int sliderPosition()
Retrieves the current slider position.
Definition overlay_scroll_bar.cpp:108
void setChildRange(int min, int max)
Sets the range of the child scroll bar.
Definition overlay_scroll_bar.h:85
virtual void mouseReleaseEvent(QMouseEvent *event)
Handles mouse release events.
Definition overlay_scroll_bar.cpp:253
virtual void resizeEvent(QResizeEvent *event)
Handles resize events.
Definition overlay_scroll_bar.cpp:153
QRect grooveRect()
Retrieves the "groove" area of the child scrollbar.
Definition overlay_scroll_bar.cpp:143
void setNearOverlayImage(QImage &overlay_image, int packet_count=-1, int start_pos=-1, int end_pos=-1, QList< int > positions=QList< int >(), int rowHeight=1)
Set the "near" overlay image.
Definition overlay_scroll_bar.cpp:113
virtual void mousePressEvent(QMouseEvent *)
Handles mouse press events (no-op).
Definition overlay_scroll_bar.h:111
void setMarkedPacketImage(QImage &mp_image)
Set the "far" overlay image.
Definition overlay_scroll_bar.cpp:133
virtual ~OverlayScrollBar()
Destroys the OverlayScrollBar.
Definition overlay_scroll_bar.cpp:96
virtual bool eventFilter(QObject *watched, QEvent *event)
Filters events for watched objects.
Definition overlay_scroll_bar.cpp:216