drsuapi_SupportedExtensionsExt wild guess to match 0x80a and DsGetNCChangesReq11...
[wireshark-sm.git] / ui / qt / main_status_bar.h
blobc53bc54a529cc3620ff56a1d5b99451f8e05339c
1 /** @file
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
8 */
10 #ifndef MAIN_STATUS_BAR_H
11 #define MAIN_STATUS_BAR_H
13 #include "config.h"
15 #include "cfile.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"
25 #include <QLabel>
26 #include <QMenu>
27 #include <QStatusBar>
29 class CaptureFile;
30 class QToolButton;
32 class MainStatusBar : public QStatusBar
34 Q_OBJECT
35 public:
36 explicit MainStatusBar(QWidget *parent = 0);
37 void showExpert();
38 void captureFileClosing();
39 void expertUpdate();
40 void setFileName(CaptureFile &cf);
42 protected:
44 enum StatusContext {
45 STATUS_CTX_MAIN,
46 STATUS_CTX_FILE,
47 STATUS_CTX_FIELD,
48 STATUS_CTX_BYTE,
49 STATUS_CTX_FILTER,
50 STATUS_CTX_PROGRESS,
51 STATUS_CTX_TEMPORARY
54 virtual void changeEvent(QEvent* event);
56 private:
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_;
64 QString ready_msg_;
66 // Capture statistics
67 bool cs_fixed_;
68 uint32_t cs_count_;
70 void showCaptureStatistics();
71 void setStatusbarForCaptureFile();
73 void pushGenericStatus(StatusContext status, const QString &message, const QString &messagetip = QString());
74 void popGenericStatus(StatusContext status);
76 signals:
77 void showExpertInfo();
78 void editCaptureComment();
79 void stopLoading();
81 public slots:
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);
92 private slots:
93 void appInitialized();
94 void toggleBackground(bool enabled);
95 void setProfileName();
96 void switchToProfile();
97 void manageProfile();
98 void showProfileMenu(const QPoint &global_pos, Qt::MouseButton button);
100 friend MainApplication;
103 #endif // MAIN_STATUS_BAR_H