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 MAIN_STATUS_BAR_H
11 #define MAIN_STATUS_BAR_H
17 #include "capture/capture_session.h"
19 #include <ui/qt/utils/field_information.h>
20 #include <ui/qt/widgets/label_stack.h>
21 #include <ui/qt/widgets/clickable_label.h>
22 #include "progress_frame.h"
23 #include "wireshark_application.h"
32 class MainStatusBar
: public QStatusBar
36 explicit MainStatusBar(QWidget
*parent
= 0);
38 void captureFileClosing();
40 void setFileName(CaptureFile
&cf
);
54 virtual void changeEvent(QEvent
* event
);
57 QToolButton
*expert_button_
;
58 QToolButton
*comment_button_
;
59 LabelStack info_status_
;
60 ProgressFrame progress_frame_
;
61 LabelStack packet_status_
;
62 ClickableLabel profile_status_
;
63 capture_file
*cap_file_
;
70 void showCaptureStatistics();
71 void setStatusbarForCaptureFile();
73 void pushGenericStatus(StatusContext status
, const QString
&message
, const QString
&messagetip
= QString());
74 void popGenericStatus(StatusContext status
);
77 void showExpertInfo();
78 void editCaptureComment();
82 void setCaptureFile(capture_file
*cf
);
83 void selectedFieldChanged(FieldInformation
*);
84 void highlightedFieldChanged(FieldInformation
*);
85 void selectedFrameChanged(QList
<int>);
87 void updateCaptureStatistics(capture_session
* cap_session
);
88 void updateCaptureFixedStatistics(capture_session
* cap_session
);
90 void captureEventHandler(CaptureEvent ev
);
93 void appInitialized();
94 void toggleBackground(bool enabled
);
95 void setProfileName();
96 void switchToProfile();
98 void showProfileMenu(const QPoint
&global_pos
, Qt::MouseButton button
);
100 friend MainApplication
;
103 #endif // MAIN_STATUS_BAR_H