/* * This file is part of smolbote. It's copyrighted by the contributors recorded * in the version control history of the file, available from its original * location: https://neueland.iserlohn-fortress.net/gitea/aqua/smolbote * * SPDX-License-Identifier: GPL-3.0 */ #ifndef SMOLBOTE_SUBWINDOW_H #define SMOLBOTE_SUBWINDOW_H #include #include #include class TabWidget; class WebView; class WebProfile; class Configuration; class SubWindow : public QMdiSubWindow { Q_OBJECT public: explicit SubWindow(const Configuration *config, QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags()); ~SubWindow() override; WebView *currentView(); WebView *view(int index) const; int tabCount() const; void setProfile(WebProfile *profile); WebProfile *profile() const; signals: void currentViewChanged(WebView *view); void showStatusMessage(const QString &message, int timeout = 0); public slots: int addTab(const QUrl &url = QUrl(), WebProfile *profile = nullptr); void setCurrentTab(int index); private: WebProfile *m_profile; TabWidget *tabWidget; QMetaObject::Connection titleConnection; QMetaObject::Connection linkHoveredConnection; }; #endif // SMOLBOTE_SUBWINDOW_H