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 WELCOME_PAGE_H
11 #define WELCOME_PAGE_H
16 class QListWidgetItem
;
19 #include <ui/qt/widgets/splash_overlay.h>
20 #include "interface_frame.h"
26 class WelcomePage
: public QFrame
30 explicit WelcomePage(QWidget
*parent
= 0);
31 virtual ~WelcomePage();
32 InterfaceFrame
*getInterfaceFrame();
33 const QString
captureFilter();
34 void setCaptureFilter(const QString capture_filter
);
35 void updateStyleSheets();
38 void interfaceSelected();
41 virtual bool event(QEvent
*event
);
42 virtual void resizeEvent(QResizeEvent
*event
);
43 virtual void changeEvent(QEvent
* event
);
46 void on_recentLabel_clicked();
47 void on_captureLabel_clicked();
48 void on_helpLabel_clicked();
51 Ui::WelcomePage
*welcome_ui_
;
55 SplashOverlay
*splash_overlay_
;
56 // QListWidget doesn't activate items when the return or enter keys are pressed on macOS.
57 // We may want to subclass it at some point.
58 QListWidget
*recent_files_
;
61 void startCapture(QStringList ifaces
);
62 void recentFileActivated(QString cfile
);
63 void captureFilterSyntaxChanged(bool valid
);
64 void showExtcapOptions(QString
&device_name
, bool startCaptureOnClose
);
65 void interfacesChanged();
68 void setCaptureFilterText(const QString capture_filter
);
71 void appInitialized();
72 void interfaceListChanged();
73 void setReleaseLabel();
74 void captureFilterTextEdited(const QString capture_filter
);
75 void updateRecentCaptures();
76 void openRecentItem(QListWidgetItem
*item
);
77 void showRecentContextMenu(QPoint pos
);
78 void showRecentFolder();
79 void copyRecentPath();
80 void removeRecentPath();
82 void on_interfaceFrame_showExtcapOptions(QString device_name
, bool startCaptureOnClose
);
83 void on_interfaceFrame_startCapture(QStringList
);
84 void captureStarting();
87 #endif // WELCOME_PAGE_H